摘 要:?jiǎn)斡脩艨伤阉骷用芊桨笩o(wú)法滿足多用戶環(huán)境下的數(shù)據(jù)分享需求,且存在密鑰泄露風(fēng)險(xiǎn)。為此,利用(t,N)秘密共享結(jié)構(gòu)和區(qū)塊鏈技術(shù)構(gòu)造了一個(gè)基于身份的多用戶可搜索加密方案。該方案解決了多用戶環(huán)境下的數(shù)據(jù)分享和機(jī)密性問(wèn)題,實(shí)現(xiàn)了用戶的動(dòng)態(tài)更新功能,防止了密鑰泄露,并在標(biāo)準(zhǔn)模型下被證明能夠抵御關(guān)鍵字猜測(cè)攻擊。與五個(gè)現(xiàn)存的相關(guān)方案相比較,該方案在計(jì)算成本上表現(xiàn)出效率優(yōu)勢(shì),適用于云儲(chǔ)存環(huán)境下的數(shù)據(jù)分享。
關(guān)鍵詞:區(qū)塊鏈; 可搜索加密; 基于身份加密; 多用戶; 用戶的動(dòng)態(tài)更新; 標(biāo)準(zhǔn)模型
中圖分類號(hào):TP309"" 文獻(xiàn)標(biāo)志碼:A
文章編號(hào):1001-3695(2025)03-006-0693-07
doi:10.19734/j.issn.1001-3695.2024.05.0247
Blockchain-based dynamic multi-user searchable encryption scheme
Liu Huana,b, Deng Lunzhia,b, Li Binhana,b
(a.School of Mathematical Sciences, b.Key Laboratory of Information amp; Computing Science Guizhou Province, Guizhou Normal University, Guiyang 550025, China)
Abstract:Single-user searchable encryption scheme cannot meet the data sharing requirements in a multi-user environment and poses the risk of key leakage. Accordingly, this paper constructed an identity-based multi-user searchable encryption scheme by leveraging the(t,N) secret sharing structure and blockchain technology. The scheme resolved the issues of data sharing and confidentiality in a multi-user environment, realized dynamic user updates, prevents key leakage, and was proven to be resistant to keyword guessing attacks under the standard model. Compared with five existing related schemes, the scheme demonstrates efficiency advantages in terms of computational costs. It is suitable for data sharing in cloud storage environments.
Key words:blockchain; searchable encryption; identity-based cryptography; multi-user; dynamic user updates; standard model
0 引言
區(qū)塊鏈?zhǔn)且粋€(gè)點(diǎn)對(duì)點(diǎn)的分布式賬本,在工作時(shí)由所有節(jié)點(diǎn)共同參與,如果區(qū)塊鏈中的某些節(jié)點(diǎn)受到惡意攻擊,其余節(jié)點(diǎn)仍然可以正常運(yùn)行。區(qū)塊鏈憑借其去中心化、不可竄改、分布式、可追溯性等特點(diǎn)被廣泛應(yīng)用[1] 。區(qū)塊鏈技術(shù)通過(guò)智能合約等功能實(shí)現(xiàn)數(shù)據(jù)的安全共享和傳輸,為數(shù)據(jù)的隱私性和機(jī)密性保護(hù)提供了更多可能性,在數(shù)據(jù)隱私保護(hù)方面起到重要作用。
云計(jì)算[2]可以存儲(chǔ)和計(jì)算大量數(shù)據(jù),極大地便利了人們的生活,近年來(lái)越來(lái)越多的人選擇用云計(jì)算處理數(shù)據(jù)。將數(shù)據(jù)上傳到云端(CS),傳輸過(guò)程中數(shù)據(jù)可能會(huì)泄露,數(shù)據(jù)的隱私性和機(jī)密性得不到保證[3]。為此,原始數(shù)據(jù)擁有者(DS)可以將數(shù)據(jù)加密之后再上傳到CS,這樣數(shù)據(jù)的機(jī)密性和隱私性可以得到保證,顯然,對(duì)加密技術(shù)的研究很重要。Deng等人[4]提出了一個(gè)無(wú)證書的加密方案,該方案在標(biāo)準(zhǔn)模型下被證明是安全的。所有數(shù)據(jù)被加密之后,如果用戶(DU)想要下載特定的數(shù)據(jù),則需要下載全部數(shù)據(jù),進(jìn)行解密后得到自己所需要的文件,這明顯增加了計(jì)算成本。
Song等人[5]提出了一個(gè)基于流密碼的可搜索加密方案,該方案實(shí)現(xiàn)了密文檢索功能,用戶不需要下載所有文件,可以直接下載自己所需要的特定文件。但該方案需要DS和DU提前協(xié)商好密鑰,這一類方案被稱為對(duì)稱的可搜索加密方案,存在密鑰分發(fā)的問(wèn)題。為了解決此問(wèn)題,Boneh等人[6]提出了一個(gè)公鑰可搜索加密方案。該方案不需要DS和DU提前協(xié)商好密鑰,DS可以利用DU的公鑰去加密文件,但是在這個(gè)方案中,DU需要通過(guò)安全通道發(fā)送陷門到CS。Lu等人[7]提出了一個(gè)基于公鑰基礎(chǔ)設(shè)施(PKI)的可搜索加密方案,免去了必須通過(guò)安全通道發(fā)送陷門的問(wèn)題,在實(shí)際應(yīng)用中更加廣泛,并且該方案的安全性是在標(biāo)準(zhǔn)模型下被證明的。Qin等人[8]也提出了一個(gè)基于PKI的公鑰可搜索加密方案,該方案可以捕捉(外部)選擇多密文攻擊和(內(nèi)部)關(guān)鍵字猜測(cè)攻擊。然而PKI公鑰加密方案存在證書管理的問(wèn)題。Abdalla等人[9]提出了一個(gè)基于身份的可搜索加密方案。在該方案中,有一個(gè)密鑰生成中心為DS和DU生成私鑰,解決了證書管理的問(wèn)題。Liu等人[10]提出了一個(gè)基于身份的雙陷阱門加密與關(guān)鍵字搜索,授權(quán)機(jī)構(gòu)可以使用一種特殊的方式產(chǎn)生多個(gè)陷門,從而允許授權(quán)機(jī)構(gòu)搜索任何身份的加密數(shù)據(jù)。牛淑芬等人[11]提出了一個(gè)基于身份的公鑰可搜索加密方案,在有效解決了郵件通信系統(tǒng)中對(duì)加密郵件檢索問(wèn)題的同時(shí),也降低了公鑰可搜索加密方案中復(fù)雜的密鑰管理開銷。
Huang等人[12]提出了可認(rèn)證的可搜索加密概念,在可認(rèn)證的可搜索加密方案的架構(gòu)中,DS的密鑰用于生成關(guān)鍵字密文,因此不掌握密鑰的內(nèi)部攻擊者無(wú)法生成相應(yīng)的關(guān)鍵字密文。該類方案可以抵御關(guān)鍵詞內(nèi)部猜測(cè)攻擊。He等人[13]提出了一個(gè)無(wú)證書的可認(rèn)證方案,該方案雖然可以抵御關(guān)鍵字猜測(cè)攻擊,但是其安全性在隨機(jī)預(yù)言模型下被證明,安全性可靠度不高。Hu等人[14]提出了一個(gè)安全有效的可認(rèn)證可搜索加密方案,該方案不僅可以抵御關(guān)鍵字猜測(cè)攻擊,而且其安全性是在安全模型下被證明的,安全性可靠度相比于隨機(jī)預(yù)言模型更高。
Curtmola等人[15]提出了一個(gè)多用戶環(huán)境下的可搜索加密方案,該方案結(jié)合了廣播加密技術(shù),但是該方案在密鑰撤銷過(guò)程中,需要的計(jì)算成本較大。Li等人[16]提出了一種使用關(guān)鍵詞搜索協(xié)議的多用戶數(shù)據(jù)共享新分層結(jié)構(gòu),該結(jié)構(gòu)使用身份簽名生成公鑰樹,而不是二叉樹結(jié)構(gòu)。隨著區(qū)塊鏈的快速發(fā)展,可搜索加密技術(shù)也與區(qū)塊鏈相結(jié)合起來(lái)了。杜瑞忠等人[17]提出了一個(gè)基于區(qū)塊鏈的可搜索加密方案,該方案實(shí)現(xiàn)了一對(duì)多的可搜索加密,但是該方案的構(gòu)造過(guò)程使用了花費(fèi)較高的雙線性配對(duì)運(yùn)算以及哈希到點(diǎn)運(yùn)算。Guan等人[18]提出了一個(gè)在電子商務(wù)環(huán)境下基于區(qū)塊鏈的加密數(shù)據(jù)分布式安全搜索方案。通過(guò)整合區(qū)塊鏈和可搜索加密模型,敏感數(shù)據(jù)可以得到有效保護(hù)。多用戶的可搜索加密方案[19, 20]被提出,這些方案在隨機(jī)預(yù)言模型下被證明是安全的,在現(xiàn)實(shí)情境中可能是不安全的。
為了保證數(shù)據(jù)的機(jī)密性,數(shù)據(jù)擁有者將數(shù)據(jù)加密之后上傳到云端進(jìn)行存儲(chǔ)。數(shù)據(jù)只有在用戶間進(jìn)行分享才能實(shí)現(xiàn)數(shù)據(jù)的價(jià)值。如何從存儲(chǔ)在云端的眾多加密數(shù)據(jù)中高效地找到需要的數(shù)據(jù)是一個(gè)亟須解決的問(wèn)題。具有關(guān)鍵詞的可搜索加密正好可以解決這個(gè)問(wèn)題:數(shù)據(jù)擁有者為數(shù)據(jù)文件選擇一個(gè)關(guān)鍵字進(jìn)行加密以生成關(guān)鍵字密文,并與數(shù)據(jù)密文一起發(fā)送到云端存儲(chǔ),搜索者選擇一個(gè)關(guān)鍵字生成陷門并發(fā)送到云端,只有當(dāng)關(guān)鍵字陷門與關(guān)鍵字密文匹配成功,云端才會(huì)將相應(yīng)的數(shù)據(jù)密文發(fā)送給搜索者。在單用戶的可搜索加密方案[14]中,只有一個(gè)用戶可以對(duì)數(shù)據(jù)密文進(jìn)行檢索,這顯然降低了數(shù)據(jù)分享的效率。多用戶的可搜索加密方案則允許多個(gè)用戶可以對(duì)數(shù)據(jù)密文進(jìn)行檢索,顯然更符合現(xiàn)實(shí)需求。
已有的多用戶可搜索加密還存在三個(gè)明顯的缺點(diǎn):
a)在文獻(xiàn)[21,22]中,搜索授權(quán)用戶集合是固定的,即具有搜索權(quán)限的用戶是恒定不變的。但是在實(shí)際應(yīng)用中,隨著現(xiàn)實(shí)情境的變化,數(shù)據(jù)擁有者可能希望對(duì)授權(quán)用戶集合進(jìn)行調(diào)整,即增加或撤銷用戶。
b)在文獻(xiàn)[17]中,方案使用大量的哈希到點(diǎn)的運(yùn)算,而哈希到點(diǎn)運(yùn)算消費(fèi)比較高昂,因此這些方案需要較高的計(jì)算成本,不適合低消耗的設(shè)備。
c)在文獻(xiàn)[13,23]中,數(shù)據(jù)擁有者使用單一的密鑰來(lái)加密共享數(shù)據(jù),用戶密鑰的丟失可能會(huì)導(dǎo)致密鑰泄露,對(duì)共享數(shù)據(jù)的機(jī)密性和用戶的隱私性存在威脅。
如何在保證數(shù)據(jù)機(jī)密性的同時(shí),高效地實(shí)現(xiàn)數(shù)據(jù)在多用戶間的分享是云存儲(chǔ)面臨的一個(gè)挑戰(zhàn)。針對(duì)上面提到的問(wèn)題,本文提出了一個(gè)新的可搜索加密方案,該方案具有以下貢獻(xiàn):
a)本文提出了一個(gè)基于區(qū)塊鏈的多用戶可搜索加密方案。給予多個(gè)用戶搜索密文的權(quán)限,實(shí)現(xiàn)了數(shù)據(jù)的有效共享,并且該方案實(shí)現(xiàn)了用戶的動(dòng)態(tài)更新。
b)利用區(qū)塊鏈的輔助技術(shù),由多個(gè)區(qū)塊鏈節(jié)點(diǎn)聯(lián)合生成共享的時(shí)間密鑰,解決了單個(gè)密鑰泄露的潛在問(wèn)題。本文采取的是完全隨機(jī)的時(shí)間密鑰生成方式,實(shí)現(xiàn)了前向安全性。同時(shí)該方案被證明具有密文的不可區(qū)分性和陷門的不可區(qū)分性。
c)在消耗成本方面,本文與五個(gè)現(xiàn)存的多用戶可搜索加密方案進(jìn)行了對(duì)比,對(duì)比文獻(xiàn)[20~22,24],本文方案避免使用了哈希到點(diǎn)運(yùn)算,極大地提升了其效率,對(duì)比文獻(xiàn)[23],本文方案總體上具有優(yōu)勢(shì)。
1 預(yù)備知識(shí)
本章將介紹一些預(yù)備知識(shí),給出了一些符號(hào)的物理含義,具體如表1所示。
5 性能分析
本章進(jìn)行了方案的效率分析和性能比較,為了保證對(duì)比的公正性和真實(shí)性,參考了文獻(xiàn)[27]提供的第三方數(shù)據(jù),其在Intel Core i5-4210U處理器(3 MB緩存,1.7 GHz)和4 GB RAM內(nèi)存的Ubuntu 16.04平板電腦上模擬了基本加密操作,并記錄了這些操作運(yùn)行所需要的時(shí)間。不同操作的具體時(shí)間如表2所示。選擇n作為授權(quán)用戶的數(shù)量,在實(shí)驗(yàn)時(shí)分別取值為1,20,40,60,80,100。具體的對(duì)比結(jié)果如表3、4和圖2~4所示。本文評(píng)估計(jì)算成本的方法是通過(guò)計(jì)算執(zhí)行一次算法所需的主要加密操作運(yùn)行時(shí)間的總和。比如,本文方案執(zhí)行一次密文生成算法,數(shù)據(jù)擁有者需要進(jìn)行(n+2)次哈希運(yùn)算以及2次群G上的標(biāo)量乘法運(yùn)算,即(n+2)Xh+2Xsm(ms);執(zhí)行一次陷門的生成算法,數(shù)據(jù)用戶需要進(jìn)行3次哈希運(yùn)算和1次群G上的標(biāo)量乘法運(yùn)算,即3Xh+Xsm (ms);執(zhí)行1次測(cè)試算法,CS需要進(jìn)行1次雙線性配對(duì)運(yùn)算,2次哈希運(yùn)算和2次群G上的標(biāo)量乘法運(yùn)算,即Xb+2Xh+2Xsm(ms)。
表3中“×”代表不符合條件,“√”代表符合條件。通過(guò)表3可以得到,本文方案相對(duì)于文獻(xiàn)[21~23]增加了用戶動(dòng)態(tài)更新的功能,并且只有本文方案是在標(biāo)準(zhǔn)模型下證明的方案的安全性。由表4可知,本文方案在關(guān)鍵字密文的生成過(guò)程中,計(jì)算成本和等候授權(quán)用戶的數(shù)量成線性關(guān)系,但是在陷門和測(cè)試階段的運(yùn)算成本均與用戶的數(shù)量無(wú)關(guān)。由圖2可以明顯得到,在所取值的數(shù)據(jù)用戶數(shù)量范圍內(nèi),本文方案相對(duì)于其他五個(gè)方案在密文的生成過(guò)程中計(jì)算成本更低。雖然本文方案密文的計(jì)算成本與用戶數(shù)量呈線性關(guān)系,但變化的趨勢(shì)十分緩慢。由圖3可以直觀得到,本文方案在陷門生成階段的計(jì)算成本是最低的。由圖4可知,本文方案在測(cè)試階段的計(jì)算成本要比文獻(xiàn)[23]高一些,但是相較于其他四個(gè)方案來(lái)說(shuō)是最低的,并且在其他方面,本文方案比文獻(xiàn)[23]更有優(yōu)勢(shì),總體來(lái)說(shuō)本文方案具有效率優(yōu)勢(shì)。
6 結(jié)束語(yǔ)
本文結(jié)合區(qū)塊鏈技術(shù),提出了一個(gè)動(dòng)態(tài)的多用戶可搜索加密方案,該方案在實(shí)現(xiàn)用戶動(dòng)態(tài)調(diào)整的同時(shí),防止了單個(gè)密鑰泄露的問(wèn)題。將本文方案與五個(gè)現(xiàn)存的多用戶方案進(jìn)行比較,本文方案在標(biāo)準(zhǔn)模型下被證明具有密文的不可區(qū)分性和陷門的不可區(qū)分性,安全性比在隨機(jī)預(yù)言模型下證明的要更加可靠。通過(guò)比較計(jì)算成本,本文方案相對(duì)于其他五個(gè)方案總體上存在效率優(yōu)勢(shì)。下一步將繼續(xù)探究如何在方案的構(gòu)造過(guò)程中不使用配對(duì)運(yùn)算,將其效率進(jìn)一步改善,并且設(shè)計(jì)安全高效的多用戶多關(guān)鍵字可搜索加密方案。
參考文獻(xiàn):
[1]王天柱, 李凌, 彭志辰, 等. 基于區(qū)塊鏈的可信制造供應(yīng)鏈溯源框架設(shè)計(jì)[J]. 計(jì)算機(jī)應(yīng)用研究, 2024,41(5): 1308-1313. (Wang Tianzhu, Li Ling, Peng Zhichen, et al. Design of blockchain-based trusted manufacturing supply chain traceability framework[J]. Application Research of Computers, 2024, 41(5): 1308-1313.)
[2]Antonopoulos N, Gillam L. Cloud computing[M]. London: Springer, 2010: 101-125.
[3]Esposito C, Castiglione A, Martini B, et al. Cloud manufacturing: security, privacy, and forensic concerns[J]. IEEE Cloud Computing, 2016, 3(4): 16-22.
[4]Deng Lunzhi, Feng Shuai, Chen Zhiwei. Certificateless encryption scheme with provable security in the standard model suitable for mobile devices[J]. Information Sciences: an International Journal, 2022, 613: 228-238.
[5]Song D X, Wagner D, Perrig A. Practical techniques for searches on encrypted data[C]//Proc of IEEE Symposium on Security and Privacy. Piscataway, NJ: IEEE Press, 2000: 44-55.
[6]Boneh D, Di Crescenzo G, Ostrovsky R, et al. Public key encryption with keyword search[C]//Proc of Advances in Cryptology-EUROCRYPT. Berlin: Springer, 2004: 506-522.
[7]Lu Yang, Wang Gang, Li Jiguo. Keyword guessing attacks on a public key encryption with keyword search scheme without random oracle and its improvement[J]. Information Sciences, 2019, 479: 270-276.
[8]Qin Baodong, Chen Yu, Huang Qiong, et al. Public-key authenticated encryption with keyword search revisited: security model and constructions[J]. Information Sciences, 2020, 516: 515-528.
[9]Abdalla M, Bellare M, Catalano D, et al. Searchable encryption revisited: consistency properties, relation to anonymous IBE, and extensions[J]. Journal of Cryptology, 2008, 21(3): 350-391.
[10]Liu Jianan, Lai Junzuo, Huang Xinyi. Dual trapdoor identity-based encryption with keyword search[J]. Soft Computing, 2017, 21(10): 2599-2607.
[11]牛淑芬, 謝亞亞, 楊平平, 等. 加密郵件系統(tǒng)中基于身份的可搜索加密方案[J]. 電子與信息學(xué)報(bào), 2020, 42(7): 1803-1810. (Niu Shufen, Xie Yaya, Yang Pingping, et al. Identity-based searchable encryption scheme for encrypted email system[J]. Journal of Electronics amp; Information Technology, 2020, 42(7): 1803-1810.)
[12]Huang Qiong, Li Hongbo. An efficient public-key searchable encryption scheme secure against inside keyword guessing attacks[J]. Information Sciences, 2017, 403: 1-14.
[13]He Debiao, Ma Mimi, Zeadally S, et al. Certificateless public key authenticated encryption with keyword search for industrial Internet of Things[J]. IEEE Trans on Industrial Informatics, 2018, 14(8): 3618-3627.
[14]Hu Zhenyu, Deng Lunzhi, Wu Yaying, et al. Secure and efficient certificateless searchable authenticated encryption scheme without random oracle for industrial Internet of Things[J]. IEEE Systems Journal, 2023, 17(1): 1304-1315.
[15]Curtmola R, Garay J, Kamara S, et al. Searchable symmetric encryption: improved definitions and efficient constructions[J]. Journal of Computer Security, 2011, 19(5): 895-934.
[16]Li Hongbo, Huang Qiong, Susilo W. A secure cloud data sharing protocol for enterprise supporting hierarchical keyword search[J]. IEEE Trans on Dependable and Secure Computing, 2022, 19(3): 1532-1543.
[17]杜瑞忠, 譚艾倫, 田俊峰. 基于區(qū)塊鏈的公鑰可搜索加密方案[J]. 通信學(xué)報(bào), 2020, 41(4): 114-122. (Du Ruizhong, Tan Ailun, Tian Junfeng. Public key searchable encryption scheme based on blockchain[J]. Journal on Communications, 2020, 41(4): 114-122.)
[18]Guan Zhitao, Wang Naiyu, Fan Xunfeng, et al. Achieving secure search over encrypted data for e-commerce: a blockchain approach[J]. ACM Trans on Internet Technology, 2020, 21(1): 12.
[19]楊小東, 田甜, 王嘉琪, 等. 基于云邊協(xié)同的無(wú)證書多用戶多關(guān)鍵字密文檢索方案[J]. 通信學(xué)報(bào), 2022, 43(5): 144-154. (Yang Xiaodong, Tian Tian, Wang Jiaqi, et al. Certificateless ciphertext retrieval scheme with multi-user and multi-keyword based on cloud-edge collaboration[J]. Journal on Communications, 2022, 43(5): 144-154.)
[20]張玉磊, 文龍, 王浩浩, 等. 多用戶環(huán)境下無(wú)證書認(rèn)證可搜索加密方案[J]. 電子與信息學(xué)報(bào), 2020, 42(5): 1094-1101. (Zhang Yulei, Wen Long, Wang Haohao, et al. Certificateless authentication searchable encryption scheme for multi-user[J]. Journal of Electronics amp; Information Technology, 2020, 42(5): 1094-1101.)
[21]鄭東, 朱天澤, 郭瑞. 基于區(qū)塊鏈的多用戶環(huán)境中公鑰可搜索加密方案[J]. 通信學(xué)報(bào), 2021, 42(10): 140-152. (Zheng Dong, Zhu Tianze, Guo Rui. Public key searchable encryption scheme in blockchain-enabled multi-user environment[J]. Journal on Communications, 2021, 42(10): 140-152.)
[22]Sun Lixue, Xu Chunxiang, Li Chuang, et al. Server-aided searchable encryption in multi-user setting[J]. Computer Communications, 2020, 164: 25-30.
[23]劉行, 明洋, 王晨豪, 等. 多接收者證書基可搜索加密方案[J]. 計(jì)算機(jī)學(xué)報(bào), 2024, 47(3): 544-557. (Liu Hang, Ming Yang, Wang Chenhao, et al. Multi-recipient certificate-based searchable encryption scheme[J]. Chinese Journal of Computers, 2024, 47(3): 544-557.)
[24]翟社平, 張瑞婷, 楊銳, 等. 多用戶環(huán)境的區(qū)塊鏈可搜索加密方案[J]. 西安電子科技大學(xué)學(xué)報(bào), 2024, 51(4): 151-169. (Zhai Sheping, Zhang Ruiting, Yang Rui, et al. Blockchain searchable encryption scheme for multi-user environment[J]. Journal of Xidian University, 2024, 51(4): 151-169.)
[25]Yang Ningbin, Tang Chunming, He Debiao. Blockchain-assisted secure data sharing protocol with a dynamic multiuser keyword search in IIoT[J]. IEEE Internet of Things Journal, 2023, 10(17): 15749-15760.
[26]Yu Jiguo, Liu Suhui, Xu Minghui, et al. An efficient revocable and searchable MA-ABE scheme with blockchain assistance for C-IoT[J]. IEEE Internet of Things Journal, 2023, 10(3): 2754-2766.
[27]Lu Yang, Li Jiguo, Wang Fen. Pairing-free certificate-based searchable encryption supporting privacy-preserving keyword search function for IIoTs[J]. IEEE Trans on Industrial Informatics, 2021, 17(4): 2696-2706.