摘要:隨著云存儲(chǔ)與云計(jì)算的不斷發(fā)展,越來越多的組織和個(gè)人選擇將隱私數(shù)據(jù)存放到云環(huán)境中,這可能面臨不可信的云存儲(chǔ)服務(wù)器或者路由服務(wù)器竊取用戶隱私的問題??伤阉骷用芗夹g(shù)是一種用戶隱私保護(hù)技術(shù),它允許合法用戶在密文狀態(tài)下進(jìn)行搜索和查詢數(shù)據(jù)。可搜索加密技術(shù)包括對(duì)稱可搜索加密技術(shù)與非對(duì)稱可搜索加密技術(shù),也包括諸如同態(tài)加密技術(shù)與可搜索加密相結(jié)合的加密技術(shù)。在未來面對(duì)更復(fù)雜的應(yīng)用場(chǎng)景,諸如云環(huán)境、跨域、數(shù)據(jù)量的增大或者是查詢方式的改變,傳統(tǒng)的可搜索加密技術(shù)將面臨巨大挑戰(zhàn)。量子加密是基于量子不可克隆定理及量子不確定性原理等基礎(chǔ)物理知識(shí)而發(fā)展起來的,它在更好地保護(hù)用戶數(shù)據(jù)隱私的情況下也可以做到搜索與查詢。在原有可搜索加密技術(shù)的基礎(chǔ)之上,結(jié)合量子技術(shù),預(yù)測(cè)了量子可搜索加密技術(shù)的發(fā)展方向,并分析了量子技術(shù)的安全優(yōu)勢(shì)。
關(guān) 鍵 詞:可搜索加密; 對(duì)稱加密; 非對(duì)稱加密; 同態(tài)加密; 量子糾纏氧化鈷; 納米結(jié)構(gòu); 電容器; 電催化
中圖分類號(hào):TP319
文獻(xiàn)標(biāo)志碼:A
doi:10.3969/j.issn.1673-5862.2024.04.007
Research on quantization strategies for searchable encryption systems
CUI Song1,2, LYU Yan1,2, CHEN Lanfeng1,2
ZHU Hongfeng, SUN Yan, FAN Shuguo, SUN Ke, DONG Baiqiang, SUN Ziyi
(1. College of Physical Science and Technology, Shenyang Normal University, Shenyang 110034, China)(Software College, Shenyang Normal University, Shenyang 110034, China)
Abstract:With the continuous development of cloud storage and cloud computing, more and more organizations and individuals choose to store private data in the cloud environment. However, they may face the risk of untrusted cloud storage servers or routing servers stealing user privacy. Searchable encryption technology is a user privacy protection technology that allows legitimate users to search and query data in a ciphertext state. Searchable encryption techniques include symmetric searchable encryption and asymmetric searchable encryption, as well as homomorphic encryption techniques that can be combined with searchable encryption. In the future, facing more complex application scenarios such as cloud environments, cross domain, increasing data volume, or changes in query methods, traditional searchable encryption faces enormous challenges. Quantum encryption is developed based on fundamental physical knowledge such as quantum non cloning theorem and quantum uncertainty principle. It can also achieve search and query while better protecting user data privacy. This article, based on the existing searchable encryption technology and combined with quantum technology, envisions the development direction of quantum searchable encryption technology and analyzes the security advantages of quantum technology.
Key words:searchable encryption; symmetric encryption; asymmetric encryption; homomorphic encryption; quantum entanglement
可搜索加密(searchable encryption,SE)旨在將數(shù)據(jù)文件加密后存儲(chǔ)到云端,在密文狀態(tài)下對(duì)數(shù)據(jù)進(jìn)行搜索。用戶為節(jié)省自身的存儲(chǔ)資源開銷,選擇將數(shù)據(jù)存儲(chǔ)到云端,但是又不想服務(wù)器知道存儲(chǔ)數(shù)據(jù)內(nèi)容,因此需要對(duì)數(shù)據(jù)進(jìn)行加密后存儲(chǔ)。當(dāng)用戶需要對(duì)文件內(nèi)容進(jìn)行查詢時(shí),只有經(jīng)過認(rèn)證的合法用戶才可通過關(guān)鍵詞檢索對(duì)應(yīng)的密文數(shù)據(jù)[1]。
現(xiàn)如今有很多企業(yè)提供云存儲(chǔ)服務(wù),企業(yè)為了吸引更多的用戶會(huì)盡可能地保證數(shù)據(jù)的安全性。隨著云存儲(chǔ)服務(wù)用戶的增加,其數(shù)據(jù)本身的價(jià)值便會(huì)超過竊取數(shù)據(jù)造成損失的價(jià)值,于是云服務(wù)器可能會(huì)竊取用戶數(shù)據(jù)秘密[2-4]。傳統(tǒng)的可搜索加密中還可能面臨惡意服務(wù)器返回給用戶不完整或者不正確的信息,因此驗(yàn)證搜索結(jié)果是否正確也是需要解決的問題。
在量子力學(xué)中,當(dāng)幾個(gè)粒子在彼此相互作用之后,由于各個(gè)粒子所擁有的特性已成為整體性質(zhì),無法單獨(dú)描述各個(gè)粒子的性質(zhì),只能描述整體系統(tǒng)的性質(zhì),則稱這現(xiàn)象為量子糾纏[5]。自量子糾纏被發(fā)現(xiàn)以來,科學(xué)家們經(jīng)過努力,不斷發(fā)展了對(duì)量子糾纏態(tài)的制備、操作和測(cè)量等一系列技術(shù)。2022年諾貝爾物理學(xué)獎(jiǎng)由John Clauser,Alain Aspect,Anton Zeilinger三位科學(xué)家獲得,以表彰他們?cè)诹孔恿W(xué)中做出的杰出貢獻(xiàn)。依托量子基礎(chǔ)知識(shí)發(fā)展出來的量子技術(shù)有量子安全直接通信[6-7]、量子密鑰分發(fā)[8-9]、量子秘密共享[10-11]等。
依托量子技術(shù)的可搜索加密方案可以解決眾多數(shù)據(jù)應(yīng)用的需求[12]:
1)隱私保護(hù)的需求。個(gè)人數(shù)據(jù)牽涉?zhèn)€人隱私,企業(yè)和組織數(shù)據(jù)牽涉企業(yè)機(jī)密,敏感數(shù)據(jù)存放到云端時(shí),使用密文存儲(chǔ)可以有效地防止隱私泄露。量子技術(shù)使加密技術(shù)不再依賴傳統(tǒng)的復(fù)雜數(shù)學(xué)計(jì)算,可以更好地保護(hù)隱私。
2)安全搜索需求。傳統(tǒng)的數(shù)據(jù)加密和存儲(chǔ),需要將密文解密為明文才可進(jìn)行搜索操作,但這可能會(huì)造成隱私泄露。量子技術(shù)保證了協(xié)議面對(duì)強(qiáng)大計(jì)算能力的攻擊者時(shí),仍然可以保護(hù)數(shù)據(jù)隱私。
3)數(shù)據(jù)共享需求。云上的數(shù)據(jù)意味著接入互聯(lián)網(wǎng)的任何用戶在得到許可之后均可進(jìn)行訪問,但是傳統(tǒng)的通信技術(shù)在分享密鑰時(shí)往往可能造成密鑰泄露。當(dāng)多個(gè)用戶共同進(jìn)行搜索時(shí),基于量子技術(shù)的可搜索加密便可實(shí)現(xiàn)多用戶的數(shù)據(jù)共享和協(xié)作。
綜上所述,可搜索加密技術(shù)能夠有效解決密文數(shù)據(jù)的搜索操作需求,量子技術(shù)可以有效解決密鑰的安全問題和擴(kuò)大應(yīng)用場(chǎng)景。如圖1所示為本文整體架構(gòu)。隨著量子技術(shù)的成熟,量子計(jì)算的強(qiáng)大計(jì)算能力和傳統(tǒng)密碼學(xué)領(lǐng)域?qū)⒚媾R更多挑戰(zhàn),將傳統(tǒng)的可搜索加密技術(shù)和量子技術(shù)相結(jié)合會(huì)發(fā)展出更安全有前景的方案。
1 基本原理
1.1 量子資源
GHZ態(tài)是一種常見的量子糾纏態(tài)[13],N粒子構(gòu)成的GHZ態(tài)可描述如下:
在本文中用到的是三粒子的GHZ態(tài),最大糾纏三粒子GHZ態(tài)的具體形式可以表示為
將三粒子中的任何一個(gè)部分做求跡運(yùn)算,剩下的兩粒子態(tài)是2個(gè)單體間的直積態(tài),即糾纏態(tài)被破壞,這時(shí)測(cè)量后的粒子與塌縮后的粒子狀態(tài)是可推導(dǎo)的。本文利用量子糾纏的這種特性進(jìn)行編碼傳遞信息。
1.2 可搜索加密過程
可搜索加密一般分為以下幾個(gè)步驟:
1)數(shù)據(jù)加密。在進(jìn)行數(shù)據(jù)加密之前按情況需對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,這包括將數(shù)據(jù)歸類、劃分小塊、提取關(guān)鍵詞等。數(shù)據(jù)擁有者生成加密密鑰,使用加密密鑰將明文加密為密文,并將密文上傳至服務(wù)器,加密算法可為對(duì)稱或非對(duì)稱加密。
2)陷門生成。在可搜索加密中需要使用陷門進(jìn)行搜索。陷門是一個(gè)特殊的“機(jī)關(guān)”,可用于數(shù)據(jù)匹配,陷門還被要求不能泄露關(guān)鍵詞等隱私信息。
3)檢索過程。用戶需要搜索特定關(guān)鍵詞時(shí),將該關(guān)鍵詞生成特殊陷門。服務(wù)器將陷門作為輸入與索引結(jié)構(gòu)或關(guān)鍵詞等信息進(jìn)行匹配,以達(dá)到搜索的目的,這一過程服務(wù)器僅知道是否匹配成功,除此之外并不會(huì)獲得任何私有數(shù)據(jù)。
4)數(shù)據(jù)解密。在解密過程中需要用到密文搜索結(jié)果和解密密鑰,以此獲得明文的搜索結(jié)果。
可搜索加密在執(zhí)行搜索和查詢?nèi)蝿?wù)的同時(shí),要兼顧保護(hù)用戶隱私的功能??伤阉骷用艿年P(guān)鍵不僅僅在于如何高效的實(shí)現(xiàn)陷門生成和構(gòu)建索引進(jìn)而更好的完成搜索操作,安全的保護(hù)用戶數(shù)據(jù)隱私和抵御外部攻擊者同樣重要。本文將從基本概念和傳統(tǒng)的可搜索加密開始,進(jìn)而提出本文的量子改進(jìn)策略。2 基于對(duì)稱加密的量子可加密搜索
2.1 基本概念
對(duì)稱加密算法是一種常見的加密算法。雙方在通信之前,需要商定一個(gè)共享密鑰,彼此必須保密。若密鑰被未授權(quán)第三方或者云服務(wù)器獲取,便可以直接破解所有可獲得的密文,所以密鑰分發(fā)是一個(gè)明顯的弱點(diǎn)。密鑰在傳輸?shù)倪^程中可能會(huì)被竊取,在分發(fā)密鑰時(shí)和服務(wù)器端也容易出現(xiàn)密鑰泄露的問題,從而導(dǎo)致明文泄露。
2.2 基于對(duì)稱加密的可搜索加密
對(duì)稱可搜索加密要保證明文在密文狀態(tài)下進(jìn)行搜索匹配需要進(jìn)行嚴(yán)格的流程定義,傳統(tǒng)的對(duì)稱可搜索加密算法包含5個(gè)部分,即:
1)K=KeyGen(λ):輸入安全參數(shù)λ,生成加密密鑰K。
2)S=Encrypt(K,D):數(shù)據(jù)擁有者使用密鑰K將明文D生成密文S。
3)TW=Trapdoor(K,W):檢索用戶依據(jù)密鑰K和自己想要檢索的關(guān)鍵詞W生成陷門TW發(fā)送給服務(wù)器進(jìn)行檢索。
4)S(W)=Search(TW):服務(wù)器根據(jù)陷門TW與密文集合S進(jìn)行匹配查找,若匹配成功,將密文S(W)發(fā)送給用戶。
5)D=Decrypt(K,S(W)):用戶使用密鑰K將服務(wù)器返回的密文S(W)解密得到明文D。
在典型的對(duì)稱可搜索加密方案中,Song等[14]于2000年發(fā)表的論文中最早給出了具體的實(shí)現(xiàn)過程。其將明文文件劃分為“單詞”進(jìn)行加密,并在搜索匹配時(shí)也使用“關(guān)鍵詞”進(jìn)行搜索匹配,通過對(duì)整個(gè)密文文件的掃描和對(duì)密文單詞進(jìn)行對(duì)比就可確認(rèn)關(guān)鍵詞是否存在,從而返回搜索結(jié)果。在Song等[14]的研究成果中將整個(gè)流程分為數(shù)據(jù)處理和搜索數(shù)據(jù)2個(gè)過程進(jìn)行。
1)數(shù)據(jù)處理。數(shù)據(jù)被用于搜索之前需要進(jìn)行一系列操作,其目的是將數(shù)據(jù)轉(zhuǎn)化為適合加密和搜索的形式。在Song等[14]的方案中,數(shù)據(jù)的處理分為數(shù)據(jù)預(yù)加密和數(shù)據(jù)整理。(1)數(shù)據(jù)預(yù)加密。在文件分割過程中會(huì)出現(xiàn)相似單元的情況,為了加強(qiáng)文件的保密性,Song等[14]采取了雙重加密的策略。即便攻擊者能夠破譯加密密鑰K,預(yù)加密仍然能夠?yàn)槲募峁┮欢ǖ陌踩?,有效保護(hù)數(shù)據(jù)的機(jī)密性。(2)數(shù)據(jù)整理。在不可信的服務(wù)器存儲(chǔ)問題上,數(shù)據(jù)擁有者Alice需要在加密前將每個(gè)文件分割成單詞塊,然后這些單元被單獨(dú)加密。這使得服務(wù)器能夠在加密數(shù)據(jù)上執(zhí)行高效的關(guān)鍵詞搜索,而無須下載和解密整個(gè)文件。由于文件被分割并單獨(dú)加密,即使服務(wù)器被攻擊或存在安全漏洞,攻擊者也難以獲取文件的完整內(nèi)容,增強(qiáng)了數(shù)據(jù)的安全性,如圖2所示。
2)搜索數(shù)據(jù)。搜索數(shù)據(jù)需要關(guān)鍵詞對(duì)應(yīng)的陷門,有正確陷門的用戶能夠在密文中進(jìn)行有條件的搜索匹配,而不必解密整個(gè)數(shù)據(jù)集,通過密文數(shù)據(jù)集和陷門可以找到關(guān)鍵詞對(duì)應(yīng)的密文,Alice可以通過發(fā)回的密文和對(duì)應(yīng)陷門得到預(yù)加密的明文信息,通過對(duì)稱解密可得到明文。陷門只能由Alice生成,這是通過將密鑰與函數(shù)參數(shù)結(jié)合來實(shí)現(xiàn)的,只有知道這個(gè)密鑰的用戶才能生成正確的函數(shù)值,由于陷門只能由特定的用戶生成,因此它可以用于防止數(shù)據(jù)被篡改或偽造。
2.3 使用量子技術(shù)的改進(jìn)策略
2.3.1 面臨的威脅
傳統(tǒng)的對(duì)稱可搜索加密往往適用于單用戶模型,即用戶加密個(gè)人文件并將其存儲(chǔ)于不可信的外部服務(wù)器中,只有該用戶擁有檢索關(guān)鍵詞的能力,服務(wù)器無法獲取明文文件和關(guān)鍵詞信息。但是在實(shí)際中,往往會(huì)有信息共享需求的出現(xiàn),即數(shù)據(jù)擁有者將文件加密存儲(chǔ)到服務(wù)器后,其他用戶擁有向數(shù)據(jù)所有者申請(qǐng)搜索的能力。在前文提到的方案中,其應(yīng)用往往局限于單用戶模型,便可以不考慮密鑰在傳輸過程中可能出現(xiàn)的密鑰泄露問題。而當(dāng)密鑰需要傳輸時(shí),傳統(tǒng)的基于經(jīng)典信道的通信系統(tǒng)可能面對(duì)具有量子能力的攻擊者的威脅,密鑰一旦泄露便會(huì)造成隱私的泄露。
2.3.2 改進(jìn)策略
利用量子技術(shù)進(jìn)行密鑰分發(fā)以避免經(jīng)典的加密算法分發(fā)密鑰可能存在的密鑰泄露風(fēng)險(xiǎn)。量子密鑰分發(fā)在需要量子信道的同時(shí),同樣需要經(jīng)典信道的支持,以便傳遞正確的量子序列信息。本文提出使用量子資源分發(fā)密鑰,使用n粒子GHZ態(tài)序列作為糾纏資源進(jìn)行密鑰的分發(fā),可以實(shí)現(xiàn)多用戶進(jìn)行密鑰的共享。n粒子GHZ態(tài)的最大糾纏態(tài)可以表示為如下形式:
n粒子GHZ態(tài)3個(gè)粒子間的狀態(tài)是可推導(dǎo)的,即其中一個(gè)粒子進(jìn)行單比特測(cè)量之后,其余n-1個(gè)粒子的狀態(tài)也是相同的,可以借此進(jìn)行密鑰分配。當(dāng)數(shù)據(jù)擁有者手中的x個(gè)n粒子GHZ態(tài)序列被分發(fā)給n-1個(gè)用戶之后,便對(duì)x個(gè)量子比特逐一進(jìn)行單量子比特測(cè)量,若測(cè)量結(jié)果是|0〉,則其余用戶測(cè)量結(jié)果也是|0〉,反之亦然。數(shù)據(jù)擁有者和用戶可以借此經(jīng)由可信的經(jīng)典信道傳遞粒子序列位置信息,以此傳遞密鑰。量子信息在傳遞過程中可能遭受擁有量子能力的攻擊者的襲擊,即攻擊者可能實(shí)施截取-重發(fā)攻擊、糾纏測(cè)量攻擊等攻擊方式。由于生成的x個(gè)量子序列信息中摻雜有誘騙粒子,但是攻擊者在攻擊時(shí)無法獲知誘騙粒子的位置信息,便會(huì)將誘騙粒子當(dāng)作正常信息竊取。當(dāng)粒子傳遞完成之后,數(shù)據(jù)擁有者會(huì)公布誘騙粒子的位置信息,用戶經(jīng)過單比特測(cè)量之后發(fā)現(xiàn)錯(cuò)誤閾值超出上限便會(huì)得知通信過程受到攻擊,從而重新申請(qǐng)分發(fā)密鑰。過程如圖3所示。
量子密鑰分發(fā)的安全性和可行性已經(jīng)被證明[15],即在量子信道上通過通信達(dá)成密鑰協(xié)商,并且該證明是通用的,因此適用于已知的協(xié)議,如BB84和B92。此外,該文獻(xiàn)中還指出量子密鑰分發(fā)協(xié)議生成的密鑰可以安全地用于任何應(yīng)用。本改進(jìn)策略使用的是基于GHZ態(tài)的量子密鑰分發(fā),適用上述證明,其量子電路和實(shí)驗(yàn)均可以實(shí)現(xiàn)。
2.3.3 安全分析
使用量子資源分發(fā)密鑰,是利用量子力學(xué)的物理學(xué)特性來保證通信安全性。使用量子資源分發(fā)密鑰擁有一個(gè)無可替代的優(yōu)勢(shì):當(dāng)攻擊者試圖竊聽密碼時(shí),由于誘騙粒子的存在,通信的雙方會(huì)察覺。這種性質(zhì)基于量子力學(xué)的基本原理:任何對(duì)量子系統(tǒng)的測(cè)量都會(huì)對(duì)系統(tǒng)產(chǎn)生干擾。通過量子疊加態(tài)或量子糾纏態(tài)來傳輸信息,通信系統(tǒng)便可以檢測(cè)是否存在竊聽。由于量子計(jì)算機(jī)的發(fā)展,面對(duì)未來日益復(fù)雜的網(wǎng)絡(luò)環(huán)境和日益增強(qiáng)的計(jì)算能力,使用量子資源分發(fā)密鑰無疑可以更好地保證通信的安全性。而且,受限于單用戶模型的應(yīng)用場(chǎng)景,量子改進(jìn)策略在拓展了對(duì)稱搜索加密應(yīng)用場(chǎng)景的同時(shí)更好地保證了其安全性。
3 基于非對(duì)稱加密的量子可搜索加密
3.1 基本概念
1)非對(duì)稱加密。也叫公鑰加密(公共密鑰加密),指的是由對(duì)應(yīng)的一對(duì)唯一性的密鑰組成的加密方法。在公鑰加密體制中,公開的是公鑰,它用于加密數(shù)據(jù),沒有公開的是私鑰,用于解密數(shù)據(jù)。公鑰加密技術(shù)允許任何人對(duì)信息進(jìn)行加密處理后將它發(fā)送給另一個(gè)人,而不需要預(yù)先交換密鑰。
2)非對(duì)稱可搜索加密。即公鑰可搜索加密(public key encryption with keyword search,PEKS),是由Boneh等[16]于2004年提出。當(dāng)收件人Alice需要郵件服務(wù)器提供過濾郵件的服務(wù)時(shí),Alice希望立即得到含有相關(guān)關(guān)鍵詞的郵件,但又不希望暴露自己期望關(guān)鍵詞的明文。在這種情況下便需要用到可搜索加密,Alice將期望關(guān)鍵詞的陷門傳輸給服務(wù)器,服務(wù)器在接收到來自發(fā)件人Bob的密文郵件時(shí)會(huì)對(duì)關(guān)鍵詞進(jìn)行匹配,若含有特定關(guān)鍵詞便進(jìn)行“緊急”傳輸。
3.2 基于非對(duì)稱加密的可搜索加密
在可搜索加密體制下,往往要確保各種隱私信息的安全,需要引入密鑰生成算法生成密鑰、使用加密算法對(duì)明文進(jìn)行加密、通過陷門生成算法匹配關(guān)鍵詞等。非對(duì)稱可搜索加密過程包含:密鑰生成、明文加密、生成陷門、搜索匹配4個(gè)過程,過程如圖4和下列1)、2)、3)、4)所示,這一方案由Boneh等[16]給出。
1)KeyGen(s):接收方設(shè)置一個(gè)安全參數(shù)s,生成公鑰pk和私鑰sk。
2)PEKS(pk,W):發(fā)送方輸入公鑰pk和關(guān)鍵詞W生成密文S。
3)Trapdoor(sk,W):接收方輸入私鑰sk和關(guān)鍵詞W生成檢索需要的陷門TW。
4)Test(pk,S,TW):服務(wù)器輸入公鑰pk、關(guān)鍵詞密文S=PEKS(pk,W′)和陷門TW=Trapdoor(sk,W),當(dāng)W=W′時(shí)輸出“yes”,否則輸出“no”。
非對(duì)稱可搜索加密研究還包含一致性。一致性是指解密與加密互為逆過程,即存在隨機(jī)2個(gè)關(guān)鍵詞W1和W2,通過陷門生成算法生成TW1,由加密算法生成關(guān)鍵詞密文SW2,如果W1≠W2,則Pr[Test(pk,PEKS(pk,W1),Trapdoor(sk,W2))=1]=0。以往的研究中普遍認(rèn)為Boneh等[16]的研究只滿足計(jì)算一致性,缺少完美一致性和統(tǒng)計(jì)一致性。對(duì)于缺少的一致性,以往的研究中已經(jīng)給予了補(bǔ)充[17],在以往的研究綜述中也給予了簡(jiǎn)要說明[12,18-19]。
Boneh等[16]的方案存在一些缺點(diǎn):算法計(jì)算開銷大,效率低,不適合傳輸大批量加密數(shù)據(jù)的檢索查詢;陷門與關(guān)鍵詞嚴(yán)格綁定,攻擊者可以通過網(wǎng)絡(luò)攻擊獲取陷門信息;需要面對(duì)關(guān)鍵詞猜測(cè)攻擊等。隨著量子技術(shù)的發(fā)展,依靠復(fù)雜數(shù)學(xué)計(jì)算的經(jīng)典非對(duì)稱可搜索加密系統(tǒng)面臨巨大安全威脅,依靠物理特性的量子技術(shù)與非對(duì)稱可搜索加密相結(jié)合可以更好的促進(jìn)雙方共同發(fā)展。
3.3 使用量子技術(shù)的改進(jìn)策略
3.3.1 面臨威脅
關(guān)鍵詞猜測(cè)攻擊是一種針對(duì)密碼或加密密鑰的攻擊方法。用戶在選取關(guān)鍵詞時(shí)往往傾向于選擇對(duì)自己有意義的關(guān)鍵詞,會(huì)導(dǎo)致關(guān)鍵詞空間較小,從而給攻擊者提供遍歷關(guān)鍵詞空間的可能。外部攻擊者發(fā)出的攻擊稱為外部關(guān)鍵詞攻擊[19],由服務(wù)器發(fā)起的攻擊稱為內(nèi)部關(guān)鍵詞攻擊。內(nèi)部關(guān)鍵詞攻擊通常不會(huì)造成隱私信息被惡意攻擊者獲得,因?yàn)閮?nèi)部關(guān)鍵詞攻擊往往是服務(wù)器出于“好奇”而嘗試獲取秘密信息。
3.3.2 改進(jìn)策略
本文提出用量子技術(shù)改進(jìn)非對(duì)稱可搜索加密協(xié)議。明文中關(guān)鍵詞集合信息往往是比較小的,將關(guān)鍵詞信息量子化,配合量子糾纏技術(shù)可以完美地傳輸關(guān)鍵詞信息。改進(jìn)方案中,發(fā)送者的明文信息仍然使用公鑰加密技術(shù)加密,關(guān)鍵詞信息使用公鑰和量子技術(shù)共同傳輸。信息傳輸時(shí)不需要全部節(jié)點(diǎn)擁有量子能力,只需要部分節(jié)點(diǎn)擁有量子能力即可。具體描述如下所示,具體流程如圖5所示。
1)KeyGen(s):接收方設(shè)置一個(gè)安全參數(shù)s,生成公鑰pk和私鑰sk。
2)PEKS(pk,W):發(fā)送方輸入公鑰pk和關(guān)鍵詞W生成密文S,發(fā)送方生成雙量子糾纏態(tài)序列,Bell態(tài)|B〉=1/√ˉ2(|00〉+|11〉),并準(zhǔn)備單量子比特測(cè)量門。
3)QGate(M):接收方依據(jù)選擇的關(guān)鍵詞W0進(jìn)行加密處理,M=PEKS(sk,W0)。根據(jù)M進(jìn)行量子編碼生成量子測(cè)量門集合QG,并將量子測(cè)量門集合發(fā)送給服務(wù)器。
4)Test(QG,P1):發(fā)送方將雙粒子糾纏態(tài)序列中的一個(gè)粒子序列P1發(fā)送給服務(wù)器,自己保留粒子序列P2。發(fā)送方與服務(wù)器會(huì)協(xié)商進(jìn)行量子編碼傳遞關(guān)鍵詞信息,服務(wù)器利用QG測(cè)量P1獲取關(guān)鍵詞信息并進(jìn)行匹配,當(dāng)W0=W時(shí),輸出“yes”,否則輸出“no”
利用量子電路來實(shí)現(xiàn)Bell態(tài)的制備和測(cè)量,何業(yè)鋒等[20]已經(jīng)給出具體線路圖,在其方案中給出了基于Bell態(tài)的兩方互認(rèn)證半量子密鑰協(xié)商協(xié)議。該協(xié)議同樣是使用半量子能力的參與方進(jìn)行通信,降低了對(duì)參與方的要求,在實(shí)際應(yīng)用中便于協(xié)議的實(shí)現(xiàn)。
3.3.3 安全分析
加密后的關(guān)鍵詞信息使用量子技術(shù)傳輸,發(fā)送方需要擁有量子生成能力,而服務(wù)器方僅需要擁有單量子比特測(cè)量能力即可。在量子力學(xué)中,微觀粒子具有疊加態(tài),也就是說一個(gè)粒子可以同時(shí)處于2種狀態(tài)。量子的這種特性也就決定了量子疊加態(tài)無法被克隆復(fù)制,被觀測(cè)后塌縮,這就相當(dāng)于處于量子糾纏態(tài)中的粒子一旦被竊取便會(huì)立即被發(fā)現(xiàn)。當(dāng)面臨關(guān)鍵詞攻擊時(shí),挑戰(zhàn)者返回給攻擊者的不再是陷門,而是加密后的關(guān)鍵詞信息對(duì)應(yīng)的量子測(cè)量門。當(dāng)攻擊者仍然想通過遍歷推測(cè)關(guān)鍵詞信息時(shí),就算攻擊者擁有量子能力,因?yàn)閷?duì)應(yīng)的關(guān)鍵詞信息是加密后的密文,破解后也沒有意義。
4 基于同態(tài)加密的量子可搜索加密
4.1 基本概念
1)同態(tài)加密。同態(tài)加密是一種基于數(shù)學(xué)難題的計(jì)算復(fù)雜性理論的密碼學(xué)技術(shù),該技術(shù)允許在未解密的前提下,對(duì)密文進(jìn)行一些有意義的運(yùn)算,使得解密后的結(jié)果等同于對(duì)明文直接作運(yùn)算得出的結(jié)果。如圖6(a)所示,Alice擁有數(shù)據(jù)文件m和密鑰k,她將加密后的數(shù)據(jù)存儲(chǔ)到服務(wù)器中。當(dāng)Alice想要對(duì)數(shù)據(jù)進(jìn)行運(yùn)算時(shí),對(duì)服務(wù)器輸入操作f,服務(wù)器會(huì)將f和加密后的數(shù)據(jù)E(k,m)作為輸入進(jìn)行運(yùn)算,這種運(yùn)算相當(dāng)于直接在原文E(k,m)上進(jìn)行運(yùn)算。運(yùn)算完成之后,服務(wù)器會(huì)將輸出結(jié)果傳送給Alice,擁有解密密鑰的Alice對(duì)密文E(k,f(m))進(jìn)行解密后便可直接獲得計(jì)算結(jié)果。同態(tài)加密保證了在任何計(jì)算過程中,云服務(wù)器都無法獲得Alice的數(shù)據(jù)。若操作f只能由加法構(gòu)成,則稱為加同態(tài),如Paillier算法;若f只能由乘法構(gòu)成,則稱為乘同態(tài),如RSA算法;加同態(tài)和同態(tài)均稱為部分同態(tài)加密[21-22]。
2)基于同態(tài)加密的量子可搜索加密。數(shù)據(jù)擁有者Alice可以將數(shù)據(jù)的搜索權(quán)限發(fā)放給合法的用戶,(User),User的搜索過程相當(dāng)于直接作用在明文中進(jìn)行搜索,不合法的攻擊者無法進(jìn)行搜索。借助于量子糾纏技術(shù),對(duì)數(shù)據(jù)進(jìn)行加密和解密的密鑰可實(shí)現(xiàn)共享。如圖6(b)所示,服務(wù)器在運(yùn)算過程中無法解密,攻擊者由于無法獲得Alice的承認(rèn)也無法進(jìn)行搜索,合法的用戶進(jìn)行搜索后可根據(jù)k進(jìn)行解密。
4.2 基于同態(tài)加密的可搜索加密
在以往關(guān)于可搜索加密的研究中[22],出于對(duì)數(shù)據(jù)隱私的保護(hù)或者對(duì)密文搜索的輔助,往往都會(huì)引入一個(gè)可信的第三方幫助協(xié)議運(yùn)行??尚欧?wù)器往往會(huì)負(fù)責(zé)密鑰分發(fā)或者更新,以及協(xié)助用戶驗(yàn)證搜索結(jié)果等。在本節(jié)中介紹的協(xié)議可信第三方負(fù)責(zé)對(duì)搜索結(jié)果的檢驗(yàn)。本節(jié)方案的參與方有:數(shù)據(jù)擁有者(data owner,DO)、云服務(wù)器(sever,S)、數(shù)據(jù)用戶(data user,DU),可信第三方(trusted third party,TP)。DO負(fù)責(zé)生成加密密鑰以及一些數(shù)據(jù)的預(yù)處理,DU作為執(zhí)行搜索需求的用戶無須承擔(dān)多余的責(zé)任,S忠實(shí)地執(zhí)行自己承擔(dān)的存儲(chǔ)責(zé)任及搜索過程,TP則要負(fù)責(zé)生成陷門等一些工作,陷門指在某系統(tǒng)中滿足一定條件便會(huì)觸發(fā)的“機(jī)關(guān)”??伤阉骷用芟到y(tǒng)的構(gòu)建包括DO隨機(jī)生成密鑰、提取關(guān)鍵詞生成安全索引和加密文件。如圖7所示。
1)生成密鑰:DO的加密組件生成加密密鑰、公鑰ak和私鑰bk。
2)提取關(guān)鍵詞生成安全索引:DO將數(shù)據(jù)文件分塊,并將之編號(hào)Fi(0≤i≤n,n=max(File/Fsize)),在每塊文件中提取關(guān)鍵詞,每塊文件中關(guān)鍵詞可以有多個(gè),不同塊文件中關(guān)鍵詞可以重復(fù)。提取完關(guān)鍵詞后,將關(guān)鍵詞統(tǒng)一排序使用密鑰ak進(jìn)行加密生成安全索引wi=H(ak,Keywordi),0≤i≤m,m=KeywordGen(F)。具體的索引向量表見表1,表中文件塊F可以含有多個(gè)關(guān)鍵詞,若含有關(guān)鍵詞,則對(duì)應(yīng)為1,若無則為0。
3)加密文件:加密文件使用加密密鑰ak對(duì)分塊之后的文件分別進(jìn)行加密H(ak,F(xiàn)ile),其中塊號(hào)與對(duì)應(yīng)的文件存在索引I(F,H(ak,F(xiàn)ile))。
在檢索階段,用戶首先應(yīng)該獲取可以解密的密鑰bk和包含關(guān)鍵詞的安全索引文件wi(0≤i≤m)。用戶使用密鑰bk解密安全索引獲得關(guān)鍵詞Keyword,DU根據(jù)Keyword文檔選取想要檢索的關(guān)鍵詞安全索引發(fā)送給TP,由TP生成搜索令牌交由S進(jìn)行檢索。S在檢索過程中首先匹配安全索引w,根據(jù)索引向量表尋找對(duì)應(yīng)的文件塊,若文件塊中含有關(guān)鍵詞,則將其對(duì)應(yīng)的加密文件H(ak,F(xiàn)ile)逐一發(fā)送給TP。當(dāng)用戶可能面對(duì)多個(gè)搜索結(jié)果時(shí),選擇將計(jì)算的過程交給可信第三方。TP需要將加密的數(shù)據(jù)進(jìn)行計(jì)算,在計(jì)算之后直接將計(jì)算結(jié)果傳輸給DU,根據(jù)同態(tài)加密,H(ak,result)=H(ak,F(xiàn)ile0)+H(ak,F(xiàn)ile1)+…+H(ak,F(xiàn)ilen)。
在用戶解密階段,用戶根據(jù)掌握的信息key和H(bk,result)進(jìn)行同態(tài)解密,U只需從TP處得知密文狀態(tài)下的計(jì)算結(jié)果,根據(jù)同態(tài)加密算法,便可得知搜索結(jié)果result=File0+File1+L+Filen,其中包含搜索關(guān)鍵詞對(duì)應(yīng)的所有搜索結(jié)果計(jì)算后的明文。
4.3 使用量子技術(shù)的改進(jìn)策略
4.3.1 面臨威脅
前面在4.1節(jié)中討論了傳統(tǒng)的基于同態(tài)加密的可搜索加密,其中關(guān)于同態(tài)加密的應(yīng)用是對(duì)于搜索結(jié)果的運(yùn)算,可以替換成其他同態(tài)加密計(jì)算。但是這將面臨一個(gè)挑戰(zhàn),即密鑰的安全性如何保證。同態(tài)加密算法的安全性及其密文計(jì)算結(jié)果對(duì)應(yīng)明文的計(jì)算結(jié)果不變是依賴于密鑰無法暴露的。如圖7所示,DO產(chǎn)生密鑰用于對(duì)關(guān)鍵詞和文件的加密,盡管這一過程中不會(huì)將密鑰泄露。但是DU獲取關(guān)鍵詞和解密搜索結(jié)果仍然需要密鑰的輔助,這一過程需要傳輸密鑰,傳統(tǒng)信道傳輸密鑰很有可能會(huì)造成密鑰泄露。TP需要基于密鑰進(jìn)行同態(tài)計(jì)算,這一過程同樣需要傳輸密鑰,進(jìn)而造成密鑰泄露。
4.3.2 改進(jìn)策略
經(jīng)典信道通信的安全性依賴于復(fù)雜的數(shù)學(xué)計(jì)算,但隨著技術(shù)的提高,這些計(jì)算的難度降低,因此消息變得更容易被竊聽。與經(jīng)典信道通信不同,量子通信的安全性不依賴于復(fù)雜的數(shù)學(xué)計(jì)算,而是依賴于量子力學(xué)的基本知識(shí)和性質(zhì)。本文提出使用量子資源改造原有協(xié)議,使用三粒子GHZ態(tài)作為糾纏資源進(jìn)行密鑰的分發(fā)。三粒子GHZ態(tài)的最大糾纏態(tài)如公式(2)所示。
如圖8所示,糾纏資源由可信第三方產(chǎn)生,為盡可能減少數(shù)據(jù)擁有者和用戶的計(jì)算需求,將粒子生成集中交給可信第三方,密鑰bk由DO和DU通過經(jīng)典信道公布位置信息得出。
在相關(guān)研究中[21],同樣是基于可信服務(wù)器的方案,杜娟等[21]在IBM量子模擬器上構(gòu)建了可搜索加密的電路實(shí)現(xiàn)方案。該方案電路在模擬器上執(zhí)行了1 024次之后,搜索結(jié)果正確概率接近100%。本策略只需要用戶擁有半量子能力,量子的生成由可信第三方完成,使本策略擁有更好的適用性。
4.3.3 安全分析
作為可信第三方的TP會(huì)保留粒子序列P3,但是它并不會(huì)去竊取DO和DU的協(xié)商結(jié)果。保留粒子的目的是用于竊聽檢測(cè),TP在發(fā)送糾纏粒子時(shí)發(fā)送多于所需的糾纏粒子,選擇其中的部分粒子作為竊聽檢測(cè)粒子。假設(shè)存在攻擊者Eve竊取TP發(fā)送給DO的粒子序列P1,Eve在竊取粒子后將隨機(jī)生成的粒子序列發(fā)送給DO,TP進(jìn)行竊聽檢測(cè)后會(huì)公布規(guī)定位置上的測(cè)量結(jié)果,當(dāng)DO的測(cè)量錯(cuò)誤率超于閾值,而DU的測(cè)量錯(cuò)誤率正常時(shí),便會(huì)得知攻擊者攻擊的是哪條信道。這便是截獲-重發(fā)攻擊。DO檢測(cè)時(shí)同理。
5 結(jié)論
傳統(tǒng)的可搜索加密技術(shù)的研究主要在對(duì)稱加密技術(shù)與非對(duì)稱加密技術(shù)的基礎(chǔ)之上進(jìn)行,但也有基于其他加密技術(shù)的可搜索加密方案。本文首先對(duì)傳統(tǒng)的基于對(duì)稱加密技術(shù)的搜索加密方案機(jī)制進(jìn)行介紹;其次分析了提出的基于非對(duì)稱加密技術(shù)的可搜索加密方案,介紹了其可能面臨的攻擊威脅;最后介紹了基于同態(tài)加密的可搜索加密方案,同態(tài)加密技術(shù)與可搜索加密技術(shù)有諸多共同點(diǎn),其均是在密文上進(jìn)行計(jì)算。簡(jiǎn)而言之,可搜索加密技術(shù)允許用戶在保護(hù)數(shù)據(jù)隱私的同時(shí),仍然可以對(duì)加密數(shù)據(jù)進(jìn)行搜索和查詢??伤阉骷用芸赡苊媾R諸如不可信任的存儲(chǔ)服務(wù)器、不可信任的路由服務(wù)器等問題。但是通過量子加密技術(shù)可以很好地解決這類問題,文中已經(jīng)分別對(duì)前面提到的3種方案提出了量子改進(jìn)策略。
相信在未來的研究中,可搜索加密技術(shù)和量子技術(shù)可以更好的融合發(fā)展,促進(jìn)經(jīng)典密碼學(xué)和量子密碼學(xué)共同進(jìn)步,更好的保護(hù)用戶隱私。
致謝 沈陽帝鉑建筑工程有限公司智能降水自動(dòng)控制軟件平臺(tái)產(chǎn)品開發(fā)及實(shí)施項(xiàng)目(YF-DBZG-2023-003)的資助。
參考文獻(xiàn):
[1]張藍(lán)藍(lán),曹衛(wèi)東,王懷超.一種支持聯(lián)合搜索的多用戶動(dòng)態(tài)對(duì)稱可搜索加密方案[J].計(jì)算機(jī)研究與發(fā)展,2022,59(10):2309-2322.
[2]WANG F,WU Y J,HUANG F Y.Rio:A personal storage system in multi-device and cloud[J].J Super Comput,2020,76(4):2315-2338.
[3]BEDI R K,SINGH J,GUPTA S K.MWC:An efficient and secure multi-cloud storage approach to leverage augmentation of multi-cloud storage services on mobile devices using fog computing[J].J Super Comput,2019,75(6):3264-3287.
[4]JASSEM Y,ABDULLAH A.Enhancement of quantum key distribution protocol for data security in cloud environment[J].ICIC Exp Lett,2020,11(3):279-288.
[5]EINSTEIN A,PODOLSKY B,ROSEN N.Can quantum-mechanical description of physical reality be considered complete?[J].Phys Rev,1935,47:777-780.
[6]侯鑫.基于類GHZ態(tài)的受控量子安全直接通信協(xié)議的研究及仿真[D].北京:北京郵電大學(xué),2020.
[7]崔岑.基于三光子GHZ態(tài)與W態(tài)的量子信息傳送[D].錦州:渤海大學(xué),2020.
[8]BENNETT C H,BRASSARD G.Quantum cryptography:Public key distribution and coin tossing[J].Theor Comput Sci,2014,560:7-11.
[9]BENNETT C H.Quantum cryptography using any two nonorthogonal states[J].Phys Rev Lett,1992,68(21):3121-3124.
[10]SUN Y,ZHANG L,ZHU H F.Quantum private comparison protocol based on multiple GHZ states in cross-domain environment[J].Int J Theor Phys,2023,62(11):232.
[11]TANG J,MA S Y,LI Q.Universal hierarchical quantum information splitting schemes of an arbitrary multi-qubit state[J].Int J Theor Phys,2022,61(8):209.
[12]李亞紅,李哲瑋,李強(qiáng).可搜索加密研究綜述[J/OL].(2023-10-18)[2024-03-08].http://kns.cnki.net/kcms/detail/13.1097.TN.20231018.0903.002.html.
[13]付方博.量子秘密共享協(xié)議的研究[D].南昌:華東交通大學(xué),2017.
[14]SONG D X D,WAGNER D,PERRIG A.Practical techniques for searches on encrypted data[C]//Proceedings of the Proceeding 2000 IEEE Symposium on Security and Privacy Samp;P 2000.Berkeley:IEEE,2000:14-17.
[15]RENNER R.Security of quantum key distribution[J].Int J Quantum Inf,2008,6(1):1-127.
[16]BONEH D,DI CRESCENZO G,OSTROVSKY R,et al.Public key encryption with keyword search[C]//Proceedings of the Advances in Cryptology-EUROCRYPT 2004.Heidelberg:Springer,2004:506-522.
[17]ABDALLA M,BELLARE M,CATALANO D,et al.Searchable encryption revisited:Consistency properties,relation to anonymous IBE,and extensions[J].J Cytol,2008,21(3):350-391.
[18]李經(jīng)緯,賈春福,劉哲理,等.可搜索加密技術(shù)研究綜述[J].軟件學(xué)報(bào),2015,26(1):109-128.
[19]宋文帥,鄧淼磊,馬米米,等.可搜索公鑰加密研究進(jìn)展[J].計(jì)算機(jī)應(yīng)用,2023,43(3):794-803.
[20]何業(yè)鋒,梁熙媛,蔡明月.基于Bell態(tài)的兩方互認(rèn)證半量子密鑰協(xié)商協(xié)議[J/OL].(2024-01-12)[2024-05-08].http://kns.cnki.net/kcms/detail/31.1252.O4.20240111.0828.012.html.
[21]杜娟.基于量子同態(tài)加密的密文搜索研究[D].沈陽:沈陽航空航天大學(xué),2020.
[22]蔡玉涵,王靜宇.使用模糊關(guān)鍵字可搜索同態(tài)加密的區(qū)塊鏈隱私保護(hù)方案[J].小型微型計(jì)算機(jī)系統(tǒng),2022,43(11):2406-2413.
【責(zé)任編輯:孫 可】