用于云數(shù)據(jù)審計的密鑰變化和簽名更新的方法
【專利摘要】本發(fā)明公開了用于云數(shù)據(jù)審計的密鑰變化和簽名更新的方法,其包括如下步驟:更新前階段、更新階段以及更新后階段,在更新前階段:數(shù)據(jù)擁有者計算生成初始密鑰和簽名,云服務(wù)器由數(shù)據(jù)擁有者的簽名和從第三方審計接受的參數(shù)計算得到初始數(shù)據(jù)完整性證明參數(shù),并由第三方審計對初始證明參數(shù)進(jìn)行審計;在更新階段:數(shù)據(jù)擁有者選擇隨機(jī)數(shù)生成密鑰,并計算共享的更新簽名所需的密鑰發(fā)給云服務(wù)器,云服務(wù)器根據(jù)數(shù)據(jù)和接收的參數(shù)計算新的簽名;在更新后階段:數(shù)據(jù)擁有者根據(jù)更新階段產(chǎn)的新密鑰計算生成簽名,云服務(wù)器計算新數(shù)據(jù)完整性證明參數(shù),最后由第三方審計進(jìn)行審計。該方案保證了安全性,并且減少了數(shù)據(jù)所有者和與服務(wù)器端的通信開銷以及數(shù)據(jù)所有者的計算開銷。
【專利說明】用于云數(shù)據(jù)審計的密鑰變化和簽名更新的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及云計算中數(shù)據(jù)的存儲安全可驗(yàn)證技術(shù),具體來說是一個新的密鑰改變和簽名更新方案。
【背景技術(shù)】
[0002]當(dāng)今云計算正變得越來越流行,這里數(shù)據(jù)是被外存到云中的。它的優(yōu)勢很明顯:緩解了用戶的存儲負(fù)擔(dān),獨(dú)立于地理位置的通用數(shù)據(jù)訪問,避免了硬件,軟件,個人維護(hù)的資源開支等。然而,外包數(shù)據(jù)導(dǎo)致了新的安全問題。第一個問題是數(shù)據(jù)完整性。第二個問題是不可信的云服務(wù)提供商(CSP )。
[0003]為了解決這兩個問題,我們需要證據(jù)來向數(shù)據(jù)所有者和用戶表明CSP能保存數(shù)據(jù),并且不會被除用戶外的任何個體更改,本領(lǐng)域稱之為存儲正確性要求,同時將設(shè)計來滿足存儲正確性的方案稱為存儲驗(yàn)證需要。
[0004]現(xiàn)有的存儲可驗(yàn)證方案能對云數(shù)據(jù)提供很好的完整性保護(hù),但是存在使它們不能在云計算環(huán)境中廣泛應(yīng)用的阻力,當(dāng)數(shù)據(jù)擁有者DO更改到期的密鑰時,DO必須下載數(shù)據(jù)塊和簽名,使用舊密鑰確認(rèn)數(shù)據(jù)完整性,用新密鑰生成新簽名,并且再次上傳數(shù)據(jù)塊和新簽名。這將造成DO和云服務(wù)器CS的高通信支出和DO的高計算量支出。
【發(fā)明內(nèi)容】
[0005]針對現(xiàn)有云數(shù)據(jù)存儲可驗(yàn)證方案所存在的缺陷,本發(fā)明所要解決的技術(shù)問題是提供一種用于云數(shù)據(jù)審計的密鑰變化和簽名更新的方法,可使數(shù)據(jù)所有者更新密鑰,云服務(wù)器不需數(shù)據(jù)擁有者的私鑰,只需要數(shù)據(jù)所有者的私鑰就能代替數(shù)據(jù)所有者對數(shù)據(jù)的簽名進(jìn)行更新。這樣既保證了私鑰的安全性,又減少了數(shù)據(jù)所有者與服務(wù)器的通信開銷,以及數(shù)據(jù)所有者的計算開銷。
[0006]為了解決上述技術(shù)問題,本發(fā)明采用如下的技術(shù)方案:
[0007]用于云數(shù)據(jù)審計的密鑰變化和簽名更新的方法,所述方法包括如下步驟:
[0008](I)更新前階段:數(shù)據(jù)擁有者計算生成初始密鑰和簽名,云服務(wù)器由數(shù)據(jù)擁有者的簽名和從第三方審計接收的參數(shù)計算得到初始數(shù)據(jù)完整性證明參數(shù),并由第三方審計對初始證明參數(shù)進(jìn)行審計;
[0009](2)更新階段:數(shù)據(jù)擁有者選擇隨機(jī)數(shù)生成密鑰,并計算共享的更新簽名所需的密鑰發(fā)給云服務(wù)器,云服務(wù)器根據(jù)數(shù)據(jù)和接受的參數(shù)計算新的簽名;
[0010](3)更新后階段:數(shù)據(jù)擁有者根據(jù)更新階段產(chǎn)生的新密鑰計算生成簽名,云服務(wù)器計算新數(shù)據(jù)完整性證明參數(shù),最后由第三方審計進(jìn)行審計。
[0011]在該方法的優(yōu)選方案中,所述步驟(I)的更新前階段包括如下具體步驟:
[0012](11)數(shù)據(jù)擁有者生成初始公私密鑰對,并將公鑰發(fā)給云服務(wù)器和第三方審計;
[0013](12)數(shù)據(jù)擁有者通過私鑰為擁有的數(shù)據(jù)塊生成初始簽名;
[0014](13)云服務(wù)器由數(shù)據(jù)擁有者的簽名和從第三方審計接受的參數(shù)計算初始數(shù)據(jù)完整性證明參數(shù);
[0015](14)第三方審計從云服務(wù)器獲取初始數(shù)據(jù)完整性證明參數(shù)并進(jìn)行審計。
[0016]進(jìn)一步的,所述步驟(2)的更新階段包括如下具體步驟:
[0017](21)數(shù)據(jù)擁有者計算生成新的公私鑰對,并將公鑰發(fā)送給第三方審計;
[0018](22)數(shù)據(jù)擁有者生成用來更新簽名的密鑰并發(fā)給云服務(wù)器;
[0019](23)云服務(wù)器對數(shù)據(jù)擁有者擁有的數(shù)據(jù)中的每個數(shù)據(jù)塊更新舊簽名。
[0020]進(jìn)一步的,所述步驟(3)的更新后階段包括如下具體步驟:
[0021](31)數(shù)據(jù)擁有者根據(jù)更新階段中生成的新私鑰,為新上傳的數(shù)據(jù)塊生成簽名;
[0022](32)云服務(wù)器由數(shù)據(jù)擁有者簽名和從第三方審計接受的參數(shù)計算驗(yàn)證得到數(shù)據(jù)完整性證明參數(shù);
[0023](33)第三方審計從云服務(wù)器獲取完整性證明參數(shù),并用新公鑰進(jìn)行審計。
[0024]由此,本發(fā)明提供的云數(shù)據(jù)的密鑰改變和簽名更新方案能夠有效完成數(shù)據(jù)所有者的密鑰更新和數(shù)據(jù)的簽名更新,保證了私鑰的安全性,并且減少了數(shù)據(jù)端和服務(wù)器的通信開銷,以及數(shù)據(jù)端的計算開銷。
【專利附圖】
【附圖說明】
[0025]以下結(jié)合附圖和【具體實(shí)施方式】來進(jìn)一步說明本發(fā)明。
[0026]圖1為本發(fā)明更新前階段中D0、CS和TPA的交互關(guān)系示意圖;
[0027]圖2為本發(fā)明更新階段中D0、CS和TPA的交互關(guān)系示意圖;
[0028]圖3為本發(fā)明更新后階段中D0、CS和TPA的交互關(guān)系示意圖。
【具體實(shí)施方式】
[0029]為了使本發(fā)明實(shí)現(xiàn)的技術(shù)手段、創(chuàng)作特征、達(dá)成目的與功效易于明白了解,下面結(jié)合具體圖示,進(jìn)一步闡述本發(fā)明。
[0030]本發(fā)明在對云數(shù)據(jù)審計進(jìn)行密鑰改變和簽名更新時,主要分為三個階段:(1)更新前階段;(2)更新階段;(3)更新后階段。
[0031]其中,在更新前階段(BUP),數(shù)據(jù)擁有者(DO)計算生成初始密鑰和計算初始簽名,云服務(wù)器(CS)由DO的簽名和從第三方審計(TPA)接受的參數(shù)計算初始完整性證明參數(shù)P,最后TPA進(jìn)行審計。
[0032]在更新階段(UDP),DO選擇隨機(jī)數(shù)生成新的密鑰,計算得到更新簽名所需的密鑰并發(fā)送給CS,CS由數(shù)據(jù)塊,其已有的舊簽名及密鑰計算新的簽名。
[0033]在更新后階段(AUP),DO根據(jù)更新階段改變后的密鑰為數(shù)據(jù)塊生成簽名,CS計算完整性證明參數(shù),最后TPA進(jìn)行審計。
[0034]通過三個階段的配合即可實(shí)現(xiàn)密鑰改變和更新簽名的過程,即首先DO生成初始密鑰和簽名,CS生成完整性證明參數(shù),TPA審計;接著DO生成新密鑰,CS更新舊簽名;更新后階段的過程與更新前過程相同,只是其計算所用密鑰來自更新階段生成的新密鑰。TPA審計CS的完整性證明正確后,則完成了密鑰改變和簽名更新過程。
[0035]基于上述原理,以下通過一具體實(shí)例來進(jìn)一步說明本發(fā)明實(shí)現(xiàn)密鑰改變和更新簽名的過程。[0036]本實(shí)例通過一系統(tǒng)模型來實(shí)現(xiàn)審計方案中的密鑰改變和簽名更新需要,該系統(tǒng)模型的設(shè)計達(dá)到下面的目的:
[0037](I)支持密鑰改變,使DO可以將私鑰更改成隨機(jī)值;支持簽名更新,在不下載數(shù)據(jù)塊到D0,且未知DO私鑰的情況下,允許CS升級存儲在CS上的數(shù)據(jù)簽名;支持?jǐn)?shù)據(jù)塊級的審計,使DO的數(shù)據(jù)能以塊為單位被審計;
[0038](2)系統(tǒng)模型中具有用于審計模型的密鑰改變和簽名更新算法。
[0039]具體的,該系統(tǒng)模型主要由實(shí)體以及運(yùn)行在實(shí)體上的算法組成。
[0040]其中,審計時有四種實(shí)體:D0、CS、TPA和用戶。
[0041]DO為數(shù)據(jù)擁有者,擁有一系列數(shù)據(jù)塊Oiii e M),為每個數(shù)據(jù)塊生成一個簽名(Oi),一系列簽名Oi組成Φ; CS為云服務(wù)器,其存儲數(shù)據(jù)塊M及其簽名Φ ;TPA為第三方審計,它已知數(shù)據(jù)塊的索引Hietai,并且產(chǎn)生挑戰(zhàn)Ci從而審計數(shù)據(jù)塊;用戶只是使用來自TPA的審計報告,將不提及。
[0042]為便于對本實(shí)施例的理解,以下說明三個定義:
[0043](I)數(shù)據(jù)塊的定義。DO擁有的數(shù)據(jù)被分成一系列數(shù)據(jù)塊Hi1, m2,...mn e Zp (文中Zp代表包含P個元素的整數(shù)集合,P是一個大素數(shù))。
[0044](2)元數(shù)據(jù)的定義。對每個數(shù)據(jù)塊HIi e M,本實(shí)例將相應(yīng)的元數(shù)據(jù)定義為Inetai=Oiame | i) ,name唯一表示了塊所在的文件,i是文件中的塊索引,因此元數(shù)據(jù)Hietai是塊的唯一索引。
[0045](3)運(yùn)算空間的定義。本實(shí)例中G1, G2表示兩個群,gl表示G1的生成元,g表示G2的生成元。雙線性映射e = G1 XG2 — Gt表示對群G1和群G2中的元素進(jìn)行運(yùn)算,映射到群Gt中一個元素。
[0046]據(jù)此,本實(shí)例在實(shí)現(xiàn)密鑰交換和更新簽名時,首先完成更新前的初始審計系統(tǒng)工作過程。該階段目的是生成初始密鑰和簽名,并進(jìn)行審計。該階段以下步驟表示(參見圖
O:
[0047]步驟100,DO生成初始公私密鑰對(skQ,pk0)。
[0048]該步驟中,DO選擇一個隨機(jī)數(shù)a Q e Zp (Zp是有p個元素的整數(shù)集合,P是一個大素數(shù)),以此作為安全參數(shù),由a ^通過冪計算得到Vtl e G1,則私鑰Sktl= α 0,公鑰Pktl=Vtlt5 DO擁有一對密鑰(Sktl, pk0),并將公鑰Pktl發(fā)送給CS和ΤΡΑ,使得CS和TPA擁有公鑰Pktl。
[0049]步驟101,DO為數(shù)據(jù)塊生成初始簽名oi(l。
[0050]該步驟中,DO選擇隨機(jī)數(shù)u e G1,由步驟100中計算得到的私鑰Sktl= a ^、每個數(shù)據(jù)塊Hii及相應(yīng)的索引Iiietai,計算其簽名σ i(l e G1,并發(fā)送給CS。
[0051]步驟102,CS計算完整性證明(μ,σ )用于審計。
[0052]該步驟中,CS從TPA接收到Q= Kmetai, CiM (Ci e Zp,是TPA隨機(jī)產(chǎn)生的挑戰(zhàn)),從DO接收到簽名Qitl,從而計算得到數(shù) 據(jù)完整性證明參數(shù)(μ,0),其中11^21)部分由數(shù)據(jù)塊IV挑戰(zhàn)Ci計算得到,σ e G1部分由簽名σ i(l,挑戰(zhàn)Ci計算得到。
[0053]步驟103,TPA審計數(shù)據(jù)塊。
[0054]該步驟中,TPA從 CS 得至Ij (μ,σ ),檢驗(yàn) e ( σ,g)是否和由 Iiietai, Ci, u, μ , pk0 計算得到的結(jié)果相等,其中e ( σ,g)表示對簽名后半部分及群G2的生成元g進(jìn)行雙線性映射運(yùn)算,Hietai表示數(shù)據(jù)塊索引,Ci代表挑戰(zhàn),u是步驟101產(chǎn)生的隨機(jī)數(shù),μ是簽名前面部分,Pk0為TPA享有的公鑰。相等時說明CS的數(shù)據(jù)完整性證明正確,否則說明CS的完整性證明錯誤。
[0055]在完成更新前階段后,接著完成更新階段。該階段目的是生成共享的用來更新簽名的密鑰,并更新簽名。該階段主要由以下步驟表示(參見圖2):
[0056]步驟104, DO計算生成新的公私鑰對(Sk1, Pk1)。
[0057]該階段中,DO遵從一定約束選擇隨機(jī)數(shù)a i ∈ Zp (需要滿足
【權(quán)利要求】
1.用于云數(shù)據(jù)審計的密鑰變化和簽名更新的方法,其特征在于,所述方法包括如下步驟: (1)更新前階段:數(shù)據(jù)擁有者計算生成初始密鑰和簽名,云服務(wù)器由數(shù)據(jù)擁有者的簽名和從第三方審計接收的參數(shù)計算得到初始數(shù)據(jù)完整性證明參數(shù),并由第三方審計對初始證明參數(shù)進(jìn)行審計; (2)更新階段:數(shù)據(jù)擁有者選擇隨機(jī)數(shù)生成密鑰,并計算共享的更新簽名所需的密鑰發(fā)給云服務(wù)器,云服務(wù)器根據(jù)數(shù)據(jù)和接受的參數(shù)計算新的簽名; (3)更新后階段:數(shù)據(jù)擁有者根據(jù)更新階段產(chǎn)生的新密鑰計算生成簽名,云服務(wù)器計算新數(shù)據(jù)完整性證明參數(shù),最后由第三方審計進(jìn)行審計。
2.根據(jù)權(quán)利要求1所述的用于云數(shù)據(jù)審計的密鑰變化和簽名更新的方法其特征在于,所述步驟(I)的更新前階段包括如下具體步驟: (11)數(shù)據(jù)擁有者生成初始公私密鑰對,并將公鑰發(fā)給云服務(wù)器和第三方審計; (12)數(shù)據(jù)擁有者通過私鑰為擁有的數(shù)據(jù)塊生成初始簽名; (13)云服務(wù)器由數(shù)據(jù)擁有者的簽名和從第三方審計接受的參數(shù)計算初始數(shù)據(jù)完整性證明參數(shù); (14)第三方審計從云服務(wù)器獲取初始數(shù)據(jù)完整性證明參數(shù)并進(jìn)行審計。
3.根據(jù)權(quán)利要求1所述的用于云數(shù)據(jù)審計的密鑰變化和簽名更新的方法,其特征在于,所述步驟(2)的更新階段包括如下具體步驟: (21)數(shù)據(jù)擁有者計算生成新的公私鑰對,并將公鑰發(fā)送給第三方審計; (22)數(shù)據(jù)擁有者生成用來更新簽名的密鑰并發(fā)給云服務(wù)器; (23)云服務(wù)器對數(shù)據(jù)擁有者擁有的數(shù)據(jù)中的每個數(shù)據(jù)塊更新舊簽名。
4.根據(jù)權(quán)利要求1所述的用于云數(shù)據(jù)審計的密鑰變化和簽名更新的方法,其特征在于,所述步驟(3)的更新后階段包括如下具體步驟: (31)數(shù)據(jù)擁有者根據(jù)更新階段中生成的新私鑰,為新上傳的數(shù)據(jù)塊生成簽名; (32)云服務(wù)器由數(shù)據(jù)擁有者簽名和從第三方審計接受的參數(shù)計算驗(yàn)證得到數(shù)據(jù)完整性證明參數(shù); (33)第三方審計從云服務(wù)器獲取完整性證明參數(shù),并用新公鑰進(jìn)行審計。
【文檔編號】H04L9/32GK103888262SQ201410127626
【公開日】2014年6月25日 申請日期:2014年3月31日 優(yōu)先權(quán)日:2014年3月31日
【發(fā)明者】金波, 陳長松, 裴蓓 申請人:公安部第三研究所