翟慧卿 程衛(wèi)雙 黃杰
摘 要: 設(shè)計并實現(xiàn)了一個具有文件安全保護(hù)能力的終端文檔安全保護(hù)系統(tǒng)。在技術(shù)上主要采用內(nèi)核與應(yīng)用層相結(jié)合的方法來實現(xiàn)文檔透明加、解密。在內(nèi)核層實現(xiàn)功能上的控制,而在應(yīng)用層實現(xiàn)相應(yīng)的權(quán)限控制和策略制定。在操作系統(tǒng)內(nèi)核對訪問電子文檔的進(jìn)程進(jìn)行審核與控制,利用文件系統(tǒng)過濾驅(qū)動技術(shù)過濾掉非法進(jìn)程對文檔的讀取。對于擁有訪問權(quán)限和安裝該系統(tǒng)的客戶端用戶,才可以正常讀取加密的電子文檔,排除了電子文檔泄密的可能,實現(xiàn)了對電子文檔的安全管理。
關(guān)鍵詞: 電子文檔; 加密; 解密; 文件系統(tǒng)過濾驅(qū)動
中圖分類號:TP309.7 文獻(xiàn)標(biāo)志碼:A 文章編號:1006-8228(2014)01-21-02
0 引言
近年來,信息化技術(shù)不斷深入到了人們生活中的各個領(lǐng)域,以電子形式存在于計算機(jī)中的文檔也逐漸地替代了傳統(tǒng)文檔。當(dāng)然任務(wù)事務(wù)都有著兩面性,電子文檔在給人們的生活帶來便捷的同時,也帶來了數(shù)據(jù)被非法泄露、破壞、篡改、復(fù)制、竊取與使用等隱患。
為了解決上述令人棘手的電子文檔安全問題,很多企業(yè)建造了企業(yè)專網(wǎng),并且配備了大量的防火墻、VPN、IPS、IDS等安全設(shè)備,但是這樣做只能用來防范外來的入侵者,而不能防止企業(yè)內(nèi)部人員有意無意地主動泄密,況且上述措施一般來說造價非常昂貴。
因此,開發(fā)一個運行效率高、安全可靠、操作簡潔、方便使用的電子文檔安全管理系統(tǒng)有很重要的市場價值和應(yīng)用價值。對于電子文檔信息的安全保護(hù),必須從數(shù)據(jù)生命周期的源頭——對文檔數(shù)據(jù)進(jìn)行加密存儲開始。只有文檔被加密存儲了,以后在其生命周期的各個階段的安全才能得到保證,企業(yè)才可以安枕無憂地在信息化浪潮中持續(xù)發(fā)展。
1 透明加密與文件過濾驅(qū)動技術(shù)
1.1 透明加密技術(shù)
數(shù)據(jù)加密技術(shù)是通過一定規(guī)則把原始數(shù)據(jù)轉(zhuǎn)換成另一種無意義數(shù)據(jù)的技術(shù),這個轉(zhuǎn)換規(guī)則通常包括加密算法和加密密鑰。加密算法是加密技術(shù)的一般方法,而密鑰根據(jù)一定的加密算法產(chǎn)生出惟一的加密數(shù)據(jù)——只有知道密鑰和密碼算法的人才能夠把密文恢復(fù)成原始數(shù)據(jù)[1-2]。密鑰通常是一長串?dāng)?shù)字序列,這些序列被一些常用的身份認(rèn)證機(jī)制所保護(hù),例如口令,令牌或者是指紋等生物信息[3]。
現(xiàn)代密碼技術(shù)[4]按照密鑰的管理方式不同可分為:對稱加密和非對稱加密。在對稱加密實現(xiàn)的過程中,加密過程和解密過程使用相同的密鑰,因此加密數(shù)據(jù)的安全性主要依賴于密鑰的安全性。其優(yōu)點主要是加解密時速度快、實現(xiàn)簡單、實現(xiàn)算法公開透明。但由于加密過程和解密過程采用的是同一密鑰,因此缺點也很明顯,那就是在大量用戶的情況下密鑰管理困難,使用成本較高,不便于在分布式網(wǎng)絡(luò)系統(tǒng)上使用。目前常用的對稱加密算法主要有DES、IDEA和AES等著名加密算法。
在非對稱加密的實現(xiàn)過程中,加密過程和解密過程使用不同的密鑰,使用公有密鑰加密時需要用私有密鑰解密,而使用私有密鑰加密時需要用公有密鑰解密。因此非對稱加密算法的保密性比較好,它消除了最終用戶交換密鑰的需要。但其加密和解密花費時間長、速度慢,適用于對少量數(shù)據(jù)進(jìn)行加密,不適合于對文件加密。目前廣泛應(yīng)用的不對稱加密算法主要有RSA算法和美國國家標(biāo)準(zhǔn)局提出的DSA算法。
因此,可以得知對稱加密算法可應(yīng)用于數(shù)據(jù)加密,非對稱加密算法可應(yīng)用于身份認(rèn)證,所以我們在進(jìn)行文件透明加解密時使用對稱加密算法。
在Windows操作系統(tǒng)中通常使用兩種方法來實現(xiàn)文件的透明加解密,一種方法是使用HOOK API技術(shù)來截獲特定進(jìn)程或系統(tǒng)對某個API函數(shù)的調(diào)用,使得API的執(zhí)行流程轉(zhuǎn)向指定的代碼;另外一種方法是使用文件系統(tǒng)過濾驅(qū)動使上述的截獲在內(nèi)核層進(jìn)行。這兩種方法都能實現(xiàn)文檔的透明加解密,使這種加解密的動作對用戶來說完全透明。
1.2 文件過濾驅(qū)動技術(shù)
Windows NT操作系統(tǒng)的I/O管理器支持分層的驅(qū)動程序,這些分層的驅(qū)動程序形成一種棧形結(jié)構(gòu),這樣可以擴(kuò)展一些執(zhí)行體服務(wù),因此這些擴(kuò)展的驅(qū)動既可以位于文件系統(tǒng)驅(qū)動之上,也可以被插放在文件系統(tǒng)驅(qū)動和存儲設(shè)備驅(qū)動之間。
操作系統(tǒng)允許通過加載驅(qū)動程序的形式來增強(qiáng)內(nèi)核的功能,文件系統(tǒng)過濾驅(qū)動通過攔截應(yīng)用層的I/O請求的形式來提供這種新功能,所以文件系統(tǒng)過濾驅(qū)動相當(dāng)于增加了操作系統(tǒng)內(nèi)核的新功能。而增加的新功能又完全不用修改底層設(shè)備驅(qū)動和用戶的程序。過濾驅(qū)動可以做到增加系統(tǒng)功能而不用修改上層驅(qū)動和應(yīng)用程序的任何代碼。如果想讓操作系統(tǒng)增加新功能而又不能修改現(xiàn)有的內(nèi)核代碼,并且對應(yīng)用程序透明,那么就可以使用過濾驅(qū)動來實現(xiàn)[5]。
2 系統(tǒng)設(shè)計與實現(xiàn)
2.1 整體結(jié)構(gòu)設(shè)計
本系統(tǒng)采用C/S與B/S混合模式進(jìn)行設(shè)計。電子文檔安全管理系統(tǒng)服務(wù)器主要由系統(tǒng)數(shù)據(jù)庫、Web服務(wù)器、應(yīng)用服務(wù)器組成。客戶端主要由客戶端程序和瀏覽器程序組成。用戶安裝完系統(tǒng)數(shù)據(jù)庫、Web服務(wù)器、應(yīng)用服務(wù)器后,系統(tǒng)運行正常,管理員可通過瀏覽器登錄Web服務(wù)器進(jìn)行系統(tǒng)的配置與管理。內(nèi)網(wǎng)中的客戶端用戶通過Web服務(wù)器可下載客戶端程序,進(jìn)行安裝與注冊。用戶注冊程序自動采集系統(tǒng)的硬件設(shè)備資產(chǎn)信息,經(jīng)過應(yīng)用服務(wù)器處理后存入數(shù)據(jù)庫,同時應(yīng)用服務(wù)器將默認(rèn)策略下發(fā)給客戶端,如圖2所示。
2.2 系統(tǒng)實現(xiàn)
Web服務(wù)器采用Tomcat 作為Web容器,采用Web表現(xiàn)層、業(yè)務(wù)處理層和數(shù)據(jù)訪問層三層業(yè)務(wù)模型。Web表現(xiàn)層向用戶提供配置策略參數(shù)的界面,業(yè)務(wù)處理層負(fù)責(zé)處理由Web操作層傳遞進(jìn)來的參數(shù)數(shù)據(jù),數(shù)據(jù)訪問層負(fù)責(zé)數(shù)據(jù)的持久化操作。
管理員可根據(jù)需要授權(quán)用戶具有手動加解密功能。在資源管理器中增加右鍵菜單,可選擇任意文件進(jìn)行手動加解密,加密后的文件屬性增加了一些安全屬性。
2.3 系統(tǒng)測試
在裝有系統(tǒng)客戶端的PC機(jī)上開啟文檔保護(hù)服務(wù),并下達(dá)加密策略,使進(jìn)程Notepad.exe能夠?qū)?.txt文件進(jìn)行透明加解密測試。
針對本系統(tǒng)的穩(wěn)定性測試就是看文檔保護(hù)系統(tǒng)在運行過程中服務(wù)器是否運行穩(wěn)定,是否出現(xiàn)死機(jī),以及采用過濾驅(qū)動技術(shù)的客戶端是否產(chǎn)生內(nèi)存泄漏而出現(xiàn)藍(lán)屏等問題。經(jīng)過測試本系統(tǒng)運行流暢,通訊正常。
在加解密過程中,由于對原始數(shù)據(jù)做了相應(yīng)的加解密處理,所以對于較大的文件的讀寫所花費的時間和空間資源會有所增加,文件越大,這些額外的開銷也就越明顯。而對于一些較小的文件,這些額外的開銷幾乎可以忽略不計。
另外,測試過程是在虛擬機(jī)VMWare上進(jìn)行的,這對于文件的讀取時間有很大的影響。但是相對時間差還是完全可以反映系統(tǒng)性能的好壞。
3 結(jié)束語
本文在研究基于Windows架構(gòu)以及新的過濾驅(qū)動框架的基礎(chǔ)上,采用C/S+B/S架構(gòu),設(shè)計并實現(xiàn)了一個終端文檔安全保護(hù)系統(tǒng),既實現(xiàn)了對終端文檔在數(shù)據(jù)使用時的安全保護(hù),又對文檔進(jìn)行了很好的權(quán)限策略控制,還對文檔的生命期進(jìn)行了有效的監(jiān)控,該系統(tǒng)可以有效地防止終端重要信息的泄漏。同時該系統(tǒng)還對文件的使用權(quán)限進(jìn)行了很細(xì)粒度的控制,用戶能使用Web瀏覽器很方便地給指定客戶機(jī)下達(dá)指定策略,使客戶機(jī)按照指定規(guī)則來選擇要加解密的文件。
但是,由于本系統(tǒng)中所有的加密文檔是以密文的形式存儲在磁盤中的,如果離開本系統(tǒng)的工作環(huán)境,文檔將不能被正常讀取。
本應(yīng)用并不局限于文檔加密領(lǐng)域,在病毒實時監(jiān)控與防護(hù),數(shù)據(jù)備份與還原,以及文件訪問控制等領(lǐng)域同樣有著廣泛的應(yīng)用。今后也可以結(jié)合文件系統(tǒng)過濾驅(qū)動技術(shù)在內(nèi)核病毒防火墻等領(lǐng)域展開積極的研究與探索。
除此之外,要想從根本上解決信息安全問題,我們認(rèn)為還必須加強(qiáng)信息安全保護(hù)立法,同時企業(yè)要加強(qiáng)自我防范意識,完善企業(yè)內(nèi)網(wǎng)管理措施。
參考文獻(xiàn):
[1] 陳元,王菲菲.利用文檔加密技術(shù)防止企業(yè)知識資產(chǎn)的外泄[J].圖書
情報知識,2010:2-134
[2] 金容波.文檔安全保護(hù)系統(tǒng)中防主動泄密關(guān)鍵技術(shù)研究與實現(xiàn)[D].四
川師范大學(xué)碩士學(xué)位論文,2008.
[3] 王瑋.電子文檔加密系統(tǒng)設(shè)計與實現(xiàn)[D].山東大學(xué)碩士學(xué)位論文,
2007.
[4] William Stallings著,劉玉珍,王麗娜,傅建明等譯.密碼編碼學(xué)與網(wǎng)絡(luò)
安全[M].電子工業(yè)出版社,2006.
[5] 王雅泉,張水平.Windows WDM過濾器驅(qū)動程序的設(shè)計與實現(xiàn)[J].微
電子學(xué)與計算機(jī),2002.16(12):28-30