王斌 國網天津市電力公司信息通信公司副主任
楊鵬 國網天津市電力公司信息通信公司專責
楊青 國網天津市電力公司信息通信公司專責
發展策略
基于密鑰分離與加密策略的云存儲加密方案
王斌 國網天津市電力公司信息通信公司副主任
楊鵬 國網天津市電力公司信息通信公司專責
楊青 國網天津市電力公司信息通信公司專責
通過對現有加密算法存在問題的分析,提出了一種基于密鑰分離與加密策略的云存儲加密方案,通過增加密鑰分離與加密策略管理功能,進一步增加數據密文被破解的難度,從而保證了云端用戶數據的私密性,提高了安全性能。通過試驗模擬,進一步驗證了基于密鑰分離與加密策略的云存儲加密方案。
云存儲 密鑰分離 加密管理
近年來,云計算技術不斷發展成熟,其被認為是繼個人電腦、互聯網變革之后的第三次IT革命。其中的云存儲技術,為云計算基礎服務的一種,用戶文件通過網絡存儲到云端,用戶不需要再關注物理存儲設備,減少了維護期和硬件升級的開銷。云計算雖然具有巨大的發展前景,但同時也面臨很多挑戰。其中,最受關注的為數據安全問題,只有確保數據安全云計算技術才能進一步發展?,F有的數據加密存儲方式主要有兩種,一種是口令認證,另一種是多因素認證。這兩種方法都存在各自缺點:第一種用戶使用不便,加重了用戶負擔,限制了客戶端拓展;第二種需要建立在對云存儲服務方可信的前提下,存在因管理問題導致數據信息被窺視和泄露的風險。針對云存儲安全認證中存在的問題,本文提出了一種基于密鑰分離與加密策略的云存儲加密方案。該方案通過將數據加密密鑰進行分離,以及增加用戶對數據加密算法的選擇,保證了云端數據存儲的安全性,直接避免了云存儲服務商單方面窺視數據。根據其與傳統云存儲加密方案比較后的性能分析顯示,雖然云存儲服務的計算性能有所降低,但是相比數據安全性能得到了顯著的提高。
保證云存儲服務器加密數據的安全,最大的困難是如何解決好兩個方面的問題:一是對密鑰的管理;二是對加密算法的選擇。
傳統云存儲加密的方案如圖1所示,它主要包括了3個方面:云終端、云存儲服務器端的密鑰管理服務、云存儲服務器端的數據加密存儲服務。
●云終端:由用戶操作。主要有需要存儲到云中的待存儲數據M以及用于對加密密鑰k進行加密的主密鑰K。
●密鑰管理服務:提供對數據加密密鑰的管理服務,包含數據加密密鑰及與它相關的其他密鑰的生成、存儲、加密、解密等。主要有:用戶主密鑰K的保存,用于待存儲數據加密的加密密鑰k的生成、存儲、加密與解密。其中,數據加密密鑰生成器用于生成用戶數據加密時的加密密鑰k;加密算法則是對數據加密密鑰k進行加密生成加密密鑰密文Ck,并存儲于云存儲服務器端。
●加密存儲服務:提供對用戶數據的加密及存儲的服務。主要有數據加密算法,比如AES對稱加密算法,利用數據加密密鑰k對待存儲數據進行加密,最后將密文CM存儲到存儲設備上。

圖1 傳統云存儲加密方案的工作原理圖
傳統云存儲加密方案由于其內在的密鑰管理方式及單一性的數據加密算法,使得數據加密存儲的安全性存在一定的風險。用戶對存儲數據安全的考慮,也只能依賴于云存儲服務系統的絕對安全,以及對云存儲服務提供商及其超級管理人員的職業道德與操守的信任。因此,需要構建一種對于用戶來說安全性更高的云存儲加密方案。
針對保證云存儲服務器加密數據安全的兩個基本問題,文章提出了一套安全性更高的數據加密方案——基于密鑰分離與加密策略的云存儲加密方案。該方案通過釆用新的虛擬密鑰及加密管理(Virtual Key andEncryptionManagement,VKEM)服務,實現對數據加密密鑰及數據加密算法的選擇策略的有效管理,來解決上面提到的問題。
為了更好地保證數據的安全,減少數據泄露的風險,可以從管理角度出發,將虛擬密鑰及加密管理服務部署在云端服務器和存儲服務器之間。虛擬密鑰及加密管理服務的框架如圖2所示。這樣,不僅在虛擬密鑰與加密管理服務器和存儲服務器之間進行傳輸的所有數據都經過了加密,而且從虛擬密鑰與管理服務器到云端服務器之間進行傳輸的所有數據都經過了解密,并且在數據加密及數據解密的過程當中必須有用戶的參與。虛擬密鑰及加密管理服務在數據需要加密存儲和讀取解密時,負責檢索服務器配對密鑰、加密策略以及請求用戶主密鑰,最后才能完成存儲數據的加密或解密。

