專利名稱:一種基于身份的數(shù)據(jù)安全審計方法
技術(shù)領(lǐng)域:
本發(fā)明涉及信息安全技術(shù)。
背景技術(shù):
云計算,這種新興的互聯(lián)網(wǎng)的技術(shù),正深刻地影響產(chǎn)業(yè)結(jié)構(gòu)和個人生活。它擁有強大的數(shù)據(jù)運算,存儲能力和硬件資源,為用戶提供按需的服務(wù)。尤其是作為大數(shù)據(jù)(BigData)時代的支撐性技術(shù),越來越多地,引起學(xué)術(shù)界和產(chǎn)業(yè)界的關(guān)注。云存儲,作為云計算的一個基本組成部分,可以使個人或企業(yè)用戶擺脫自身資源的束縛,享受許多便利(1)擁有海量的數(shù)據(jù)存儲能力;(2)能夠進行與所在地域無關(guān)的資源訪問;(3)減少軟硬件購買和資源維護的費用。然而,正是這種集中式、外包式的數(shù)據(jù)存儲模式,使得云計算給人們帶來好處的同時,也引發(fā)了對數(shù)據(jù)安全的關(guān)切。用戶需要可靠的云服務(wù)供應(yīng)商(CSP)來確保的數(shù)據(jù)的正確性。但是,越來越多的內(nèi)部和外部的因素,嚴重影響著云計算產(chǎn)業(yè)的發(fā)展。比如2011年亞馬遜的EC2云服務(wù)的客戶數(shù)據(jù)永久丟失事件,微軟的Hotmail用戶賬戶銷毀事件。同時,云服務(wù)供應(yīng)商為了自己的利益,也會威脅用戶的數(shù)據(jù)安全。比如,刪除較少訪問的數(shù)據(jù)來減少存儲成本,隱匿數(shù)據(jù)丟失的消息來維護自身信譽。因此,為了保證用戶的數(shù)據(jù)安全,對云服務(wù)器上的數(shù)據(jù)進行驗證非常重要。根據(jù)審計者的不同,數(shù)據(jù)安全審計協(xié)議分為用戶自我審計和公共審計。通常用戶存儲在云服務(wù)器上的數(shù)據(jù)量是巨大的,顯然單純的直接下載云服務(wù)器中的數(shù)據(jù)來驗證數(shù)據(jù)的真實性和完整性是不可行的。需要一個獨立的第三方(TPA)——公開的審計者,代替用戶完成云存儲數(shù)據(jù)的正確性和完整性驗證,同時保持隱私數(shù)據(jù)不被泄露。目前已公開的公共審計方法,如Wang等人于2010年3月在美國電氣和電子工程師協(xié)會通信網(wǎng)絡(luò)領(lǐng)域的頂級會議中公開的云存儲中隱私保護公共審計數(shù)據(jù)安全(C. Wang, Q. Wangj K. Renj and W. Louj Privacy-preserving public auditing for dataStorage Security in cloud computing, In InfoCom2010,IEEE,March2010.)中提出了一個數(shù)據(jù)對TPA保密的公共審計協(xié)議,并聲稱該協(xié)議能夠抵御現(xiàn)有的各種攻擊。然而,該方案在在安全性上仍然存在漏洞不能防止被驗證的服務(wù)器用未被挑戰(zhàn)的合法數(shù)據(jù)來替代被挑戰(zhàn)的數(shù)據(jù)。這樣,該方案就不能抵御惡意云服務(wù)器的攻擊,惡意云服務(wù)器可以任意修改用戶存儲數(shù)據(jù)而不被TPA發(fā)現(xiàn)。另一方面,現(xiàn)有的審計方案,都是基于傳統(tǒng)的證書系統(tǒng)。由于每個用戶的公鑰是自我產(chǎn)生且與身份無關(guān)的隨機值,需要CA (證書中心)以數(shù)字簽名的方式頒發(fā)證書來綁定公鑰與用戶的身份,證書系統(tǒng)的維護管理復(fù)雜,計算、通信開銷大。比如在鏈式證書系統(tǒng)中,對層次化的PKI,在η個簽名上需要η個不同的公共密鑰,由η個不同的證書中心(CA)來維護。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是,提供一種基于身份的,第三方審計的,有效保證審計有效性與數(shù)據(jù)隱私的數(shù)據(jù)安全審計方法。本發(fā)明為解決上述技術(shù)問題所采用的技術(shù)方案是,一種基于身份的數(shù)據(jù)安全審計方法,其特征在于,包括以下步驟一、密鑰生成步驟公共密鑰發(fā)生器生成用戶身份標示序列ID1、私鑰SK、公開參數(shù)、共同持有的狀態(tài)參數(shù)后;密鑰生成器將私鑰SK僅發(fā)送至用戶方保存,將用戶身份標示序列IDi與公開參數(shù)、共同持有的狀態(tài)參數(shù)同時發(fā)送至用戶、第三方審計服務(wù)器;二、數(shù)據(jù)塊簽名步驟用戶方將保存在被審計服務(wù)器的存儲數(shù)據(jù)文件F分為η個數(shù)據(jù)塊&F=ImjIj e [1,η]},為每一個數(shù)據(jù)塊分 配序號j ;利用共同持有的狀態(tài)參數(shù)、數(shù)據(jù)塊序號j、私鑰SK、公開參數(shù)對數(shù)據(jù)塊進行處理,得到每個數(shù)據(jù)塊對應(yīng)的生成標志值,并將數(shù)據(jù)文件F中所有數(shù)據(jù)塊以及其對應(yīng)的標志值發(fā)送給被審計服務(wù)器保存;三、審計挑戰(zhàn)發(fā)起步驟第三方審計者選擇需要審計的用戶以及該用戶數(shù)據(jù)文件中的I個數(shù)據(jù)塊,生成I個數(shù)據(jù)塊的審計集合0= /,1’;》.; 其中,I e [I, n], B1, ···,&為選擇出的I個數(shù)據(jù)塊對應(yīng)的序號,Vj為數(shù)據(jù)塊對應(yīng)的權(quán)重系數(shù);第三方審計者利用審計集合D生成挑戰(zhàn)值challenge ;將需要審計的用戶對應(yīng)的用戶身份標示序列IDi與生成的挑戰(zhàn)值challenge發(fā)送給被審計服務(wù)器;四、挑戰(zhàn)響應(yīng)步驟被審計服務(wù)器收到用戶身份標示序列IDi與挑戰(zhàn)值challenge后,查找該用戶下需要審計的I個數(shù)據(jù)塊分別用對應(yīng)的標志值、數(shù)據(jù)塊權(quán)重系數(shù)進行處理生成挑戰(zhàn)響應(yīng)值,發(fā)送至第三方審計者;五、挑戰(zhàn)響應(yīng)值驗證步驟第三方審計者收到響應(yīng)值后,利用選擇需要審計的數(shù)據(jù)塊對應(yīng)的序號j、數(shù)據(jù)塊權(quán)重系數(shù)Vj對挑戰(zhàn)響應(yīng)值進行驗證。本發(fā)明在數(shù)據(jù)塊簽名步驟中,將數(shù)據(jù)塊序號與數(shù)據(jù)塊數(shù)據(jù)一同生成標記值,在挑戰(zhàn)響應(yīng)值審計步驟中將數(shù)據(jù)塊序號參與到數(shù)據(jù)塊的審計過程中,能防止被審計服務(wù)器用未被挑戰(zhàn)的合法數(shù)據(jù)來代替被挑戰(zhàn)的數(shù)據(jù),保證了數(shù)據(jù)審計的安全性與有效性。并且,實現(xiàn)第三方審計者能在沒有得到用戶真實數(shù)據(jù)的情況下,能有效對被審計服務(wù)器上的用戶數(shù)據(jù)進行審計,保護用戶的數(shù)據(jù)隱私。另外,本發(fā)明基于身份的系統(tǒng)的基礎(chǔ)架構(gòu),比現(xiàn)有證書系統(tǒng)擁有更大的優(yōu)勢。首先,在基于身份的系統(tǒng)中,除了公共密鑰發(fā)生器(PKG),每個用戶無需公共密鑰基礎(chǔ)設(shè)施(PKI)維護其證書綁定的公共密鑰分配,減小了維護的存儲、計算的復(fù)雜度以及通信的開銷,以一個較小的計算量和通信量來確保被審計服務(wù)器數(shù)據(jù)的真實性和完整性,特別適合有低通信開銷的要求的大數(shù)據(jù)審計的應(yīng)用環(huán)境,比如云計算。本發(fā)明的有益效果是,不僅能夠?qū)崿F(xiàn)第三方審計者對數(shù)據(jù)的有效審計,保護用戶數(shù)據(jù)隱私,并且通信、計算復(fù)雜度有顯著的降低。
具體實施例方式下面將以云存儲數(shù)據(jù)安全審計為例對本發(fā)明作進一步的描述。
基于身份的云存儲數(shù)據(jù)安全審計方法,具體如下1.1使用的符號含義F表示存儲數(shù)據(jù)的文件,它是由η個數(shù)據(jù)塊!》組成,Ε,表示整數(shù)模q剩余類集合,其中q是一個大素數(shù);IDi e {0,1}*為用戶i的身份,we {0,1}*所有用戶共同持有的狀態(tài)參數(shù),PeG1其中A為階為素數(shù)q的加法循環(huán)群,為PKG持有的秘密值,{0,I}*表示二進制數(shù),
O - sP e Gi ;Sj, Tj分別是數(shù)據(jù)塊π^_的簽名值和隨機標記值,S,T分別是挑戰(zhàn)數(shù)據(jù)塊的聚合簽名值和聚合隨機標記值;H1 ( · ), H2 ( ·)均表示單向的哈希函數(shù),定義映射為;h(·)表示單向的哈希函數(shù),定義映射為GlIZe;
H( ·)表示單向的哈希函數(shù),定義映射為f ,Z*是正整數(shù)集。1. 2雙線性映射分別表示為階為素數(shù)q的加法和乘法循環(huán)群,雙線性映射 KG1 4 G2滿足如下的性質(zhì)(I)雙線性滿足給定元素U e G1對任意隨機數(shù)e Zf有e (Χχ,yY) =e (X,Y) ” ;(2)非退化性:對HeG1 ’ e (X,Y) Φ I ;(3)可計算性存在一個有效的算法,對任何可能的輸入都能有效的進行計算;(4)可分配性對eG, ,e (X+Y, Z) =e (X,Z) e (Y, Z)。1. 3方法描述基于身份的云存儲數(shù)據(jù)安全審計協(xié)議分為5個階段一、密鑰生成步驟I)公共密鑰發(fā)生器生成隨機數(shù)s作為秘密值,生成隨機數(shù)P作為公開參數(shù),生成隨機數(shù)w作為共同持有的狀態(tài)參數(shù),生成公開的用戶身份標示序列IDi ;其中,ie ,P e C1 , w G {O, I}*, IDi e {O, 1} * 表示整數(shù)模q剩余類集合,q是一個大素數(shù)為階為素數(shù)q的加法循環(huán)群;{0,1}*表示一串隨機的二進制數(shù)序列;2)公共密鑰發(fā)生器利用用戶身份標示序列IDi得到中間變量Piitl與Pu,PtM =HiUDlJ)) E G1 ,Pa /Z1 (W,.!)€< ,,其中 H1 表示映射為丨 αηφ 單向哈希函數(shù);利用秘密值s與公開參數(shù)P得到中間變量Q,Q=sP,將中間變量Q作為公開參數(shù);利用共同狀態(tài)參數(shù)w得到中間變量Pw,ii = /Mw)eGh其中H2表示不同于H1的映射為叫廣^巧的單向哈希函數(shù);中間變量Pw也作為共同持有的狀態(tài)參數(shù);3)公共密鑰發(fā)生器利用秘密值s與中間變量Pi,。、Pi;1生成用戶i的基于身份IDi的私鑰 SK,SK= (SPi,。,SPijl);4)公共密鑰發(fā)生器將私鑰SK僅發(fā)送至用戶方保存,將用戶身份標示序列IDi與公開參數(shù)、共同持有的狀態(tài)參數(shù)同時發(fā)送至用戶、第三方審計服務(wù)器。二、數(shù)據(jù)塊簽名步驟I)用戶方將保存在待審計服務(wù)器的存儲數(shù)據(jù)文件F分為η個數(shù)據(jù)塊,為每一個數(shù)據(jù)塊分配序號j,F(xiàn)= Imj|j e [I, η]};用戶方針對的每個數(shù)據(jù)塊1 產(chǎn)生對應(yīng)隨機值U利用隨機值共同狀態(tài)參數(shù)Pw、數(shù)據(jù)塊序號j、私鑰SK、公開參數(shù)P對數(shù)據(jù)塊進行處理,得到數(shù)據(jù)塊對應(yīng)的生成標志值(Sj, Tj),SJ=rJPw+H(j) SPi;0+mjSPia, Tj^rjP ;H(j)表示映射為— 2,的單向哈希函數(shù),Z* 為正整數(shù)集;3)用戶方將在待審計服務(wù)器的存儲數(shù)據(jù)文件F以及對應(yīng)的標志值集合Φ發(fā)送給被審計服務(wù)器保存,Φ = KSj, Tj) |j e [l,n]}。三、審計挑戰(zhàn)發(fā)起步驟I)第三方審計者選擇需要審計的I個數(shù)據(jù)塊組成審計集合 =⑷,其中,I e [I, n], B1, - ,B1為選擇出的I個數(shù)據(jù)塊對應(yīng)的序號,Vj為數(shù)據(jù)塊Hij對應(yīng)的權(quán)重系數(shù);2)第三方審計者利用I個數(shù)據(jù)塊組成審計集合D生成挑戰(zhàn)值challenge,challenge=(D);3)第三方審計者將需要審計的用戶數(shù)據(jù)所對應(yīng)的用戶身份標示序列IDi與生成的挑戰(zhàn)值challenge發(fā)送給被審計服務(wù)器。四、挑戰(zhàn)響應(yīng)步驟I)被審計服務(wù)器收到用戶身份標示序列IDi與挑戰(zhàn)值challenge后,根據(jù)用戶的用戶身份標示序列IDi計算中間變量Pu,隨機選取隨機數(shù)X,/I1 = H1(ID1A)EG1 ;2)被審計服務(wù)器利用得到的中間變量Pm與隨機數(shù)X計算挑戰(zhàn)響應(yīng)值Yd=XPia,3)被審計服務(wù)器根據(jù)挑戰(zhàn)值challenge中的審計集合D找到相應(yīng)的數(shù)據(jù)塊mj,利用數(shù)據(jù)塊以及對應(yīng)的權(quán)重系數(shù)'、隨機數(shù)X、挑戰(zhàn)響應(yīng)值y計算挑戰(zhàn)響應(yīng)值μ,
權(quán)利要求
1.一種基于身份的數(shù)據(jù)安全審計方法,其特征在于,包括以下步驟 一、密鑰生成步驟 公共密鑰發(fā)生器生成用戶身份標示序列ID1、私鑰SK、公開參數(shù)、共同持有的狀態(tài)參數(shù)后;公共密鑰發(fā)生器將私鑰SK僅發(fā)送至用戶方保存,將用戶身份標示序列IDi與公開參數(shù)、共同持有的狀態(tài)參數(shù)同時發(fā)送至用戶、第三方審計服務(wù)器; 二、數(shù)據(jù)塊簽名步驟 用戶方將保存在被審計服務(wù)器的存儲數(shù)據(jù)文件F分為η個數(shù)據(jù)塊mpF= {m」j e [I,η]},為每一個數(shù)據(jù)塊分配序號j ;利用共同持有的狀態(tài)參數(shù)、數(shù)據(jù)塊序號j、私鑰SK、公開參數(shù)對數(shù)據(jù)塊進行處理,得到每個數(shù)據(jù)塊對應(yīng)的生成標志值,并將數(shù)據(jù)文件F中所有數(shù)據(jù)塊以及對應(yīng)的標志值發(fā)送給被審計服務(wù)器保存; 三、審計挑戰(zhàn)發(fā)起步驟 第三方審計者選擇需要審計的用戶以及該用戶數(shù)據(jù)文件中的I個數(shù)據(jù)塊,生成I個數(shù)據(jù)塊的審計集合13 =其中,I e [I,n],a1;…,七為選擇出的I個數(shù)據(jù)塊對應(yīng)的序號,Vj為數(shù)據(jù)塊對應(yīng)的權(quán)重系數(shù); 第三方審計者利用審計集合D生成挑戰(zhàn)值challenge將需要審計的用戶對應(yīng)的用戶身份標示序列IDi與生成的挑戰(zhàn)值challenge發(fā)送給被審計服務(wù)器; 四、挑戰(zhàn)響應(yīng)步驟 被審計服務(wù)器收到用戶身份標示序列IDi與挑戰(zhàn)值challenge后,查找該用戶下需要審計的I個數(shù)據(jù)塊Hij分別用對應(yīng)的標志值以及權(quán)重系數(shù)進行處理生成挑戰(zhàn)響應(yīng)值,發(fā)送至第三方審計者; 五、挑戰(zhàn)響應(yīng)值驗證步驟 第三方審計者收到響應(yīng)值后,利用選擇需要審計的數(shù)據(jù)塊對應(yīng)的序號j、數(shù)據(jù)塊權(quán)重系數(shù)\以及共同持有的狀態(tài)參數(shù)對挑戰(zhàn)響應(yīng)值進行驗證。
2.如權(quán)利要求1所述一種基于身份的數(shù)據(jù)安全審計方法,其特征在于,密鑰生成步驟的具體方法是 1)公共密鑰發(fā)生器生成隨機數(shù)s作為秘密值,生成隨機數(shù)P作為公開參數(shù),生成隨機數(shù)w作為共同持有的狀態(tài)參數(shù),生成公開的用戶身份標示序列IDi ; 其中 PeCw1 w e {O, I}*, IDi e {O, Γ : 表示整數(shù)模q剩余類集合,q是一個大素數(shù)為階為素數(shù)q的加法循環(huán)群;{O,1}*表示一串隨機的二進制數(shù)序列; 2)公共密鑰發(fā)生器利用用戶身份標示序列IDi得到中間變量Pu與Pu,PiM = //, ( ,.0)6(5,, Hs(IDiA) EG1 ,其中 H1 表示映射為 Ι0.1Γ單向哈希函數(shù); 利用秘密值s與公開參數(shù)P得到中間變量Q,Q = sP,將中間變量Q作為公開參數(shù); 利用共同狀態(tài)參數(shù)w得到中間變量Pw,Pw = H 'Gt,其中H2表示不同于H1的映射為丨《.屮4%的單向哈希函數(shù);中間變量Pw作為共同持有的狀態(tài)參數(shù); 3)公共密鑰發(fā)生器利用秘密值s與中間變量Pi^Pu生成用戶i的基于身份IDi的私鑰 SK,SK = (sPij0, SPi,); 4)公共密鑰發(fā)生器將私鑰SK僅發(fā)送至用戶方保存,將用戶身份標示序列IDi與公開參數(shù)、共同持有的狀態(tài)參數(shù)同時發(fā)送至用戶、第三方審計服務(wù)器。
3.如權(quán)利要求2所述一種基于身份的數(shù)據(jù)安全審計方法,其特征在于,數(shù)據(jù)塊簽名步驟的具體方法是 I)用戶方將保存在待審計服務(wù)器的存儲數(shù)據(jù)文件F分為η個數(shù)據(jù)塊,為每一個數(shù)據(jù)塊分配序號 j,F(xiàn) = ImjI j e [I, η]}; 用戶方針對的每個數(shù)據(jù)塊產(chǎn)生對應(yīng)隨機值υ利用隨機值共同狀態(tài)參數(shù)Pw、數(shù)據(jù)塊序號j、私鑰SK、公開參數(shù)P對數(shù)據(jù)塊%進行處理,得到數(shù)據(jù)塊%對應(yīng)的生成標志值(Sj,Tj), Sj = rjPw+H(j) sP^+iujsP^, T^rjP ;H(j)表示映射為^ 的單向哈希函數(shù),Z*為正整數(shù)集; 3)用戶方將在待審計服務(wù)器的存儲數(shù)據(jù)文件F以及對應(yīng)的標志值集合Φ發(fā)送給被審計服務(wù)器保存,Φ = Ksj, Tj) |j e [I, η]} ο
4.如權(quán)利要求3所述一種基于身份的數(shù)據(jù)安全審計方法,其特征在于,審計挑戰(zhàn)發(fā)起步驟的具體方法是 1)第三方審計者選擇需要審計的I個數(shù)據(jù)塊組成審計集合=其中,Ie [I,n],a1;…,B1為選擇出的I個數(shù)據(jù)塊對應(yīng)的序號,Vj為數(shù)據(jù)塊Hij對應(yīng)的權(quán)重系數(shù),Vj e Zq ; 2)第三方審計者利用審計集合D生成挑戰(zhàn)值challenge; 3)第三方審計者將需要審計的用戶數(shù)據(jù)所對應(yīng)的用戶身份標示序列IDi與生成的挑戰(zhàn)值challenge發(fā)送給被審計服務(wù)器。
5.如權(quán)利要求4所述一種基于身份的數(shù)據(jù)安全審計方法,其特征在于,第三方審計者批處理選擇多個用戶生成批處理挑戰(zhàn)值challenge發(fā)送給被審計服務(wù)器。
6.如權(quán)利要求4或5所述一種基于身份的數(shù)據(jù)安全審計方法,其特征在于,挑戰(zhàn)響應(yīng)步驟的具體方法是 1)被審計服務(wù)器收到用戶身份標示序列IDi與挑戰(zhàn)值challenge后,根據(jù)用戶的用戶身份標示序列IDi計算中間變量Pi^隨機選取隨機數(shù)X,Pn =H1(ID1A) eG, ,xeZq; 2)被審計服務(wù)器利用得到的中間變量Piil與隨機數(shù)X計算挑戰(zhàn)響應(yīng)值y,y= XPi,1; 3)被審計服務(wù)器根據(jù)挑戰(zhàn)值chalIenge中的審計集合D找到相應(yīng)的數(shù)據(jù)塊Hij,利用數(shù)據(jù)塊以及對應(yīng)的權(quán)重系數(shù)隨機數(shù)X、挑戰(zhàn)響應(yīng)值y計算挑戰(zhàn)響應(yīng)值μ,
7.如權(quán)利要求6所述一種基于身份的數(shù)據(jù)安全審計方法,其特征在于,挑戰(zhàn)響應(yīng)值審計步驟的具體方法是 第三方審計者收到挑戰(zhàn)響應(yīng)值{S,Τ,μ , y}后,將挑戰(zhàn)響應(yīng)值帶入驗證公式
8.如權(quán)利要求6所述一種基于身份的數(shù)據(jù)安全審計方法,其特征在于,所述被審計服務(wù)器為云服務(wù)器。
全文摘要
本發(fā)明提供一種基于身份的數(shù)據(jù)安全審計方法。本發(fā)明基于身份的系統(tǒng)的基礎(chǔ)架構(gòu),能以一個較小的計算量和通信量來確保被審計服務(wù)器數(shù)據(jù)的真實性和完整性。在數(shù)據(jù)塊簽名步驟中,將數(shù)據(jù)塊序號與數(shù)據(jù)塊數(shù)據(jù)一同生成標記值,在挑戰(zhàn)響應(yīng)值審計步驟中將數(shù)據(jù)塊序號參與到數(shù)據(jù)塊的審計過程中,能防止被審計服務(wù)器用未被挑戰(zhàn)的合法數(shù)據(jù)來代替被挑戰(zhàn)的數(shù)據(jù),保證了數(shù)據(jù)審計的安全性與有效性。
文檔編號H04L29/08GK103067374SQ20121057417
公開日2013年4月24日 申請日期2012年12月26日 優(yōu)先權(quán)日2012年12月26日
發(fā)明者許春香, 趙繼寧 申請人:電子科技大學(xué)