動(dòng)態(tài)加解密技術(shù)詳解(圖)
互聯(lián)網(wǎng) 發(fā)布時(shí)間:2008-10-08 19:02:36 作者:佚名
我要評(píng)論

隨著計(jì)算機(jī)和網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,越來(lái)越多的信息以電子形式存儲(chǔ)在個(gè)人和商用電腦中,并且通過(guò)網(wǎng)絡(luò)進(jìn)行廣泛地傳遞,在大量的信息存儲(chǔ)和交換中,信息的安全問(wèn)題越來(lái)越引起人們的重視。信息保密的理論基礎(chǔ)是密碼學(xué),根據(jù)現(xiàn)代密碼學(xué)的理論,一個(gè)好的加密算法的安全性只依
隨著計(jì)算機(jī)和網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,越來(lái)越多的信息以電子形式存儲(chǔ)在個(gè)人和商用電腦中,并且通過(guò)網(wǎng)絡(luò)進(jìn)行廣泛地傳遞,在大量的信息存儲(chǔ)和交換中,信息的安全問(wèn)題越來(lái)越引起人們的重視。信息保密的理論基礎(chǔ)是密碼學(xué),根據(jù)現(xiàn)代密碼學(xué)的理論,一個(gè)好的加密算法的安全性只依賴于密鑰,加密算法的公開(kāi)與否不影響其安全性。現(xiàn)代密碼學(xué)經(jīng)過(guò)幾十年的研究和發(fā)展,已經(jīng)發(fā)明了許多安全性很高的加密算法,并且被廣泛地應(yīng)用在各種信息安全產(chǎn)品中,其中數(shù)據(jù)加密技術(shù)是密碼學(xué)的一個(gè)重要應(yīng)用領(lǐng)域。數(shù)據(jù)加密產(chǎn)品由于實(shí)現(xiàn)的方法和層次的不同,決定了其應(yīng)用領(lǐng)域和范圍。
數(shù)據(jù)加密技術(shù)按照實(shí)現(xiàn)的方法可劃分為靜態(tài)加密和動(dòng)態(tài)加密,從實(shí)現(xiàn)的層次上則可分為文件級(jí)加密和存儲(chǔ)設(shè)備級(jí)加密。
1.靜態(tài)加密與動(dòng)態(tài)加密
靜態(tài)加密是指在加密期間,待加密的數(shù)據(jù)處于未使用狀態(tài),這些數(shù)據(jù)一旦加密,在使用前,需首先通過(guò)靜態(tài)解密得到明文,然后才能使用。目前市場(chǎng)上許多加密軟件產(chǎn)品就屬于這種加密方式。
與靜態(tài)加密不同,動(dòng)態(tài)加密(也稱實(shí)時(shí)加密,透明加密等,其英文名為encrypt on-the-fly),是指數(shù)據(jù)在使用過(guò)程中自動(dòng)對(duì)數(shù)據(jù)進(jìn)行加密或解密操作,無(wú)需用戶的干預(yù),合法用戶在使用加密的文件前,也不需要進(jìn)行解密操作即可使用,表面看來(lái),訪問(wèn)加密的文件和訪問(wèn)未加密的文件基本相同,對(duì)合法用戶來(lái)說(shuō),這些加密文件是“透明的”,即好像沒(méi)有加密一樣,但對(duì)于沒(méi)有訪問(wèn)權(quán)限的用戶,即使通過(guò)其它非常規(guī)手段得到了這些文件,由于文件是加密的,因此也無(wú)法使用。由于動(dòng)態(tài)加密技術(shù)不僅不改變用戶的使用習(xí)慣,而且無(wú)需用戶太多的干預(yù)操作即可實(shí)現(xiàn)文檔的安全,因而近年來(lái)得到了廣泛的應(yīng)用。
由于動(dòng)態(tài)加密要實(shí)時(shí)加密數(shù)據(jù),必須動(dòng)態(tài)跟蹤需要加密的數(shù)據(jù)流,而且其實(shí)現(xiàn)的層次一般位于系統(tǒng)內(nèi)核中,因此,從實(shí)現(xiàn)的技術(shù)角度看,實(shí)現(xiàn)動(dòng)態(tài)加密要比靜態(tài)加密難的多,需要解決的技術(shù)難點(diǎn)也遠(yuǎn)遠(yuǎn)超過(guò)靜態(tài)加密。
2.動(dòng)態(tài)加密實(shí)現(xiàn)的層次級(jí)別
在不同的操作系中(如WINDOWS、LINUX、UNIX等),雖然數(shù)據(jù)的具體組織和存儲(chǔ)結(jié)構(gòu)會(huì)有所不同,但它們均可用圖1的模型進(jìn)行表示,即應(yīng)用程序在訪問(wèn)存儲(chǔ)設(shè)備數(shù)據(jù)時(shí),一般都通過(guò)操作系統(tǒng)提供的API 調(diào)用文件系統(tǒng),然后文件系統(tǒng)通過(guò)存儲(chǔ)介質(zhì)的驅(qū)動(dòng)程序訪問(wèn)具體的存儲(chǔ)介質(zhì)。其中層次I和II屬于應(yīng)用層;層次III和IV屬于操作系統(tǒng)內(nèi)核層。這種組織結(jié)構(gòu)決定了加密系統(tǒng)的實(shí)現(xiàn)方式,在數(shù)據(jù)從存儲(chǔ)介質(zhì)到應(yīng)用程序所經(jīng)過(guò)的每個(gè)路徑中,均可對(duì)訪問(wèn)的數(shù)據(jù)實(shí)施加密/解密操作,其中模型中的層次I只能捕獲應(yīng)用程序自身讀寫(xiě)的數(shù)據(jù),其他應(yīng)用程序的數(shù)據(jù)不經(jīng)過(guò)該層,因此,在層次I中只能實(shí)現(xiàn)靜態(tài)加密,無(wú)法實(shí)現(xiàn)動(dòng)態(tài)加密;即使是層次II,也并不是所有文件數(shù)據(jù)均通過(guò)該層,但在該層可以攔截到各種文件的打開(kāi)、關(guān)閉等操作。因此,在應(yīng)用層實(shí)現(xiàn)的動(dòng)態(tài)加解密產(chǎn)品無(wú)法真正做到“實(shí)時(shí)”加密/解密操作,一般只能通過(guò)其他變相的方式進(jìn)行實(shí)現(xiàn)(一般均在層次II進(jìn)行實(shí)現(xiàn))。例如,在應(yīng)用程序打開(kāi)文件時(shí),先直接解密整個(gè)文件或解密整個(gè)文件到其他路徑,然后讓?xiě)?yīng)用程序直接(重定向)訪問(wèn)這個(gè)完全解密的文件,而在應(yīng)用程序關(guān)閉這個(gè)文件時(shí),再將已解密的文件進(jìn)行加密。其實(shí)質(zhì)是靜態(tài)加解密過(guò)程的自動(dòng)化,并不屬于嚴(yán)格意義上的動(dòng)態(tài)加密。
由于目前的操作系統(tǒng),如Windows/Linux/Unix等,只有在內(nèi)核層才能攔截到各種文件或磁盤(pán)操作,因此,真正的動(dòng)態(tài)加解密產(chǎn)品只能在內(nèi)核層進(jìn)行實(shí)現(xiàn)。在圖1給出的模型中,在內(nèi)核層中的文件系統(tǒng)可以攔截到所有的文件操作,但并不能攔截到所有的存儲(chǔ)設(shè)備(在下面的敘述中,我們一般用磁盤(pán)來(lái)表示存儲(chǔ)設(shè)備)操作,要攔截所有的存儲(chǔ)設(shè)備操作,必須在存儲(chǔ)設(shè)備驅(qū)動(dòng)程序中進(jìn)行攔截,操作系統(tǒng)的對(duì)存儲(chǔ)設(shè)備的訪問(wèn)形式?jīng)Q定了動(dòng)態(tài)加解密安全產(chǎn)品的兩大種類:基于文件級(jí)的動(dòng)態(tài)加解密產(chǎn)品和基于磁盤(pán)級(jí)的動(dòng)態(tài)加解密產(chǎn)品。

