国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種基于時間期限和訪問次數控制的文件生命周期控制方法

2017-01-03 06:12:48王志堅楊家奇
計算機應用與軟件 2016年11期
關鍵詞:數據文件加密算法密文

傅 曉 王志堅 楊家奇 王 宇

(河海大學計算機與信息學院 江蘇 南京 211100)

?

一種基于時間期限和訪問次數控制的文件生命周期控制方法

傅 曉 王志堅 楊家奇 王 宇

(河海大學計算機與信息學院 江蘇 南京 211100)

針對目前互聯網環(huán)境中電子文件數據到期后無法安全徹底自毀現象,提出一種文件生命周期控制方法。通過兩次散列和多重加密,引入Web分層思想,將時間、次數和銷毀策略作為屬性添加到文件頭部,將加密后的文件分為存儲層和控制層,文件生命周期結束后按照銷毀策略銷毀文件。實驗結果表明,該方法在實現可抵抗傳統(tǒng)密碼攻擊和蠻力攻擊的基礎上,不需要任何用戶或者可信第三方進行干預,混合加密后的文件安全性得到增強,銷毀后的明文和密鑰皆無法恢復。

用戶文件 自毀 時間期限 訪問次數

0 引 言

云是近年來IT領域最重要的技術之一,它可以共享基礎機構,大大發(fā)展了分布式處理、并行處理和網格計算等技術[1]。人們借助計算機、互聯網等先進技術,將企業(yè)的經營及管理流程在線實現。所有業(yè)務數據經由系統(tǒng)處理,快速形成管理層所需商業(yè)智能,以KPI(關鍵績效指標)、圖表以及可追溯的報表形式呈現,各類技術方案的交流也是以電子文件的方式進行。這樣,電子文件就成為企業(yè)信息的主要存儲方式及企業(yè)內、外部之間進行信息交換的重要載體。以Windchill為例,包含各種電子文件數據,這些電子文件可遠程調用,檢入檢出,造成文件副本殘留,并在不安全信道中傳輸,造成信息泄露[2]。如何保護電子文件的安全問題,作為信息安全領域的一個重要內容,越來越受到重視。

數據加密是保護數據的一種有效手段,近幾年國內外學者提出一些基于屬性加密的方法。如采用基于屬性的加密算法[3]和基于代理重加密[4]等技術,在很大程度上實現數據安全加密,但均未提出數據的生命周期概念,無法將數據文檔自動銷毀;而采用Dissolver系統(tǒng)[5]進行數據自毀的策略具有生命周期概念,但無法實現傳送至他人終端的數據自動銷毀。熊金波等[3]提出的組合文檔加密方式在很大程度上實現了具有生命周期的文檔控制,但基于DHT網絡的應用使其難以滿足大型辦公系統(tǒng)文件的時間性能效率;岳風順[6]提出了基于DHT網絡將文件進行拆分成密文和密鑰,從密文中隨機抽取密鑰存儲在DHT網絡,在生命周期結束后文檔密鑰消失,密文也就無法破解,但由于密文的大小決定了密鑰的隨機性很大,其密鑰的復雜度受密文大小以及隨機函數影響較大。王麗娜等[7]和Zeng等[8]先后提出Vanish系統(tǒng)和SafeVanish系統(tǒng),通過樹結構提高密鑰管理效率,但會受到Sybil攻擊,只要獲得足夠密鑰分量,就可以解析密鑰;尤其是SafeVanish系統(tǒng)增加了密鑰長度,增加了加解密算法的時間損耗。

本文基于對稱加密算法(Rijndael)和非對稱加密算法(2048位RSA算法),采用類似Web編程的分層思想,將電子文件的加密過程分為存儲層加密和控制層加密,最后合并為持久層數據,結構清晰明朗。不同的層根據兩種加密算法的特性而采用不同加密算法。在電子文件頭部添加時間期限、訪問次數和銷毀策略的屬性,通過雙重散列轉換,以實現文件生命周期的控制。將時間作為屬性添加到文件頭部,作為生命周期結束與否的標志,同時作為散列的密文,增加文件被暴力破解的復雜度。電子文件生命周期結束后,通過查看銷毀策略,決定對當前文件執(zhí)行相應的自毀步驟。密文和密鑰均受控制條件限制,控制條件可根據實際情形設置,實現對電子文件生命周期的細粒度控制。

1 需求與模型