圖2 虛擬密鑰及加密管理服務框架示意
虛擬密鑰及加密管理服務框架的工作流程如下:
(1)用戶向云端服務器提交申請,請求對待存儲數據進行加密存儲。
(2)云端服務器對用戶的數據加密存儲的申請進行驗證,驗證通過后,即向虛擬密鑰及加密管理服務器發出對數據進行加密存儲的功能請求。
(3)虛擬密鑰及加密管理服務器在處理數據加密存儲請求時,向用戶提出索要主密鑰。
(4)用戶對索要主密鑰的請求進行驗證,驗證通過后,將主密鑰以及待存儲加密的數據,通過安全的渠道上傳給虛擬密鑰及加密管理服務器。
(5)虛擬密鑰及加密管理服務器對用戶上傳的待存儲數據進行加密存儲。首先,生成服務器配對密鑰及加密策略,并分別將利用用戶主密鑰加密后的服務器配對密鑰密文及加密策略密文進行保存;其次,將服務器配對密鑰與用戶主密鑰作為輸入,并利用一定的規則生成數據加密密鑰;再次,利用數據加密密鑰對待存儲數據進行加密生成密文;最后,向存儲服務器提出密文存儲的請求。
(6)存儲服務器在完成對數據密文的存儲之后,向虛擬密鑰及加密管理服務器返回驗證信息。
(7)虛擬密鑰及加密管理服務器收到關于密文存儲的驗證信息后,向云端服務器返回驗證信息。
(8)最后,由云端服務器向用戶返回關于數據加密存儲的驗證信息。
其中,步驟(5)中,由于在對數據進行加密的整個過程當中,用于數據加密的加密密鑰并沒有以任何形式存放在云存儲服務器端,而且用于生成數據加密密鑰的其中一個參數——用戶的主密鑰也沒有在云存儲服務端保存,因此數據加密密鑰的安全性得到了保證,從而增加了存儲數據的安全性。
其中,步驟(3)、(4)是用戶數據在云存儲服務器端進行加密和解密操作的關鍵部分。由于對數據的每一次加密和解密的過程都必須有用戶參與,因此用戶在其中起到了決定性的作用。當用戶的數據完成加密存儲以后,如果需要對數據進行解密就必須提供用戶的主密鑰,否則數據就不能被成功解密。用戶成為唯一可以對數據解密的人,保證了存儲數據的私有化,從而實現了數據安全性的提高。
基于密鑰分離與加密策略的云存儲加密方案的工作原理如圖3所示。

圖3 基于密鑰分離與加密策略的云存儲加密方案的工作原理
因此,即使超級管理人員通過入侵服務器,得到了加密策略及配對密鑰密文,也不能對數據進行解密。因為如果沒有用戶的主密鑰,就無法確定數據加密時所采用的加密算法,增加了破解加密算法的難度。而且由于無法獲取最終的數據加密密鑰K′,依據AES加密算法的安全特性,獲取用戶數據的陰謀最終不能得逞。因此,如果連云存儲服務提供商尚且不能破解用戶存儲在那里的數據,那么黑客更加無所適從了。即便黑客能夠成功侵入云存儲服務器,他所能竊取的也只是一堆毫無用處的密文,存儲在云存儲服務端的數據信息不會被泄露,從而實現了真正意義上的數據私有化,達到了存儲數據高安全性的目標。
基于密鑰分離與加密策略的云存儲加密方案,增加了密鑰分離與加密策略的管理,雖然增加了服務器端的額外計算花費,卻使在云端存儲數據的安全性能有了較大的提高,這種代價相對于用戶對數據安全性的高要求來說是值得的。
本次試驗模擬使用在局域網范圍內搭建的一個簡易的云存儲服務系統,它同時實現了兩種云存儲加密方案。該系統為用戶提供數據加密存儲的服務,由云端服務器、密鑰分離及加密策略管理服務器、存儲服務器組成。
用戶通過瀏覽器與云端服務器端進行試驗數據的上傳和下載。為了提高密鑰分離及加密策略管理服務器的服務性能,將它們分別放在3臺物理服務器上進行部署。由于本次試驗著重于驗證兩種云存儲加密方案在數據加密及解密過程中密鑰及加密管理所產生的計算花費,以及其分別占數據與解密過程的計算總花費當中的比例,所以對于其中云端及云終端的認證的計算花費忽略不計,并且對與數據的加密及解密過程所產生的計算花費不做單獨的統計。數據加密過程中測試結果如圖4所示。隨著待存儲數據大小的不斷增加,兩種云存儲加密方案的數據加密前期準備工作時間占數據加密服務總時間的比例差值越來越小。也就是說,增加密鑰分離與加密策略管理功能產生的計算花費對兩種方案下對相同數據量的數據加密服務整體性能影響的差值,隨著待存儲數據大小的增長而不斷減小。

圖4 數據加密前期準備工作時間、數據加密服務總時間
數據解密過程如圖5所示。可見,隨著數據密文的不斷增加,兩種云存儲加密方案的數據解密前期準備工作時間占數據解密服務總時間比例的差值越來越小。也就是說,增加密鑰分離與加密策略管理功能產生的計算花費對兩種方案下對相同數據密文量進行數據解密服務的整體性能影響的差值,隨著數據密文大小的增長而不斷減小。

圖5 數據解密前期準備工作時間、數據解密服務總時間
本文提出了一種基于密鑰分離與加密策略的云存儲加密方案,通過增加密鑰分離與加密策略管理功能,進一步增加了數據密文被破解的難度。從而保證了云端用戶數據的私密性,提高了安全性能。通過試驗模擬,進一步驗證了基于密鑰分離與加密策略的云存儲加密方案所具有的計算性能損失小、安全性能強度高的特點,并且在實際中適用于對數據安全性要求高的云存儲加密服務。
1 雷璟.安全桌面虛擬化信息系統設計與實現.電訊技術. 2014,5
2 格仕.云存儲安全技術的研究.華南理工大學.2012
3 馮揚.云安全技術研究.電力信息與通信技術.2014,1
4 肖紅躍,張文科,劉桂芬.云計算安全需求綜述.信息安全與通信保密.2012,11
5 張富政.云存儲安全技術的研究.長春理工大學.2014
2015-07-15)