本發明涉及云存儲環境下數據安全技術領域
技術背景
隨著云計算的發展,移動數據存儲的研究,越來越多的人和企業選擇在云端存儲數據,以打破以往智能在特定環境下訪問某些信息的限制。但是,企業或者個人信息安全也出現的風險,服務商被攻擊,個人網絡被攻擊導致隱私機密信息泄露,造成隱患。所以云環境下數據的加密技術和存儲技術收到越來越多的研究。
在開放式云環境下,數據所有者(用戶)將信息加密存儲于云端,并通過對稱、非對稱密鑰進行數據的保護雖然可以數據隱私性,但是密鑰協商和管理過程復雜,增加了密鑰動態更新和用戶細粒度訪問控制的難度。現在發展最好的是基于CP-ABE基于屬性基的加密和訪問結構控制來實現數據安全,由用戶屬性集合生成的相關聯私鑰是解密共享數據的關鍵,而其私鑰的生成與分發需要依賴可信的密鑰托管中心,無法滿足開放式云存儲中信任分散的安全需求。同時,CP-ABE中的訪問結構是由屬性集合與邏輯運算組成,在共享數據解密過程中,多個非授權用戶可以聯合自己在訪問結構中的合法屬性的相關聯私鑰,以聯合形成滿足訪問結構的解密私鑰,進而解密密文以實施非法訪問。此外,由于用戶私鑰與用戶屬性集合關聯,不同用戶的屬性集合間存在共有屬性,云存儲環境下用戶的離開將導致多個用戶私鑰的更新,增加了密鑰撤銷的復雜性。
基于以上問題,本發明提出一種基于CP-ABE的數據安全共享方法,將用戶的私鑰分為對稱密鑰和非對稱密鑰兩部分,分別由云中心和代理機構管理,并在密鑰中加入私人標識,以抵抗共謀攻擊和串謀攻擊。
技術實現要素:
針對上述不足,本發明提出一種基于CP-ABE的數據安全共享方法,將用戶的私鑰分為對稱密鑰和非對稱密鑰兩部分,分別由云中心和代理機構管理,并在密鑰中加入私人標識,以抵抗共謀攻擊和串謀攻擊。
本發明所采用的技術方案是:云環境下一種安全的數據共享方法,該方法是針對云存環境下的加密數據訪問控制問題,結合CP-ABE提出的一種數據安全共享方法。該方法首先通過聯合云存儲中心的對稱密鑰和授權機構的非對稱私鑰解決CP-ABE算法中的可信第三方依賴問題;其次,在用戶的屬性私鑰中添加用戶唯一標識使共享機制可以抵制來自非法用戶的串謀攻擊;最后,通過對稱密鑰的更新完成了用戶的撤銷,保證了共享數據的后向安全性并提高了更新效率。
本發明的有益效果是:解決了密鑰存儲的信任問題,提高了除了合法訪問者外,不合法訪問者攻擊數據的安全性,能抵抗共謀攻擊、猜測攻擊、提高了數據后向的安全性。
具體實施方式
用戶,是數據所有者,其將需要共享的數據通過某個代理服務商上傳到云空間;代理服務商,稱其為代理機構,其租用云空間來分發給他的用戶;云空間所有者是云服務商,管理云空間的機構稱為云中心;合法訪問者是用戶許可的訪問者,從云存儲中心獲取加密的共享數據后使用自己的密鑰解密數據。
在本發明中,首先由授權機構和云存儲中心結合用戶唯一標識共同產生用戶密鑰;其次用戶混合使用授權機構產生的非對稱密鑰和云服務商產生的對稱密鑰完成數據的加解密;最后,當用戶注銷時完成相關密鑰和密文的更新,保護共享數據的后向安全性。本方法主要分為以下幾個步驟:
步驟一:系統初始化,代理機構產生安全參數
通過雙線性映射發,設g為生成元,階為p的雙線性群G和雙線性映射e:G×G→G1,隨機選取散列函數H和α,β∈Zp生成主密鑰(gα,β)和公鑰(G,g,gβ,H,e(g,g)α)云中心產生對稱密鑰ε∈Zp和全體屬性集Ω={λ1,λ2,...,λn}。
步驟二:密鑰生成
當用戶進入云存儲系統注冊時,云中心為其生成唯一標識對稱密鑰ε和屬性集Si={λ1,λ2,...,λm},用戶將自己的屬性集Si={λ1,λ2,...,λm}、標識符對稱密鑰ε發送給代理機構申請關聯的私鑰,代理機構為注冊用戶屬性集中的屬性選取參數,計算私鑰發送給用戶,私鑰SK計算方法為:
步驟三:共享數據加密
用戶在上傳需要共享的數據前,需要對數據進行加密,首先構造訪問樹,然后利用公鑰和密鑰完成數據加密。
以屬性作為葉子節點,門限邏輯運算作為中間節點構造訪問樹T,從根節點開始,每個非葉子節點x定義一個(kx-1))次多項式fx并隨機選取s∈Zp作為根節點R的值,設置fR(0)=s,設置fx(0)=fparent(x)(inde(x)),inde(x)為節點編碼值。對共享數據M進行加密,密文數據為CT存放在云存儲中心。
步驟四:合法訪問者訪問共享數據
所有的云存儲用戶均可向云存儲中心查詢下載加密后的共享數據,并使用自己的密鑰解密數據。數據的解密操作分為2個部分:使用嵌套方式計算訪問樹根節點尺的節點值,然后使用根的節點值解密數據。
對訪問樹的每個葉子節點x,請求用戶使用CP-ABE私鑰執行解密操作:
如果λx∈S,則計算Tx,如果不是,則設置Tx=0,
對訪問樹的每個非葉子節點y自底向上依次執行解密操作,如果y的所有子節點集合N中滿足條件
|(z∈N)&Tz≠0)|≥ky則計算Ty,如果不滿足則Ty=0,當|(z∈N)&Tz≠0)|≥ky時:
當用戶私鑰滿足訪問樹,得到根節點否則TR=0;
根據根節點的值和用戶私鑰,恢復數據M,
步驟五:用戶動態更新
為保護共享數據不被注銷后的用戶獲取,共享機制提出用戶撤銷算法,保護共享數據的后向安全性。當用戶注銷時,云存儲中心重新生成對稱密ε′,進行重新加密:
云存儲中心將新的對稱密鑰ε′分配給現有用戶,用戶更新私鑰,
以此新的私鑰可以還原共享數據。
通過上述方法,用戶上傳共享數據后,制定的合法訪問者可以隨時隨地訪問數據,并不擔心數據安全問題,并且,隨時可以更換訪問者名單,取消權限的訪問者不能在依據原來的密鑰攻擊到數據,保障了數據的向后安全性。