1.1 設計需求

數據是有意義的實體。銷毀是將實體從有意義變?yōu)闊o意義狀態(tài)的過程。本文就自毀數據這一概念做一個定義:

定義1自毀數據,是指一條計算機數據,不論以何種形式存儲,在特定條件下能夠對人或計算機系統(tǒng)變?yōu)椴豢勺x狀態(tài)。

從定義1中可以看出,自毀數據具備兩個基本特征:首先,自毀數據作為計算機數據,其內容必然包含有意義的信息;其次,在特定條件下,該數據能夠變?yōu)椴豢勺x狀態(tài),即對人或計算機系統(tǒng)呈現無意義的序列。

因此,文件生命周期控制需要解決三個問題:

(1) 在傳輸過程中防止文件被截取并被而已篡改;

(2) 在文件生命周期內保護數據不泄密,特定用戶可查看;

(3) 在文件生命周期結束后自動徹底銷毀。

為解決問題(1),需要對文件數據進行加密和解密,保證傳輸過程中文件是不可讀的狀態(tài),到達特定終端后,解密成可讀狀態(tài)呈現給特定用戶。為解決問題(2),需要對文件進行控制條件設計,保證文件在生命周期內可讀,在生命周期外銷毀。為解決問題(3),需要對文件進行自毀設計,采用DOD 5220-22-M保證文件變?yōu)椴豢勺x狀態(tài),且無法恢復。此時不僅密鑰銷毀,密文也隨之銷毀,使得文件數據無跡可尋,實為安全徹底自毀。

1.2 文件加密設計

文件是由一條條數據組成,其實質就是一份數據。加密后的文件分為兩個部分:首部和主體。分別用Header表示首部數據,Body表示主體數據。加密后的數據文件模型如圖1所示。

SelfDestConditionQRKeyHHDBH

圖1 數據文件模型

1.2.1 加密流程設計

加密流程如圖2所示。

圖2 數據文件加密流程圖

1.2.2 對稱加密算法設計

設文件自身數據為D,利用Hash函數進行散列轉換,產生哈希信息BH的哈希過程為BHash (Data),產生隨機密鑰RKey的偽隨機過程為Random( )。產生的密鑰負責對Body加密,并存儲在Header中,對稱加密過程為SymmetricEncrypt (PlainText,Key),則主體數據Body由以下公式得出:

BH = BHash (D)

(1)

RKey = Random ( )

(2)

Body = SymmetricEncrypt (D+BH,RKey)

(3)

1.2.3 非對稱加密算法設計

設任務完成時的判斷條件為SelfDestCondition,銷毀策略為Q,利用Hash函數再次進行散列轉換,產生哈希信息HH的哈希過程為HHash (Data),非對稱加密過程AsymmetricEncrypt (PlainText,PrivateKey),產生密鑰對(PublicKey,PrivateKey)的過程為Generator( )。并利用私有密鑰對首部進行加密,公開密鑰負責系統(tǒng)解密使用,則首部數據Header由以下公式得出:

HH=HHash(SelfDestCondition+Q+RKey)

(4)

(PublicKey,PrivateKey)= Generator ( )

(5)

Header =AsymmetricEncrypt(SelfDestCondition+Q+

RKey+HH,PrivateKey)

(6)

1.3 文件解密設計

解密過程不是簡單的加密逆過程,而是一個驗證+解密的過程,其解密流程如圖3所示。

圖3 解密流程圖

2 模型安全性分析

2.1 時間期限依據

該方案通過判斷條件中與設定的到期時間和當前時間比較,以判斷終端文件是否到期。需注意的是,不論操作系統(tǒng)時鐘還是主板上的硬件時鐘,終端的系統(tǒng)時間都可以被用戶更改從而繞過自毀控制。為抵抗此類攻擊,該方案有必要與Internet日期時間服務器進行同步,使用世界標準時間而非終端系統(tǒng)時間作為當前時間。Internet日期時間服務器使用日期時間協(xié)議[9],向發(fā)起TCP連接請求的主機返回標準格式的Daytime數據。原型系統(tǒng)與Internet日期時間服務器的時間同步過程如圖4所示。

圖4 Internet時間同步

2.2 傳輸過程安全性

加密文件數據分為兩部分的益處在于:

