一種用于云存儲數(shù)據(jù)的批量自審計方法
【專利摘要】本發(fā)明屬于信息安全技術(shù)領(lǐng)域,具體涉及一種用于云存儲數(shù)據(jù)的批量自審計方法。本發(fā)明的方法主要包括:生成基于橢圓曲線的數(shù)字簽名算法的公私鑰對,輕量級的簽名算法的公私鑰對,以及輕量級對稱加密算法:計算多個數(shù)據(jù)文件的數(shù)字簽名、數(shù)據(jù)文件標(biāo)簽、數(shù)據(jù)文件的密文,并發(fā)送到云服務(wù)器;云用戶產(chǎn)生審計挑戰(zhàn)信息發(fā)送到云服務(wù)器;云服務(wù)器產(chǎn)將聚合的審計證明響應(yīng)信息返回給云用戶;云用戶根據(jù)接收到的聚合的審計證明響應(yīng)信息,利用基于橢圓曲線的數(shù)字簽名算法以及對稱加密算法檢驗聚合的審計證明響應(yīng)的合法性。本發(fā)明的有益效果為,解決了云存儲數(shù)據(jù)批量完整性驗證的問題,使得用戶能夠有效地對多個數(shù)據(jù)文件的完整性同時進(jìn)行驗證。
【專利說明】
-種用于云存儲數(shù)據(jù)的批量自審計方法
技術(shù)領(lǐng)域
[0001] 本發(fā)明屬于信息安全技術(shù)領(lǐng)域,具體設(shè)及一種用于云存儲數(shù)據(jù)的批量自審計方 法。
【背景技術(shù)】
[0002] 云存儲作為云計算的一種重要服務(wù)模式已日益盛行,將數(shù)據(jù)外包存儲在云服務(wù)器 上相比傳統(tǒng)存儲模式有著極大的優(yōu)勢,但同時也讓用戶對存儲在云服務(wù)器的數(shù)據(jù)的安全隱 私問題擔(dān)憂。首先,云用戶擔(dān)屯、他們存儲在云服務(wù)器上的數(shù)據(jù)可能被未認(rèn)證用戶訪問并濫 用,因為一旦數(shù)據(jù)被存儲到云服務(wù)器上,云用戶就放棄了數(shù)據(jù)的物理上的控制權(quán)。其次,云 用戶擔(dān)屯、他們存儲在云服務(wù)器上的數(shù)據(jù)可能被丟失。因為不管云服務(wù)提供商采用可靠程度 多么高的方法,都有可能導(dǎo)致云存儲設(shè)備上的數(shù)據(jù)丟失或損壞。再次,云服務(wù)提供商由于一 些經(jīng)濟(jì)利益往往會刪除一些很少被用戶訪問的數(shù)據(jù),從而節(jié)省存儲空間,并且他們也不會 及時地向被刪除的運些數(shù)據(jù)的主人反應(yīng)真實情況。因此,為了確保云存儲數(shù)據(jù)的真實性和 完整性,云用戶需要對存儲在云服務(wù)器上的數(shù)據(jù)進(jìn)行完整性驗證。
[0003] 在大多數(shù)情況下,為了確保數(shù)據(jù)的機(jī)密性,用戶的數(shù)據(jù)都是先經(jīng)過加密再存儲在 云服務(wù)器上。即便是運樣,在對用戶的存儲在云服務(wù)器上的敏感數(shù)據(jù)進(jìn)行完整性驗證的過 程中,用戶也不希望委托第=方審計者幫助其審計數(shù)據(jù)的完整性。運是因為存儲在云服務(wù) 器上的部分公共數(shù)據(jù)會被第=方審計者掌握,進(jìn)而導(dǎo)致云用戶敏感而重要的數(shù)據(jù)出現(xiàn)泄露 的威脅。此外,當(dāng)前絕大部分支持第=方審計的云存儲數(shù)據(jù)完整性審計方法都是利用基于 雙線性對的聚合數(shù)字簽名算法設(shè)計得到的,然而運需要計算開銷較大的模指數(shù)與雙線性對 運算。而基于楠圓曲線構(gòu)造的數(shù)字簽名算法其安全性依賴于楠圓曲線有限群上的離散對數(shù) 問題,具有簽名長度短,存儲空間小,計算速度快的特性,特別適用于需要輕量級計算量,存 儲空間有限,需要高效實現(xiàn)的場合。因此,針對適用于無線通信環(huán)境的應(yīng)用場景,設(shè)計具有 更高隱私保護(hù)的基于楠圓曲線的云存儲數(shù)據(jù)批量自審計方法具有重要的應(yīng)用價值。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明的目的是為了解決上述問題,提供一種基于楠圓曲線的用于云存儲數(shù)據(jù)的 批量自審計方法。
[0005] 本發(fā)明的技術(shù)方案為:一種用于云存儲數(shù)據(jù)的批量自審計方法,其特征在于,包括 W下步驟:
[0006] a.系統(tǒng)初始化,具體包括:生成一個基于楠圓曲線的數(shù)字簽名算法的公私鑰對,一 個用于對文件名稱進(jìn)行輕量級簽名的簽名算法的公私鑰對,W及一個輕量級對稱加密算 法:
[0007] b.簽名產(chǎn)生,具體包括:
[000引bl.利用步驟a中所述的基于楠圓曲線的數(shù)字簽名算法,分別計算多個數(shù)據(jù)文件的 數(shù)字簽名;
[0009] b2.利用步驟a中所述的簽名算法分別對不同的數(shù)據(jù)文件名稱進(jìn)行數(shù)字簽名產(chǎn)生 數(shù)據(jù)文件標(biāo)簽,并利用步驟a中所述的對稱加密算法將每一個數(shù)據(jù)文件進(jìn)行加密獲得數(shù)據(jù) 文件的密文;
[0010] b3.將步驟bl中產(chǎn)生的數(shù)字簽名和步驟b2中產(chǎn)生的數(shù)據(jù)文件標(biāo)簽及數(shù)據(jù)文件的密 文發(fā)送到云服務(wù)器;
[0011] C.審計證明產(chǎn)生,具體包括:
[001^ Cl.云用戶產(chǎn)生審計挑戰(zhàn)信息發(fā)送到云服務(wù)器;
[0013] c2.云服務(wù)器根據(jù)審計挑戰(zhàn)信息產(chǎn)生多個數(shù)據(jù)文件的聚合的審計證明響應(yīng)信息, 并將聚合的審計證明響應(yīng)信息返回給云用戶;
[0014] d.審計證明驗證,具體包括:云用戶根據(jù)接收到的聚合的審計證明響應(yīng)信息,利用 基于楠圓曲線的數(shù)字簽名算法W及對稱加密算法檢驗聚合的審計證明響應(yīng)信息的合法性。
[0015] 進(jìn)一步的,所述步驟a的具體方法為:
[0016] al.定義一個在Zp(模P剩余類環(huán))上的楠圓曲線E,設(shè)置V是E上階為素數(shù)q的一個 點,V是循環(huán)群<¥〉的生成元,P是大素數(shù);
[0017] a2.設(shè)置一個安全的輕量級對稱加密算法巧,秘密密鑰為t;同時產(chǎn)生一個輕量級數(shù) 字簽名算法的公私鑰對(巧k,rsk);
[001引a3.從Zq中隨機(jī)選取一個值Z,生成基于楠圓曲線的簽名算法的公鑰K= {q,E,V, 叫,U = ZV為實際簽名公鑰,簽名私鑰為Z,Zq是模q剩余類環(huán)。
[0019] 進(jìn)一步的,所述步驟b的具體方法為:
[0020] 對于1《1《1^,設(shè)每一個數(shù)據(jù)文件位巧={乂,1,/巧,…,瓜),文件名稱為namei,則:
[0021] 步驟bl具體為:選取隨機(jī)數(shù)ki,iGZq,分別產(chǎn)生每一個數(shù)據(jù)文件fi,i的數(shù)字簽名為: 5i,i = (Wi,i,;ri,i,Ti,i)(f'='l,..v《),其中,Wi,i = ki,iV= (ui,i,vi,i),;ri,i = ui,i mod q,Ti,i = (ri,iki,i+fi,iZ)modq,定義運些簽名的集合為A =巧,,心兇;
[0022] 步驟b2具體為:調(diào)用一個輕量級數(shù)字簽名算法計算文件名稱namei的標(biāo)簽曰1 = namei I I SSigrsk(namei) ;調(diào)用對稱加密算法(6^將每一個數(shù)據(jù)塊fl,i加密為 乂+巧(。。?口圳0,即將巧=(乂.1,/u,…,瓜)加密為巧'=;記,尤,…,尤);
[002引步驟b3具體為:云用戶發(fā)掛巧'冶/,巧儲云服務(wù)器。
[0024] 進(jìn)一步的,所述步驟Cl中云用戶產(chǎn)生的審計挑戰(zhàn)信息為:從江2.,?…,々中隨機(jī)選取 一個含有C個元素的子集C= {h,…,1。};對于每一個j G C,用戶產(chǎn)生相應(yīng)的隨機(jī)值Vj,最后 云用戶發(fā)送審計挑戰(zhàn)信息Chal = { j,V J 給云服務(wù)器;
[0025] 則步驟C2中:云服務(wù)器計算組合信旨媒/,音'擬及聚難名宮誤-音知, 最后,云服務(wù)器發(fā)送(W,T,{fih《城,{namei}i《KL)作為審計證明響應(yīng)信息給云用戶。
[00%] 進(jìn)一步的,所述步驟d的具體方法為:
[0027]驗證方程
是否成立,若成立,則審計證明響應(yīng)信息有效,若不成立, 則審計證明響應(yīng)信息無效;其牛
[0028] 本發(fā)明的有益效果為,解決了云存儲數(shù)據(jù)批量完整性驗證的問題。該發(fā)明方法要 求用戶的原始數(shù)據(jù)W密文形式存儲在云服務(wù)器,能夠有效確保數(shù)據(jù)的機(jī)密性。該方法利用 楠圓曲線數(shù)字簽名算法構(gòu)造了同態(tài)線性認(rèn)證器,使得用戶能夠有效地對多個數(shù)據(jù)文件的完 整性同時進(jìn)行驗證,并且設(shè)計的方法所需要的計算量和存儲量都是輕量級的,能夠有效應(yīng) 用于無線通信網(wǎng)絡(luò)環(huán)境。
【具體實施方式】
[0029] 下面詳細(xì)描述本發(fā)明的技術(shù)方案:
[0030] 本發(fā)明的步驟分為四個部分:
[0031] 系統(tǒng)初始化:系統(tǒng)生成一個基于楠圓曲線的數(shù)字簽名算法的公私鑰對,一個用于 對文件名稱進(jìn)行輕量級簽名的公私鑰對,W及一個安全的輕量級對稱加密算法。
[0032] 簽名產(chǎn)生步驟:用戶分別對多個數(shù)據(jù)文件利用改進(jìn)的楠圓曲線簽名算法化CDSA) 計算其數(shù)字簽名,同時分別對不同的數(shù)據(jù)文件名稱進(jìn)行數(shù)字簽名產(chǎn)生數(shù)據(jù)文件標(biāo)簽,并將 運多個敏感數(shù)據(jù)文件進(jìn)行對稱加密。最后將運些簽名W及數(shù)據(jù)文件的密文發(fā)送到云服務(wù) 器,并在本地客戶端刪除運些數(shù)據(jù)。
[0033] 審計證明產(chǎn)生步驟:為了能夠同時批量審計外包存儲在云服務(wù)器上的數(shù)據(jù)完整 性,云用戶產(chǎn)生一個審計挑戰(zhàn)信息,并將挑戰(zhàn)信息發(fā)送給云服務(wù)器。云服務(wù)器收到挑戰(zhàn)信息 后,產(chǎn)生運多個數(shù)據(jù)文件的聚合的審計證明響應(yīng)信息,并返回給云用戶。
[0034] 審計證明驗證步驟:用戶得到運個聚合的審計證明響應(yīng)信息之后,利用楠圓曲線 簽名算法的私鑰W及對稱加密算法的秘密密鑰檢驗運個聚合的審計證明響應(yīng)信息的合法 性。
[0035] W下給出一個具體實例說明:
[0036] 基于楠圓曲線的云存儲數(shù)據(jù)批量自審計方法包括W下基本步驟:Setup,SigGen, ProofGen,VerifyProof。
[0037] 系統(tǒng)初始化:包括W下=個子步驟:
[0038] (1)定義一個在Zp(模P剩余類環(huán),是大素數(shù))上的楠圓曲線E,設(shè)置V是E上階為素數(shù) q的一個點,V是循環(huán)群<¥〉的生成元,且在<V>上的離散對數(shù)問題是難處理的。
[0039] (2)設(shè)置一個安全的輕量級對稱加密算法矜,秘密密鑰為t。同時系統(tǒng)產(chǎn)生一個輕量 級數(shù)字簽名算法的公私鑰對(巧k,rsk)。
[0040] (3)從Zq中隨機(jī)選取一個值Z,并計算實際簽名公鑰U = ZV,生成基于楠圓曲線的簽 名算法的公鑰K= {q,E,V,叫,簽名私鑰為Z。
[0041] 簽名產(chǎn)生步驟:云用戶同時產(chǎn)生L個數(shù)據(jù)文件及其名稱的數(shù)字簽名,W及產(chǎn)生運L 個數(shù)據(jù)文件的密文如下:
[00創(chuàng) (1)對于1《1,給定每一個數(shù)據(jù)文件巧=1.么,在2,...,點J,文件名稱為namei,為 了確保數(shù)據(jù)文件名稱的唯一性,云用戶調(diào)用一個輕量級數(shù)字簽名算法計算文件名稱namei 的標(biāo)簽0i = namei| ISSigrsk(namei)。
[0043] (2)云用戶利用楠圓曲線簽名算法的私鑰Z產(chǎn)生每一個數(shù)據(jù)塊fi,I的簽名如下:選 取隨機(jī)數(shù)ki,iGZq,計算Wi,i = ki,iV= (ui,i, vi,i),;ri,i = ui,迎odq,Ti,i= (;ri,iki,i+fi,iZ)modq, 產(chǎn)生每一個fi,i得數(shù)字簽名81,1=(胖1,1,化1,11,1)(/ = 1,-,,0,定義運些簽名的集合為 ,0'=咕Jl£ 兇。
[0044] (3)對于給定每一個數(shù)據(jù)文件巧= W.i、乂,2,…,/;J,為了確保云用戶數(shù)據(jù) 文件的機(jī)密性,云用戶調(diào)用對稱加密算法刮尋每一個數(shù)據(jù)塊fi,i加密為.+0(?wn卻U), 運樣巧=蝸,而,…,瓜)力幡為巧'=說,尤,…,尤)。
[0045] 最后,云用戶發(fā)送(巧',畔,巧^給云服務(wù)器,并在客戶本地端刪除運些信息。
[0046] 審計證明產(chǎn)生步驟:云用戶首先取回每一個數(shù)據(jù)文件標(biāo)簽01,并驗證簽名SSigrsk (namei)的有效性。當(dāng)驗證完標(biāo)簽的有效性之后,云用戶產(chǎn)生審計挑戰(zhàn)信息如下:從 y,2,…,/沖隨機(jī)選取一個含有C個元素的子集C=Ui,…,1。};對于每一個jEC,用戶產(chǎn)生 相應(yīng)的隨機(jī)值Vj,最后云用戶發(fā)送Chal = {j,v山K給云服務(wù)器。
[0047] 一旦接收到審計挑戰(zhàn)信息Chal = {.i,Vi } IEG,云服務(wù)器計算組合信息塊
A及聚合簽名
。最后,云服務(wù)器發(fā)送 (W, T, {f 1} 1《城,{namei}兇SSL)作為審計證明響應(yīng)信息給云用戶。
[004引審計證明驗證步驟:云用戶按照如下步驟驗證審計證明響應(yīng)信息的有效性:
[0049] (1)對于每一個計莫
[0050] (2)驗證方若
I否成立。
[0化11 宙HHJF巧胳證討趙TF疏化加下.
[00£
[00£
[0054]本發(fā)明提供基于楠圓曲線的云存儲數(shù)據(jù)批量自審計方法。該審計方法利用基于楠 圓曲線構(gòu)造的聚合數(shù)字簽名算法設(shè)計而成,其安全性基于離散對數(shù)困難問題,能夠確保惡 意云服務(wù)器不能產(chǎn)生偽造的審計證明響應(yīng)信息欺騙云用戶通過審計驗證過程。在審計方法 中,云用戶利用楠圓曲線聚合數(shù)字簽名構(gòu)造同態(tài)線性認(rèn)器,可W同時批量審計多個數(shù)據(jù)文 件的完整性,并且審計過程只需計算有限的倍點運算就能成功驗證存儲在云服務(wù)器上的數(shù) 據(jù)完整性,并不需要計算開銷較大的模指數(shù)運算和雙線性對運算,特別適用于需要輕量級 計算量,存儲空間有限,需要高效實現(xiàn)無線傳感器網(wǎng)絡(luò)應(yīng)用場景。
【主權(quán)項】
1. 一種用于云存儲數(shù)據(jù)的批量自審計方法,其特征在于,包括W下步驟: a. 系統(tǒng)初始化,具體包括:生成一個基于楠圓曲線的數(shù)字簽名算法的公私鑰對,一個用 于對文件名稱進(jìn)行輕量級簽名的簽名算法的公私鑰對,W及一個輕量級對稱加密算法: b. 簽名產(chǎn)生,具體包括: bl.利用步驟a中所述的基于楠圓曲線的數(shù)字簽名算法,分別計算多個數(shù)據(jù)文件的數(shù)字 簽名; b2.利用步驟a中所述的簽名算法分別對不同的數(shù)據(jù)文件名稱進(jìn)行數(shù)字簽名產(chǎn)生數(shù)據(jù) 文件標(biāo)簽,并利用步驟a中所述的對稱加密算法將每一個數(shù)據(jù)文件進(jìn)行加密獲得數(shù)據(jù)文件 的密文; b3.將步驟bl中產(chǎn)生的數(shù)字簽名和步驟b2中產(chǎn)生的數(shù)據(jù)文件標(biāo)簽及數(shù)據(jù)文件的密文發(fā) 送到云服務(wù)器; C.審計證明產(chǎn)生,具體包括: cl.云用戶產(chǎn)生審計挑戰(zhàn)信息發(fā)送到云服務(wù)器; c2.云服務(wù)器根據(jù)審計挑戰(zhàn)信息產(chǎn)生多個數(shù)據(jù)文件的聚合的審計證明響應(yīng)信息,并將 聚合的審計證明響應(yīng)信息返回給云用戶; d.審計證明驗證,具體包括:云用戶根據(jù)接收到的聚合的審計證明響應(yīng)信息,利用基于 楠圓曲線的數(shù)字簽名算法W及對稱加密算法檢驗聚合的審計證明響應(yīng)信息的合法性。2. 根據(jù)權(quán)利要求1所述的一種用于云存儲數(shù)據(jù)的批量自審計方法,其特征在于,所述步 驟a的具體方法為: al.定義一個在Zp(模P剩余類環(huán))上的楠圓曲線E,設(shè)置V是E上階為素數(shù)q的一個點,V是 循環(huán)群<V>的生成元,P是大素數(shù); a2.設(shè)置一個安全的輕量級對稱加密算法巧,秘密密鑰為t;同時產(chǎn)生一個輕量級數(shù)字簽 名算法的公私鑰對(巧k,rsk); a3.從Zq中隨機(jī)選取一個值Z,生成基于楠圓曲線的簽名算法的公鑰K = {q,E,V,U},U = zV為簽名公鑰,簽名私鑰為z,Zq是模q剩余類環(huán)。3. 根據(jù)權(quán)利要求2所述的一種用于云存儲數(shù)據(jù)的批量自審計方法,其特征在于,所述步 驟b的具體方法為: 對于設(shè)每一個數(shù)據(jù)文件為巧= {./;,,,./;.;,···,瓜l·文件名稱為namei,則: 步驟bl具體為:選取隨機(jī)數(shù)ki,ieZq,分別產(chǎn)生每一個數(shù)據(jù)文件fi,i的數(shù)字簽名為: 么'=所心.0. = V..,《),其中,Wl,i = kl,iV=(山,i,vl,i),;rl,i = 山,imodq,τl,i=(;rl, 化,i+fi,iZ)modq,定義運些簽名的集合為Ω/ =巧JkK,; 步驟b2具體為:調(diào)用一個輕量級數(shù)字簽名算法計算文件名稱namei的標(biāo)簽〇i = namei I SSig"k(namei);調(diào)用對稱加密算法將每一個數(shù)據(jù)塊fi,i加密為=而+從如誠 ?,ΙΙ句,即 將巧'二(乂,1,乂,2,···,乂,?)加醬為巧=?乂,1,乂,2,···,也); 步驟b3具體為:云用戶發(fā)送?·?;',Ω,,巧;給云服務(wù)器。4. 根據(jù)權(quán)利要求3所述的一種用于云存儲數(shù)據(jù)的批量自審計方法,其特征在于,所述步 驟cl中云用戶產(chǎn)生的審計挑戰(zhàn)信息為:從{],2,~,〇中隨機(jī)選取一個含有(3個元素的子集〔= {1ι,···,1。};對于每一個jec,用戶產(chǎn)生相應(yīng)的隨機(jī)值vj,最后云用戶發(fā)送審計挑戰(zhàn)信息 chal = {j,Vj}樹給云服務(wù)器; 則步驟c2中:云服務(wù)器計算組合信息巧最后,云服務(wù)器發(fā)送(W,T,{fih《城,{nameiK《KL)作為審計證明響應(yīng)信息給云用戶。5.根據(jù)權(quán)利要求4所述的一種用于云存儲數(shù)據(jù)的批量自審計方法,其特征在于,所述步 驟d的具體方法為: 驗證方程是否成立,若成立,則審計證明響應(yīng)信息有效,若不成立,則審 計證明響應(yīng)信息無效;其中
【文檔編號】H04L9/32GK105978695SQ201610286449
【公開日】2016年9月28日
【申請日】2016年5月3日
【發(fā)明人】張曉均, 張新鵬, 唐亮, 何小曼
【申請人】西南石油大學(xué)