圖1操作系統(tǒng)的存儲(chǔ)設(shè)備訪問(wèn)模型
3.文件級(jí)動(dòng)態(tài)加解密技術(shù)
在文件系統(tǒng)層,不僅能夠獲得文件的各種信息,而且能夠獲得訪問(wèn)這些文件的進(jìn)程信息和用戶信息等,因此,可以研制出功能非常強(qiáng)大的文檔安全產(chǎn)品。就動(dòng)態(tài)加解密產(chǎn)品而言,有些文件系統(tǒng)自身就支持文件的動(dòng)態(tài)加解密,如Windows系統(tǒng)中的NTFS文件系統(tǒng),其本身就提供了EFS(Encryption File System)支持,但作為一種通用的系統(tǒng),雖然提供了細(xì)粒度的控制能力(如可以控制到每個(gè)文件),但在實(shí)際應(yīng)用中,其加密對(duì)象一般以分區(qū)或目錄為單位,難以做到滿足各種用戶個(gè)性化的要求,如自動(dòng)加密某些類型文件等。雖然有某些不足,但支持動(dòng)態(tài)加密的文件系統(tǒng)在某種程度上可以提供和磁盤(pán)級(jí)加密技術(shù)相匹敵的安全性。由于文件系統(tǒng)提供的動(dòng)態(tài)加密技術(shù)難以滿足用戶的個(gè)性化需求,因此,為第三方提供動(dòng)態(tài)加解密安全產(chǎn)品提供了足夠的空間。
要研發(fā)在文件級(jí)的動(dòng)態(tài)加解密安全產(chǎn)品,雖然與具體的操作系統(tǒng)有關(guān),但仍有多種方法可供選擇,一般可通過(guò)Hook或過(guò)濾驅(qū)動(dòng)等方式嵌入到文件系統(tǒng)中,使其成為文件系統(tǒng)的一部分,從某種意義上來(lái)說(shuō),第三方的動(dòng)態(tài)加解密產(chǎn)品可以看作是文件系統(tǒng)的一個(gè)功能擴(kuò)展,這種擴(kuò)展往往以模塊化的形式出現(xiàn),能夠根據(jù)需要進(jìn)行掛接或卸載,從而能夠滿足用戶的各種需求,這是作為文件系統(tǒng)內(nèi)嵌的動(dòng)態(tài)加密系統(tǒng)難以做到的。
下面我們以億賽通公司的SmartSec為例,分析一下文件動(dòng)態(tài)加解密的具體實(shí)現(xiàn)方式。圖2給出了SmartSec的實(shí)現(xiàn)原理,從中可以看出,SmartSec的動(dòng)態(tài)加解密是以文件過(guò)濾驅(qū)動(dòng)程序的方式進(jìn)行實(shí)現(xiàn)的(位于層次III),同時(shí)在應(yīng)用層(層次II)和內(nèi)核層(層次III)均提供訪問(wèn)控制功能,除此之外,還提供了日志和程序行為控制等功能,這種通過(guò)應(yīng)用層和內(nèi)核層相互配合的實(shí)現(xiàn)方式,不僅能提供更高的安全性,而且有助于降低安全系統(tǒng)對(duì)系統(tǒng)性能的影響。