(1) 只有使用匹配的公鑰才能解密首部數據,得到解密主體數據所需的對稱密鑰。由于對稱密鑰由偽隨機過程生成,直接蠻力攻擊主體數據等價于唯密文破解對稱加密過程SymmetricEncrypt所用加密算法的難度;

(2) 攻擊首部數據的唯一方法是旁路攻擊獲取公鑰,否則只有通過蠻力攻擊,也就是唯密文破解非對稱加密過程AsymmetricEncrypt所用加密算法的等價問題。

本文使用Rijndael算法作為對稱加密算法,其中密鑰長度設為256 bit,塊大小設置為128 bit,以符合FIPS PUB 197關于國家秘密級別數據的加密要求[10]。使用RSA作為非對稱加密算法,其中密鑰長度設置為2048 bit,以符合SET(Secure Electronic Transaction)協(xié)議中關于CA(Certificate Authority)中心安全級別的密鑰長度要求。

本文方法實現了雙重散列轉換,即使加密文件被中間人攻擊獲取,被篡改后的數據生成的驗證散列H_H和B_H必然與文件內包含的hash值不同,使得傳輸后的文件失效從而從新傳輸加密文件。而希望通過進一步修改散列函數BHash()和Hhash(),由于散列函數種類繁多并且研究成果非常之多,以此來實現驗證hash值與文件內hash值相同從而打開文件獲取原數據的可能性非常低。雙重散列轉換進一步保證了數據文件的防篡改性,加強了數據文件的安全。

為區(qū)別加密前文件,加密后的文件名添加“-protected”后綴。

2.3 文件徹底自毀

當文件到期時間大于或等于當前時間,原型系統(tǒng)將銷毀文件數據。需注意的是,在通常的文件系統(tǒng)中刪除一個文件并不意味著將其數據銷毀,僅是對需刪除的文件進行一個標記操作。

為防止攻擊者通過技術手段恢復文件系統(tǒng)中刪除的文件,必須調用安全銷毀策略對映射文件內容進行清理和銷毀,而非簡單的刪除。美國國防部推薦了一種針對可寫入媒體中信息的銷毀方法:依次使用一個字符、該字符的反碼、一個隨機字符覆蓋所有媒體上的可尋址區(qū)域并校驗[11]?;谠摲椒ǖ脑?,在原型系統(tǒng)中引入DOD 5220-22-M標準作為安全銷毀策略,用以實現對文件系統(tǒng)中到期映射文件數據的銷毀。具體算法流程如下:

(1) 使用0x00對映射文件中對應的每個簇進行覆蓋;

(2) 使用0x00的反碼,即0xFF再次覆蓋;

(3) 使用偽隨機函數生成的隨機字節(jié)最后一次覆蓋。

三個步驟即為一次擦除,當以上三步均成功完成之后,從文件系統(tǒng)中將映射文件刪除??蛇x擇一次擦除、三次擦除和七次擦除,視需求自由設置。經過該安全銷毀策略銷毀的文件數據,即使其索引被恢復,由于其數據所在的簇(在分布式文件系統(tǒng)中則為塊)中的數據已被完全覆蓋,故而不可能重建原文件,攻擊者僅能獲得最后一次覆蓋過程所寫入的無意義的隨機字節(jié)序列,如圖5所示。

圖5 安全銷毀策略算法流程圖

3 系統(tǒng)設計

3.1 偽代碼設計

本節(jié)以Windows系統(tǒng)環(huán)境為例,說明如何添加文件自毀系統(tǒng),實現文件自毀功能。在Microsoft Visual Studio .Net集成開發(fā)環(huán)境中編寫上述所設計的自毀層原型系統(tǒng)代碼,并編譯成動態(tài)鏈接庫形式。自毀設計的功能有三個:1)對源文件進行加密;2)對加密文件進行解密;3)對于一個文件,如若其生命周期結束,將其銷毀。

所設計的文件模型代碼定義如下:

Public Class File{

Header as Byte () = AsymmetricEncrypt (Serialize (Header),PublicKey)

Body as Byte () = SymmetricEncrypt (Serialize (Body),Header.RKey)

End Class}

Public Class Header{

SelfDestCondition as Datetime+Times+Q

RKey as Byte () = Random()

HH as Byte () = HHash (SelfDestCondition+RKey)

End Class}

Public Class Body{

D as Stream

BH as Byte() = BHash (D)

End Class}

