◆黃 翔 張媛媛
(湖南大眾傳媒職業(yè)技術學院 湖南 410100)
云服務應用模式下的數(shù)據(jù)隱私保護方案研究
◆黃 翔 張媛媛
(湖南大眾傳媒職業(yè)技術學院 湖南 410100)
隨著社會信息化進程的加快,云計算迅速推廣和普及,而云服務商頻發(fā)信息泄露問題讓用戶倍感不安對云服務產(chǎn)生疑慮。為防止非可信云服務提供商共謀泄露用戶隱私數(shù)據(jù),本文提出將IBE與秘密共享策略相結(jié)合建立云服務模式下的數(shù)據(jù)隱私保護方案,在理論上具有一定的借鑒作用。
泄露;云服務;IBE
隨著移動互聯(lián)網(wǎng)技術的迅速發(fā)展,云計算越來越普及,人們對云安全的關注呈上升趨勢,尤其是近年來,云服務提供商爆出的安全問題層出不窮。2011年3月,谷歌爆發(fā)大規(guī)模用戶數(shù)據(jù)泄露事件;2013年2月微軟云服務兩次中斷;2016年9月雅虎爆出近5億用戶資料于2年前被泄露。由此可見,要讓用戶安心地享用云服務,放心地將數(shù)據(jù)資源交付給云服務提供商,隱私數(shù)據(jù)的保護是關鍵。本文中隱私數(shù)據(jù)包括密鑰、用戶身份信息、數(shù)據(jù)在云平臺的存儲位置等。對于公有云來說,如何確保用戶隱私不被不信任的服務提供商泄露,是亟待解決的問題。
分析用戶享用公有云服務的整個過程,最有可能造成隱私數(shù)據(jù)泄露的是用戶身份和訪問控制環(huán)節(jié),即用戶通過認證后,用戶會將自己的數(shù)據(jù)資源上傳到云服務器端,并將訪問權限授予其他用戶。在這個過程中,為了防止非可信云服務商泄露隱私數(shù)據(jù),可設定用戶通過身份驗證后向可信的第三方申請授權,得到授權后將隱私數(shù)據(jù)加密,密鑰由自己或可信的第三方保存,加密后的數(shù)據(jù)可上傳到云端。這期間,即使云服務提供商(或其合作的其他云服務供應商)獲得加了密的隱私數(shù)據(jù),也會因為缺少密鑰而無法獲得真正的個人信息;而對于其他的合法用戶,可通過設定數(shù)字簽名,從而獲得完整、正確的隱私數(shù)據(jù)。構(gòu)建方案的關鍵在于:足夠嚴謹?shù)膹娂用芟到y(tǒng)和數(shù)字簽名方案。強加密系統(tǒng)采用IBE(Identity based Encryption,基于身份加密)算法,訪問授權采用可驗證的秘密共享策略,數(shù)字簽名方案可先將隱私數(shù)據(jù)組合,并按統(tǒng)一格式轉(zhuǎn)換成用戶的唯一身份,在加密環(huán)節(jié)將用戶的唯一身份作為密鑰的對應的唯一標志,并通過它來驗證數(shù)據(jù)是否完整。
圖1 身份加密
2.1 IBE
最早是由以色列密碼學家為了解決CA認證中心存在的安全威脅和郵件系統(tǒng)中郵件唯一性問題提出的,采用特定的算法將任意字符串轉(zhuǎn)化為用戶公鑰,減少用戶在使用其他用戶公鑰時還需要與CA中心交互,減輕密鑰中心的工作負擔。具體分為4步,如圖1所示。
IBE的優(yōu)點是用戶傳輸密文時不需要與密鑰管理中心交互,且僅有目標用戶可見;用戶身份定義簡單,方便使用,只要具有唯一性的字符串即可。
2.2 可驗證的秘密共享策略
秘密共享是將秘密分割成若干部分,分別由不同的活動參與者管理,當達到限定數(shù)額的參與者一起協(xié)同合作時才能恢復秘密,以此來防止秘密過于集中而導致的信息泄露。分析上述的IBM算法,該算法中用戶雙方在進行加密、解密前都需要獲得各自的私鑰,這就需要向密鑰管理中心申請?zhí)崛?,一同提取的還包括對方的公鑰信息(即身份唯一標識目標ID),若操作中存在惡意用戶,則可能對目標ID發(fā)起攻擊。為解決此問題,Bonech提出相應的安全模型,而秘密共享策略可運用于該模型中。與此同時,為了防止秘密分發(fā)者和秘密重構(gòu)者的惡意欺騙或篡改,要求在秘密劃分份額時引入秘密多項式;而在秘密份額分發(fā)階段,讓每個分發(fā)的秘密份額都產(chǎn)生對應的影子秘密,將經(jīng)過處理后的多項式參數(shù)、秘密份額、影子秘密都傳給參與者,參數(shù)用于驗證影子秘密是否被篡改,影子秘密用來驗證秘密份額是否正確、完整。
在方案設計前要解決幾個問題:①因為無法確認所有的云服務提供商是可信的,用戶對自己上傳的隱私數(shù)據(jù)擁有絕對的控制權,由他自己去授權給其他用戶;②云平臺通常是分布式的,且身份唯一,要求具有一定的容錯和恢復能力,因此容錯恢復也應是分布式的;③在隱私數(shù)據(jù)解密前,為檢查加密數(shù)據(jù)是否被篡改過,必須授權數(shù)據(jù)驗證。
3.1 用戶授權訪問
云平臺上,業(yè)務數(shù)據(jù)提供者可借助IBE加密算法中的安全參數(shù)生成器來控制其他用戶訪問上傳云數(shù)據(jù)的權限,即在算法的加密階段,算法是根據(jù)用戶的公鑰對數(shù)據(jù)加密,而在解密階段只有與公鑰對應的用戶才可能獲得加密的數(shù)據(jù)信息??紤]到IBE算法的運算成本較高,一般只采用IBE算法加密關鍵信息,如用戶身份信息、上傳數(shù)據(jù)的存儲位置或加密數(shù)據(jù)的密鑰等。借助這種機制,可以對參與業(yè)務的所有云服務提供商進行統(tǒng)一管理,讓每個參與者都擁有獨一無二的身份,確保即使獲得加密信息,也會因為缺少權限而無法解密信息。
3.2 分布式容錯恢復
秘密共享策略將借助引入的多項式將秘密劃分為P個份額,并設定閾值k(P>k),當有k個參與者(可以是云平臺多個分布式存儲系統(tǒng))的秘密份額協(xié)作時就可以還原秘密。這里秘密特指上傳數(shù)據(jù)的用戶隱私信息、身份、數(shù)據(jù)位置、加密密鑰等。當非可信的云服務提供商存儲系統(tǒng)的數(shù)目小于P-k時,即使獲得加密數(shù)據(jù)也無法破解;而當正確的秘密份額大于k時即可重構(gòu)秘密,獲得隱私數(shù)據(jù)。
3.3 授權數(shù)據(jù)驗證
為防止加密數(shù)據(jù)在傳輸、存儲過程中被篡改,在云數(shù)據(jù)提供者加密數(shù)據(jù)后,再使用自身的身份信息對其進行數(shù)字簽名,而在數(shù)據(jù)使用者這端在獲得加密數(shù)據(jù)后先進行簽名驗證,確保加密數(shù)據(jù)是完整的、未被修改的,然后再進行解密。
3.4 方案具體步驟
(1)系統(tǒng)初始化
根據(jù)安全參數(shù)生成器采用的安全參數(shù),生成主密鑰,并用它來生成公共安全密鑰,將這些參數(shù)以廣播的方式傳遞給云服務下的所有角色。
(2)秘密分發(fā)
指定Alice分發(fā)密鑰所需的唯一全局標識ID,申請獲得相應的私鑰;通過秘密分享的多項式計算生成秘密份額;為分發(fā)的秘密份額生成影子秘密;為分發(fā)的秘密份額生成驗證密鑰;Alice將秘密份額通過私人信道分發(fā)給P個云服務提供商的存儲系統(tǒng);Alice為分發(fā)的秘密份額的驗證密鑰生成相應的簽名驗證。
(3)秘密份額驗證
Bob向授權管理中心申請驗證數(shù)據(jù),根據(jù)接收到的數(shù)據(jù),首先驗證是否是經(jīng)過授權的用戶,如果是則進一步驗證密文是否是完整的、正確的、未被篡改過的。
(4)秘密重構(gòu)
通過驗證后,Bob從云服務提供商的存儲系統(tǒng)中提取k份秘密份額進行重構(gòu),最后根據(jù)公鑰解密密文,得到明文。
通過仿真實驗檢驗方案是否正確,實驗采用Shamus SoftwareLtd開發(fā)的大數(shù)運算密碼庫MIRACL來進行仿真,里面包含大量的、優(yōu)化過的程序,還提供眾多函數(shù)接口,且源碼開放。
實驗采用VC++編譯器,添加函數(shù)庫,調(diào)用相應接口即完成方案的實現(xiàn)。實驗流程圖如圖2所示。設定初始明文為一個IP地址10.20.42.187;簡單的對稱密鑰Alice@hnmm.edu.cn。仿真結(jié)果表明方案可行,在秘密分發(fā)數(shù)量固定的情況下,計算耗時隨著門限值呈線性變化,秘密重構(gòu)的時間也隨之增加;而當秘密份額門限值固定的情況下,計算和秘密重構(gòu)的時間消耗沒有隨秘密分發(fā)數(shù)量的增加而有明顯變化。分析表明,方案的耗時主要在秘密分發(fā)階段。
圖2 流程圖
本文提出的數(shù)據(jù)隱私保護方案是在身份管理統(tǒng)一的前提下進行的,且只進行了仿真實驗,還需進一步在真實的云平臺下測試。今后在身份管理機制和方案的抗攻擊性方向?qū)⑦M一步開展工作。
[1]李凌,李京,徐琳,王維維.一種云計算環(huán)境中用戶身份信息隱私保護方法[J].中國科學院研究生院學報,2013.
[2]馮登國,張敏,張妍等.云計算安全研究[J].軟件學報,2011.
[3]徐小龍,周靜嵐,楊庚. 一種基于數(shù)據(jù)分割與分級的云存儲數(shù)據(jù)隱私保護機[J].計算機科學,2013.
[4]張坤.面向多租戶應用的云數(shù)據(jù)隱私保護機制研究[D].濟南:山東大學,2012.
[5]張朋.云計算中用戶數(shù)據(jù)隱私保護關鍵技術的研究與應用[D].成都:電子科技大學,2012.