System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內(nèi)的位置。 參數(shù)名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術(shù)實(shí)現(xiàn)步驟摘要】
本專利技術(shù)涉及云存儲安全,尤其涉及一種支持多用戶的動態(tài)可搜索加密方法、裝置及存儲介質(zhì)。
技術(shù)介紹
1、大數(shù)據(jù)時(shí)代,云存儲服務(wù)是解決海量數(shù)據(jù)存儲和管理的主要手段。近年來,數(shù)據(jù)泄露事件頻發(fā),云存儲的安全問題引起了廣泛關(guān)注。加密是防止數(shù)據(jù)泄露的主要技術(shù)手段,在當(dāng)前的云存儲系統(tǒng)中得到了廣泛部署。具體來說,用戶可以采用數(shù)據(jù)加密-外包存儲的模式來管理其數(shù)據(jù)。然而傳統(tǒng)的加密技術(shù)在保證數(shù)據(jù)機(jī)密性的同時(shí)也降低了數(shù)據(jù)的可用性。典型地,當(dāng)用戶需要基于關(guān)鍵詞檢索數(shù)據(jù)時(shí),需要下載完整的加密數(shù)據(jù)庫,完全解密,恢復(fù)出原始數(shù)據(jù)后,再基于關(guān)鍵詞進(jìn)行檢索。
2、可搜索加密技術(shù)是支持用戶對加密數(shù)據(jù)進(jìn)行關(guān)鍵詞檢索的密碼學(xué)原語。在此基礎(chǔ)之上,動態(tài)的可搜索加密技術(shù)還支持用戶根據(jù)關(guān)鍵詞對加密數(shù)據(jù)進(jìn)行更新(增加或刪除操作)。隨著技術(shù)的發(fā)展,根據(jù)應(yīng)用場景的不同,可搜索加密技術(shù)被分為對稱可搜索加密技術(shù)和公鑰可搜索加密技術(shù)。
3、對稱可搜索加密技術(shù)允許用戶使用自己的私鑰加密數(shù)據(jù)后外包存儲到云服務(wù)器。檢索時(shí),用戶使用自己的私鑰生成檢索陷門發(fā)送給云服務(wù)器。云服務(wù)器使用檢索陷門執(zhí)行數(shù)據(jù)庫檢索操作后,返回檢索結(jié)果給用戶。對稱可搜索加密方案通常基于偽隨機(jī)函數(shù),具有計(jì)算開銷小、速度快、高效的特點(diǎn)。但是,對稱可搜索加密技術(shù)僅適用于單用戶模型,即用戶加密數(shù)據(jù)并外包存儲到云服務(wù)器后,只允許用戶本身對加密數(shù)據(jù)進(jìn)行查詢。
4、適用于多用戶模型的可搜索加密技術(shù)被稱為公鑰可搜索加密技術(shù)。在公鑰可搜索加密中,根據(jù)用戶操作類型的不同,可將用戶分為讀者和寫者。其中,讀者擁有一對
5、現(xiàn)有技術(shù)中,如cn104780161b所公開的一種云存儲中支持多用戶的可搜索加密方法,利用對稱加密算法加密和解密文件;同時(shí)利用對稱可搜索加密方案加密關(guān)鍵字并生成陷門;利用給用戶添加訪問權(quán)限的方法,實(shí)現(xiàn)了對密文的直接檢索,效率和安全性都得到了提高;實(shí)現(xiàn)了對文件的訪問權(quán)限控制;實(shí)現(xiàn)了對用戶的動態(tài)添加和刪除。
6、但其仍然不能支持多個寫者客戶端基于關(guān)鍵詞動態(tài)更新加密數(shù)據(jù)庫,讀者客戶端也不能利用一個檢索令牌,高效地檢索多個寫者的加密數(shù)據(jù)庫。
技術(shù)實(shí)現(xiàn)思路
1、本專利技術(shù)的目的在于克服現(xiàn)有技術(shù)的不足,提供一種支持多用戶的動態(tài)可搜索加密方法、裝置及存儲介質(zhì)。
2、本專利技術(shù)的目的是通過以下技術(shù)方案來實(shí)現(xiàn)的:本專利技術(shù)設(shè)計(jì)了一種支持多用戶的動態(tài)可搜索加密方法,其目的在于,實(shí)現(xiàn)多用戶動態(tài)更新和高效檢索,即在多用戶模型下,支持多個寫者客戶端基于關(guān)鍵詞動態(tài)更新加密數(shù)據(jù)庫,且支持讀者客戶端利用一個檢索令牌,高效地檢索多個寫者的加密數(shù)據(jù)庫。
3、為實(shí)現(xiàn)上述目的,本專利技術(shù)利用密鑰聚合加密技術(shù)和云存儲技術(shù),構(gòu)建了一種支持多用戶的動態(tài)可搜索加密算法包括以下步驟:s1:系統(tǒng)初始化階段:根據(jù)安全參數(shù),生成系統(tǒng)的公共參數(shù)、讀者公私鑰;確定寫者數(shù)量n,為每一位寫者編號i,i∈[1,n],記編號為i的寫者為wi;wi根據(jù)系統(tǒng)公共參數(shù)生成其私鑰并初始化所需數(shù)據(jù)集合;s2:密文生成和上傳階段:所述寫者根據(jù)待更新的關(guān)鍵詞w,使用自己的私鑰生成可檢索密文和狀態(tài)密文,使用所述讀者公鑰生成檢索陷門密文,并將所有密文上傳至云服務(wù)器;s3:檢索令牌生成階段:所述讀者獲取當(dāng)前周期e,對于目標(biāo)寫者集合s和關(guān)鍵詞w,使用主私鑰派生出解密密鑰作為檢索令牌,并將集合s與檢索令牌發(fā)送給云服務(wù)器;s4:密文檢索階段:對于任意一位寫者,云服務(wù)器根據(jù)其狀態(tài)密文集合和檢索陷門密文集合,利用檢索令牌解密其檢索陷門密文和狀態(tài)密文,恢復(fù)出相應(yīng)的關(guān)鍵詞陷門和狀態(tài)并檢索其加密數(shù)據(jù)庫,進(jìn)一步對s中每一位寫者的加密數(shù)據(jù)庫進(jìn)行檢索;s5:陷門密文集合重構(gòu)階段:對于一個新的周期,寫者wi更新每一個檢索陷門密文,構(gòu)成陷門密文集合并上傳至云服務(wù)器。
4、優(yōu)選的,所述的s1:系統(tǒng)初始化階段,還包括以下步驟:s11:讀者r根據(jù)安全參數(shù)λ,確定系統(tǒng)公共參數(shù)、讀者公私鑰對,確定寫者數(shù)量n,為系統(tǒng)中每一位寫者編號i,i∈[1,n],記編號為i的寫者為wi;s12:r設(shè)置一個雙線性映射e:其中,為素?cái)?shù)p階加法循環(huán)群,生成元分別為g1,g2,為p階乘法循環(huán)群,生成元為gt;s13:r設(shè)置偽隨機(jī)函數(shù)f:{0,1}λ×{0,1}λ→{0,1}λ,偽隨機(jī)置換p:{0,1}λ×{0,1}λ←{0,1}λ,p-1為p的逆置換,設(shè)置密碼學(xué)哈希函數(shù)h:g:h,h1,h2:{0,1}*←{0,1}λ;s14:r隨機(jī)選取a←zp,記集合計(jì)算公開參數(shù)r隨機(jī)選取γ,θ←zp作為主私鑰msk=(γ,θ),并計(jì)算對應(yīng)的公鑰選擇一個對稱加密算法enc,dec為其對應(yīng)的解密算法;s15:r公布全局公開參數(shù):
5、
6、s16:wi隨機(jī)選取私鑰ski←{0,1}λ,初始化空集合sli,sti,eti,edbi,eci,其中,sti為操作狀態(tài)集合,sti[w]本地存儲記錄了wi最新的操作狀態(tài);sli為檢索標(biāo)志集合,sli[w]本地存儲,標(biāo)志了w是否生成了檢索陷門密文(sli[w]=0表示未生成檢索陷門密文,sli[w]=1表示已生成檢索陷門密文);eti檢索陷門密文集合,eci為狀態(tài)密文集合,edbi為加密數(shù)據(jù)庫,eti,eci,edbi均存儲于云服務(wù)器。
7、優(yōu)選的,所述的s2:密文生成和上傳階段,還包括以下步驟:s21:寫者獲取關(guān)鍵詞w的更新計(jì)數(shù)器t、狀態(tài)stt和所在周期et,計(jì)算關(guān)鍵詞陷門tw;s22:選取動態(tài)密鑰kt+1,利用偽隨機(jī)置換更新關(guān)鍵詞狀態(tài)為stt+1;s23:寫者計(jì)算出w的本次操作在數(shù)據(jù)庫中的索引add和密文val,(add,val)作為可檢索密文;s24:寫者計(jì)算狀態(tài)密文索引cin、周期密鑰ek、密文cval,(cin,cval)作為狀態(tài)密文;s25:寫者利用讀者公鑰加密(tw,ek)為c,c作為檢索陷門密文;s26:寫者將可檢索密文、狀態(tài)密文和檢索陷門密文上傳至云服務(wù)器。
8、優(yōu)選的,所述的s2密文生成和上傳階段由寫者進(jìn)行,具體包括以下步驟:
9、當(dāng)wi想要更新自己的數(shù)據(jù)庫edbi時(shí),獲取當(dāng)前周期e,對于待更新的關(guān)鍵詞w,文件標(biāo)識符id和更新操作符op(op=add表示增加操作,op=del表示刪除操作),寫者wi使用自己的私鑰ki生成可檢索密文、狀態(tài)密文和檢索陷門,使用讀者r的公鑰pk加密檢索陷門后,將可檢索密文、狀態(tài)密文和檢索陷門密文上傳至云服務(wù)器:s211:wi計(jì)算關(guān)鍵詞陷門tw←f(ki,h(w)),從操作狀態(tài)集合sti獲取狀態(tài)、更新計(jì)數(shù)器和周期(stt,t,et)←sti[w];若sti[w]=⊥,置更新計(jì)數(shù)器t=0,隨機(jī)選擇操作狀態(tài)stt本文檔來自技高網(wǎng)...
【技術(shù)保護(hù)點(diǎn)】
1.一種支持多用戶的動態(tài)可搜索加密方法,其特征在于:包括以下步驟:
2.根據(jù)權(quán)利要求1所述的支持多用戶的動態(tài)可搜索加密方法,其特征在于:所述的S1:系統(tǒng)初始化階段,還包括以下步驟:
3.根據(jù)權(quán)利要求1所述的支持多用戶的動態(tài)可搜索加密方法,其特征在于:所述的S2:密文生成和上傳階段,還包括以下步驟:
4.根據(jù)權(quán)利要求3所述的支持多用戶的動態(tài)可搜索加密方法,其特征在于:所述的S2密文生成和上傳階段由寫者進(jìn)行,具體包括以下步驟:
5.根據(jù)權(quán)利要求1所述的支持多用戶的動態(tài)可搜索加密方法,其特征在于:所述的S3:檢索令牌生成階段,由讀者進(jìn)行,具體包括以下步驟:
6.根據(jù)權(quán)利要求1所述的支持多用戶的動態(tài)可搜索加密方法,其特征在于:所述的S4:密文檢索階段,具體包括以下步驟:
7.根據(jù)權(quán)利要求6所述的支持多用戶的動態(tài)可搜索加密方法,其特征在于:所述的S4:密文檢索階段,還包括以下步驟:
8.根據(jù)權(quán)利要求1所述的支持多用戶的動態(tài)可搜索加密方法,其特征在于:所述的S5:陷門密文集合重構(gòu)階段,具體包括以下步驟:
>9.一種支持多用戶的動態(tài)可搜索加密裝置,其特征在于:包括:
10.一種計(jì)算機(jī)可讀存儲介質(zhì),其特征在于:所述的計(jì)算機(jī)可讀存儲介質(zhì)中存儲有計(jì)算機(jī)可執(zhí)行指令,所述計(jì)算機(jī)可執(zhí)行指令被處理器加載并執(zhí)行時(shí),實(shí)現(xiàn)如權(quán)利要求1-8任一項(xiàng)所述的支持多用戶的動態(tài)可搜索加密方法。
...【技術(shù)特征摘要】
1.一種支持多用戶的動態(tài)可搜索加密方法,其特征在于:包括以下步驟:
2.根據(jù)權(quán)利要求1所述的支持多用戶的動態(tài)可搜索加密方法,其特征在于:所述的s1:系統(tǒng)初始化階段,還包括以下步驟:
3.根據(jù)權(quán)利要求1所述的支持多用戶的動態(tài)可搜索加密方法,其特征在于:所述的s2:密文生成和上傳階段,還包括以下步驟:
4.根據(jù)權(quán)利要求3所述的支持多用戶的動態(tài)可搜索加密方法,其特征在于:所述的s2密文生成和上傳階段由寫者進(jìn)行,具體包括以下步驟:
5.根據(jù)權(quán)利要求1所述的支持多用戶的動態(tài)可搜索加密方法,其特征在于:所述的s3:檢索令牌生成階段,由讀者進(jìn)行,具體包括以下步驟:
6.根據(jù)權(quán)利要求1...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:張?jiān)?/a>,康寧,宋雅晴,何欣雨,
申請(專利權(quán))人:電子科技大學(xué)長三角研究院湖州,
類型:發(fā)明
國別省市:
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。