其中,AsymmetricEncrypt使用RSA 2048,SymmetricEncrypt使用Rijndael,HHash和BHash均使用MD5[12]。動態(tài)鏈接庫僅向外部暴露兩個接口:一個將原數據文件轉換為加密文件;另一個則將加密文件轉換為解密數據。其命名空間與接口如下:

Public Shared Function SelfDestructingData.DataToFile (Data as Stream,SelfDestCondition as Datetime+Times+Q,PrivateKey as Byte ()) as Filestream

Public Shared Function SelfDestructingData.FileToData (Filepath as String,PublicKey as Byte ()) as XMLStream

其中,SelfDestructingData.DataToFile供發(fā)送者在系統(tǒng)中使用,SelfDestructingData.FileToData供接收者在系統(tǒng)中使用。

3.2 實驗數據

本文中,參照Fu等[13]的測試方法,結合本系統(tǒng)的實驗可行性分析,在實現該系統(tǒng)的同時在源碼中添加時間開銷測試代碼。由于電子文檔(如txt)具有非常好的直觀性,故采取新建特殊大小的txt文件10個,每個測試100次,取其加密解密時間平均值作為時間開銷,而空間開銷上可對比加密前后的大小可得到文件大小的變化。

3.2.1 空間開銷

在空間開銷上,該方案增加了Header頭部和HH哈希值,文件大小增加1 KB大小左右。在上述 txt文件的基礎上進行加密處理,得到加密后的數據與原文件大小對比,挑選一部分截圖如表1所示。

表1 空間開銷占比對比

3.2.2 時間開銷

由于對稱加密與非對稱加密算法的各自特殊性,采用對稱加密算法對Body進行加密比采用非對稱加密對其加密和解密節(jié)約時間。尤其是當文件較大時,對稱加密算法比非對稱加密算法效率高很多。在源碼中添加測試模塊,實驗通過建立1~10 MB的10個特殊大小txt文件,分別測試100次,取其平均值,加密時間如圖6所示。

圖6 加密解密時間

4 與現有技術比較

4.1 性能對比

對比現有文獻[3,5-8],可看出本文提出的方法在抵抗攻擊、穩(wěn)定性、可擴展性方面都已經很好實現功能。同時能夠進行多屬性多重散列加密,規(guī)避了密鑰管理的煩惱;在生命周期結束后無需擔心密文未刪除帶來的泄露風險。具體對比如表2所示。

表2 性能對比

4.2 功能對比

本文方案技術與現有文件生命周期控制方法比較,本方法增加了自主時間期限、訪問次數自動檢測等功能,實現對數據的主動有效控制,當達到判斷條件后自動徹底銷毀,比文獻[3]的方法實現方法簡單,算法通用性好,且實踐可行;將文獻[6]的方法中被動控制轉化為主動設置時間期限和訪問次數等控制條件,且無需進行拉格朗日中值定理進行文檔驗證進行解密。具體表現為下面4點:

(1) 通過雙重散列實現文件數據的散列轉換和首部驗證消息散列轉換,多重安全機制保障密文數據的安全性。將對稱加密密鑰封裝在Header中,并使用非對稱加密手段加密Header部分,防止密鑰丟失或者被竊導致文件數據被查看。

(2) 在加解密過程中,引入時間期限、訪問次數以及銷毀策略等因素,充分考慮文件數據的使用規(guī)范,實現對文件數據的有效控制,避免文件接收者可以無限期和無限次的訪問數據。

(3) 檢測到數據文件使用時間已到期或訪問次數結束,自動調用銷毀策略將數據文件銷毀,根據數據文件安全程度的高低,對于數據文件分為三種銷毀方式:一次隨機序列覆蓋、三次覆蓋和七次隨機序列覆蓋,降低了用戶殘留文件數據泄漏的風險。

(4) 達到判斷條件后自動銷毀,無需用戶或可信第三方介入,避免因意外因素導致的文件數據外泄、漏刪等情況,規(guī)避人為導致的數據外泄風險。

5 結 語

本文基于現實生活中一種常見的共享文件泄密現象,提出一種數據生命周期控制方法,用以降低共享文件數據泄密風險,包括密文和密鑰。本文提出的解決方案仍然是基于傳統(tǒng)的密碼學原理,后續(xù)工作將會把研究重心放在更加適合于分布式環(huán)境的相關技術上。例如對等網絡、分布式哈希表以及與文獻[13]在線方法結合等,形成一套完整的在線離線安全文件共享環(huán)境,并希望擴展此方案至網絡云數據的全方位保護。