圖2 SmartSec系統(tǒng)中動(dòng)態(tài)加解密的實(shí)現(xiàn)
4.磁盤(pán)級(jí)動(dòng)態(tài)加解密技術(shù)
對(duì)于信息安全要求比較高的用戶來(lái)說(shuō),文件級(jí)加密是難以滿足要求的。例如,在Windows系統(tǒng)中(在其它操作系統(tǒng)中也基本類似),我們?cè)谠L問(wèn)文件時(shí),會(huì)產(chǎn)生各種臨時(shí)文件,雖然這些臨時(shí)文件在大多數(shù)情況下,會(huì)被應(yīng)用程序自動(dòng)刪除,但某些情況下,會(huì)出現(xiàn)漏刪的情況,即使臨時(shí)文件被刪除,但仍然可以通過(guò)各種數(shù)據(jù)恢復(fù)軟件將其進(jìn)行恢復(fù),在實(shí)際應(yīng)用中,這些臨時(shí)文件一般不會(huì)被加密,從而成為信息泄密的一個(gè)重要渠道。更進(jìn)一步,即使將臨時(shí)文件也進(jìn)行了加密處理,但系統(tǒng)的頁(yè)面交換文件等(如Windows的Pagefile.sys等,除文件系統(tǒng)內(nèi)嵌的加密方式外,第三方動(dòng)態(tài)加解密產(chǎn)品一般不能對(duì)系統(tǒng)文件進(jìn)行加密,否則會(huì)引起系統(tǒng)無(wú)法啟動(dòng)等故障)也會(huì)保留用戶訪問(wèn)文件的某些信息,從而引起信息的泄密。
有一種方式可以避免上述提到的各種漏洞,那就是將存儲(chǔ)設(shè)備上包括操作系統(tǒng)在內(nèi)的所有數(shù)據(jù)全部加密,要達(dá)到這個(gè)目的,只有基于磁盤(pán)級(jí)的動(dòng)態(tài)加解密技術(shù)才能滿足要求。靜態(tài)加密技術(shù)在這種情況下,一般無(wú)法使用,這是因?yàn)椴僮飨到y(tǒng)被加了密,要啟動(dòng)系統(tǒng),必須先解密操作系統(tǒng)才能啟動(dòng),如果采用靜態(tài)加解密方式,只能在每次關(guān)機(jī)后將磁盤(pán)上的所有數(shù)據(jù)進(jìn)行加密,在需要啟動(dòng)時(shí)再解密磁盤(pán)上的所有數(shù)據(jù)(至少也得解密所有的操作系統(tǒng)文件,否則系統(tǒng)無(wú)法啟動(dòng)),由于操作系統(tǒng)占用的空間越來(lái)越大,這個(gè)過(guò)程所需要的時(shí)間是難以忍受的。
與靜態(tài)方式不同,在系統(tǒng)啟動(dòng)時(shí),動(dòng)態(tài)加解密系統(tǒng)實(shí)時(shí)解密硬盤(pán)的數(shù)據(jù),系統(tǒng)讀取什么數(shù)據(jù),就直接在內(nèi)存中解密數(shù)據(jù),然后將解密后的數(shù)據(jù)提交給操作系統(tǒng)即可,對(duì)系統(tǒng)性能的影響僅與采用的加解密算法的速度有關(guān),對(duì)系統(tǒng)性能的影響也非常有限,這類產(chǎn)品對(duì)系統(tǒng)性能總體的影響一般不超過(guò)10%(取目前市場(chǎng)上同類產(chǎn)品性能指標(biāo)的最大值)。圖3給出了億賽通公司基于磁盤(pán)級(jí)動(dòng)態(tài)加解密的安全產(chǎn)品DiskSec的實(shí)現(xiàn)原理,從中可以看出,DiskSec的動(dòng)態(tài)加解密算法位于操作系統(tǒng)的底層,操作系統(tǒng)的所有磁盤(pán)操作均通過(guò)DiskSec進(jìn)行,當(dāng)系統(tǒng)向磁盤(pán)上寫(xiě)入數(shù)據(jù)時(shí),DiskSec首先加密要寫(xiě)入的數(shù)據(jù),然后再寫(xiě)入磁盤(pán);反之,當(dāng)系統(tǒng)讀取磁盤(pán)數(shù)據(jù)時(shí),DiskSec會(huì)自動(dòng)將讀取到的數(shù)據(jù)進(jìn)行解密,然后再提交給操作系,因此,加密的磁盤(pán)數(shù)據(jù)對(duì)操作系統(tǒng)是透明的,也就是說(shuō),在操作系統(tǒng)看來(lái),磁盤(pán)上的加密數(shù)據(jù)和未加密的狀態(tài)是一樣的。