[1] 陳全,鄧倩妮.云計算及其關鍵技術[J].計算機應用,2009,29(9):2562-2567.

[2] Balinsky H Y,Simske S J.Differential access for publicly-posted composite documents with multiple workflow participants[C]//Proceedings of the 10th ACM symposium on Document engineering.ACM,2010:115-124.

[3] 熊金波,姚志強,馬建峰,等.基于屬性加密的組合文檔安全自毀方案[J].電子學報,2014(2):366-376.

[4] 北京郵電大學.基于代理重加密的安全DRM互操作架構:中國,CN201110421186.4[P].2012-8-1.

[5] 徐菁,余建橋,朱有佃,等.基于遠程控制的數據銷毀技術的研究與實現[J].計算機工程與設計,2008,29(9):2206-2208.

[6] 岳風順.云計算環(huán)境中數據自毀機制研究[D].中南大學,2011.

[7] 王麗娜,任正偉,余榮威,等.一種適于云存儲的數據確定性刪除方法[J].電子學報,2012,40(2):266-272.

[8] Zeng L,Shi Z,Xu S,et al.Safevanish:An improved data self-destruction for protecting data privacy[C]//Cloud Computing Technology and Science (CloudCom),2010 IEEE Second International Conference on.IEEE,2010:521-528.

[9] Postel J.RFC 867:Daytime protocol [S].1983.

[10] FPUB NIST.FIPS PUB 197:Advanced Encryption Standard (AES)[S].2001.

[11] DOE DoD,NRC CIA,DoD 5220.22-M:National Industrial Security Program Operating Manual[S].1995.

[12] Rivest R.RFC 1321:The MD5 Message-Digest Algorithm[S].1992.

[13] Fu X,Wang Z,Wu H,et al.How To Send A Self-Destructing Email:A Method Of Self-Destructing Email System[C]// Big Data (BigData Congress),2014 IEEE International Congress on.2014:304-309.

A FILES LIFECYCLE CONTROL METHOD BASED ON DEADLINE AND ACCESS TIMES CONTROL

Fu Xiao Wang Zhijian Yang Jiaqi Wang Yu

(College of Computer and Information,Hohai University,Nanjing 211100,Jiangsu,China)

In order to solve that the electronic documents in Internet environment cannot safely and completely self-destruct when expiring,this paper presents a file lifecycle control method.Through two hash calculations and multiple encryptions,and by introducing the layers idea in Web programming,we added the deadline,times and destruction strategies to the header of files as attributes.We divided the encrypted files into the storage layer and the control layer.The files will be destroyed according to destruction policy after their lifecycles are expired.Experimental results showed that this method did not need the intervention exposed by any user or the trusted third party on the basis of implementing the capability of resisting traditional cryptographic or brute-force attacks.The safety of the files with hybrid encryption is enhanced,and the destructed cipher text or keys can no longer be restored.

User files Self-destruction Deadline Access times

2015-06-01。江蘇省自然科學基金項目(BK20130852)。傅曉,博士,主研領域:信息安全。王志堅,教授。楊家奇,碩士。王宇,副教授。

TP309.2

A

10.3969/j.issn.1000-386x.2016.11.069

猜你喜歡
數據文件加密算法密文
一種針對格基后量子密碼的能量側信道分析框架
一種支持動態(tài)更新的可排名密文搜索方案
基于模糊數學的通信網絡密文信息差錯恢復
數據文件恢復專題問答
數據文件安全管控技術的研究與實現
SQL數據文件恢復工具
基于小波變換和混沌映射的圖像加密算法
云存儲中支持詞頻和用戶喜好的密文模糊檢索
Hill加密算法的改進
對稱加密算法RC5的架構設計與電路實現
北流市| 建始县| 庆城县| 八宿县| 合山市| 灯塔市| 古浪县| 吉林市| 云梦县| 同德县| 吉水县| 阳春市| 汾西县| 闸北区| 岳西县| 上栗县| 霍林郭勒市| 东阳市| 武邑县| 马公市| 平果县| 延吉市| 新河县| 巴塘县| 齐齐哈尔市| 紫云| 桓台县| 玛纳斯县| 新宁县| 沙河市| 永春县| 嵩明县| 镇宁| 道真| 报价| 富锦市| 柘荣县| 政和县| 方正县| 汽车| 乐昌市|