圖3磁盤(pán)級(jí)動(dòng)態(tài)加解密的實(shí)現(xiàn)
5.文件級(jí)和磁盤(pán)級(jí)動(dòng)態(tài)加密的比較
這兩類加密方法均有各自的優(yōu)點(diǎn)和缺點(diǎn),磁盤(pán)級(jí)加密與文件級(jí)加密方式相比,主要優(yōu)點(diǎn)是:加密強(qiáng)度高,安全性好。
由于這一級(jí)別的加密方式直接對(duì)磁盤(pán)物理扇區(qū)進(jìn)行加密,不考慮文件等存儲(chǔ)數(shù)據(jù)的邏輯概念,在這種加密方式下,任何存儲(chǔ)在磁盤(pán)上的數(shù)據(jù)均是加密的,相反,采用文件級(jí)的加密方式一般只對(duì)用戶指定的某些文件進(jìn)行加密,而這些文件在用戶日常使用中,由于臨時(shí)文件等均會(huì)帶來(lái)安全隱患。因此,采用磁盤(pán)級(jí)的加密方式要較文件級(jí)的加密方式安全。
磁盤(pán)級(jí)加密的主要缺點(diǎn)是:不夠靈活方便,適用面比較窄。
與文件級(jí)的加密方式不同,由于磁盤(pán)級(jí)的加密方式?jīng)]有文件、目錄等概念,難以對(duì)指定的文件或目錄進(jìn)行加密、隱藏等操作,反之,文件級(jí)的加密方式可以采用各種靈活的加密手段,能夠做到更細(xì)粒度的控制,用戶不僅可以指定要加密的文件類型或目錄,同時(shí)也可以隱藏某些目錄等。
相關(guān)文章
- “CMOS密碼”就是通常所說(shuō)的“開(kāi)機(jī)密碼”,主要是為了防止別人使用自已的計(jì)算機(jī),設(shè)置的一個(gè)屏障2023-08-01
QQScreenShot之逆向并提取QQ截圖--OCR和其他功能
上一篇文章逆向并提取QQ截圖沒(méi)有提取OCR功能, 再次逆向我發(fā)現(xiàn)是可以本地調(diào)用QQ的OCR的,但翻譯按鈕確實(shí)沒(méi)啥用, 于是Patch了翻譯按鈕事件, 改為了將截圖用百度以圖搜圖搜索.2023-02-04- QQ截圖是我用過(guò)的最好用的截圖工具, 由于基本不在電腦上登QQ了, 于是就想將其提取出獨(dú)立版目前除了屏幕錄制功能其他都逆出來(lái)了, 在此分享一下2023-02-04
非系統(tǒng)分區(qū)使用BitLocker加密導(dǎo)致軟件無(wú)法安裝的解決方法
很多電腦用戶在考慮自己電腦磁盤(pán)分區(qū)安全時(shí)會(huì)采用 Windows 自帶的 BitLocker 加密工具對(duì)電腦磁盤(pán)分區(qū)進(jìn)行加密。但有些人加密后就會(huì)忘記自己設(shè)置的密碼從而導(dǎo)致在安裝其它軟2020-11-25防止離職員工帶走客戶、防止內(nèi)部員工泄密、避免華為員工泄密事件的發(fā)生
這篇文章為大家詳細(xì)介紹了如何才能防止離職員工帶走客戶、防止內(nèi)部員工泄密、避免華為員工泄密事件的發(fā)生,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-27徹底防止計(jì)算機(jī)泄密、重要涉密人員離職泄密、涉密人員離崗離職前防范舉
近些年企業(yè)商業(yè)機(jī)密泄漏的事件屢有發(fā)生,這篇文章主要教大家如何徹底防止計(jì)算機(jī)泄密、重要涉密人員離職泄密、告訴大家涉密人員離崗離職前的防范舉措,具有一定的參考價(jià)值,2017-06-27量子計(jì)算機(jī)輕松破解加密算法 如何破解加密算法?
最近有電腦用戶反應(yīng)量子計(jì)算機(jī)可以破解下載的所有的加密算法嗎?其實(shí)也不是不可以,下面虛擬就為大家講解買(mǎi)臺(tái)量子計(jì)算機(jī),如何分分鐘破解加密算法2016-09-26怎么破解Webshell密碼 Burpsuite破解Webshell密碼圖文教程
webshell是以asp、php、jsp或者cgi等網(wǎng)頁(yè)文件形式存在的一種命令執(zhí)行環(huán)境,一種網(wǎng)頁(yè)后門(mén)。黑客通常會(huì)通過(guò)它控制別人網(wǎng)絡(luò)服務(wù)器,那么怎么破解webshell密碼呢?一起來(lái)看看吧2016-09-19針對(duì)Linux系統(tǒng)全盤(pán)加密的啟動(dòng)攻擊
本文討論了針對(duì)Linux系統(tǒng)全盤(pán)加密的冷啟動(dòng)攻擊,大家都認(rèn)為這種攻擊是可行的,但執(zhí)行這么一次攻擊有多難?攻擊的可行性有多少呢?需要的朋友可以參考下2015-12-28防止泄露公司機(jī)密、企業(yè)數(shù)據(jù)防泄密軟件排名、電腦文件加密軟件排行
面對(duì)日漸嚴(yán)重的內(nèi)部泄密事件,我們?nèi)绾问刈o(hù)企業(yè)的核心信息,如何防止內(nèi)部泄密也就成了擺在各個(gè)企業(yè)領(lǐng)導(dǎo)面前的一大問(wèn)題。其實(shí),針對(duì)內(nèi)網(wǎng)安全,防止內(nèi)部信息泄漏早已有了比較2015-12-17