基于混淆的公鑰可搜索加密方案
掃描二維碼
隨時(shí)隨地手機(jī)看文章
0 引 言
隨著云計(jì)算的快速發(fā)展,眾多用戶已經(jīng)把本地?cái)?shù)據(jù)放到云服務(wù)器上,以節(jié)省本地的存儲(chǔ)空間和系統(tǒng)維護(hù)費(fèi)用。但由于數(shù)據(jù)脫離了用戶的物理控制而存儲(chǔ)在云端,因此云端服務(wù)器管理員和非法用戶(如黑客等不具有訪問(wèn)權(quán)限的用戶)可以嘗試通過(guò)訪問(wèn)數(shù)據(jù)來(lái)獲取數(shù)據(jù)所包含的信息,造成數(shù)據(jù)信息和用戶隱私的泄露 [1]。為了保證云服務(wù)器上數(shù)據(jù)的私密性, 用戶先用已有的加密體制對(duì)數(shù)據(jù)加密后再放到云服務(wù)器上。加密后,用戶在云服務(wù)器中檢索特定文件的難度大大增加。如果把文件下載到本地解密后再檢索,會(huì)為用戶增加巨大的負(fù)擔(dān)。為了解決這一問(wèn)題,密碼學(xué)研究者提出可搜索加密技術(shù), 包括對(duì)稱可搜索加密方案 [2-9]、公鑰可搜索加密方案 [10-14] 及增加特殊功能的可搜索加密方案 [15-17]。1996 年,Goldreich O 和 Ostrovsky R 首次提出隱藏用戶訪問(wèn)模式的密文搜索技術(shù), 但是該技術(shù)要求用戶和服務(wù)器端進(jìn)行多重對(duì)數(shù)輪交互,這種方法在實(shí)際應(yīng)用中的效率并不高 [18]。2000 年,Song D, Wagner D 和 Perrig A 提出一種基于對(duì)稱算法的可搜索加密方案機(jī)制,用戶進(jìn)行搜索時(shí),生成關(guān)鍵字的密文發(fā)送給服務(wù)器, 通過(guò)將密文關(guān)鍵字和密文文件進(jìn)行掃描比對(duì),服務(wù)器可以確認(rèn)關(guān)鍵字是否存在 [2]。在此之后,許多研究者提出支持多個(gè)關(guān)鍵字搜索的對(duì)稱可搜索加密方案,模糊關(guān)鍵字搜索方案等。2004 年,Boneh D 等人提出基于公鑰密碼學(xué)算法的可搜索加密機(jī)制 [10],Golle 等人首次提出基于多關(guān)鍵字的可搜索加密概念 [11],為后來(lái)的研究者通過(guò)公鑰密碼學(xué)實(shí)現(xiàn)更加多樣的可搜索加密方案提供指導(dǎo)。
2001 年,Barak 等人開(kāi)始正式研究程序的混淆,希望能夠?qū)崿F(xiàn)輸入一個(gè)程序,輸出另一個(gè)程序并且該程序與原始程序功能相同卻可以隱藏原始程序工作方式的目標(biāo)。同時(shí)他們給出兩個(gè)混淆的概念,分別是虛擬黑盒混淆和不可區(qū)分混淆, 遺憾的是他們并未給出如何實(shí)現(xiàn) [19]。直到 2013 年,Gary 等人給出第一個(gè)對(duì)于一般程序的有效的不可區(qū)分混淆的候選方案。此方案由多線性拼圖困難塊(Multilinear Jigsaw Puzzle) 構(gòu)造 [20],并且給出如何利用不可區(qū)分混淆來(lái)構(gòu)造功能加密。隨后很多學(xué)者給出利用不可區(qū)分混淆構(gòu)造的其他方案。
公鑰可搜索加密方案更適用于多用戶體制以及不安全的網(wǎng)絡(luò)環(huán)境。該方案無(wú)需發(fā)送者和接收者事先協(xié)商密鑰,發(fā)送者可以直接使用對(duì)外公開(kāi)的公鑰對(duì)關(guān)鍵字加密。公鑰可搜索加密方案普遍利用雙線性對(duì)實(shí)現(xiàn),雖然雙線性對(duì)的特性使得一些支持更加復(fù)雜的搜索語(yǔ)句的方案得以發(fā)展,但雙線性對(duì)的計(jì)算開(kāi)銷(xiāo)較大。利用不可區(qū)分混淆構(gòu)造可搜索加密可以簡(jiǎn)化其算法,使方案更容易實(shí)現(xiàn)且更好地保護(hù)隱私。本文利用不可區(qū)分混淆器封裝一個(gè)安全的加密算法及用戶自己的私鑰作為用戶的公鑰,安全的不可區(qū)分混淆器可有效保證方案的安全。
1 基礎(chǔ)知識(shí)
1.1 不可區(qū)分混淆
作為一個(gè)新的密碼學(xué)原語(yǔ),不可區(qū)分混淆未來(lái)的應(yīng)用極具吸引力?;煜母拍钭畛鮼?lái)源于計(jì)算機(jī)學(xué)科,之后回歸到密碼學(xué)。不可區(qū)分混淆是密碼學(xué)中的一個(gè)重要工具,它可以更方便地實(shí)現(xiàn)算法,并具有很好的安全性。很多密碼學(xué)研究學(xué)者應(yīng)用不可區(qū)分混淆構(gòu)造了許多密碼學(xué)方案,包括版權(quán)和軟件的保護(hù)、私鑰加密模式轉(zhuǎn)換為公鑰加密模式、同態(tài)加密、證據(jù)加密、否定加密、功能加密、多方密鑰交換等 [21-25]。
定義 1(不可區(qū)分混淆器)對(duì)于一個(gè)電路族{Cλ},一個(gè)同類(lèi) PPT(概率多項(xiàng)式時(shí)間圖靈機(jī))i? 是不可區(qū)分混淆器, 如果滿足以下條件 [20] :
(1)對(duì)于所有輸入 x,安全參數(shù) λ ∈ N,C ∈ Cλ,則有
1.2 公鑰可搜索加密
公鑰可搜索加密方案中最具有代表性的是由 Boneh 等提出的 PEKS 方案 [10],此方案允許文件或信息的發(fā)送者是任何可以獲得公鑰的人,但是生成陷門(mén)值必須使用接收者的私鑰才能完成。
定義 2 一個(gè)非交互式公鑰加密搜索體制包含如下四個(gè)概率多項(xiàng)式時(shí)間算法 [10] :
(1)初始化(Setup):輸入安全參數(shù) λ,輸出密鑰 k 和公鑰 PK。
(2)公鑰可搜索加密(PEKS):輸入消息 m,關(guān)鍵字 w,利用公鑰生成關(guān)于 m 和 w 的密文 C。
(3)限門(mén)(Trapdoor):輸入密鑰 k 和一個(gè)關(guān)鍵字 w,計(jì)算關(guān)于 w 的陷門(mén)值 τ。
(4)測(cè)試(Test):輸入可搜索加密的一個(gè)陷門(mén)值 τ,如果滿足搜索關(guān)系則輸出密文文件 C,否則輸出終止符號(hào)。
2 方案構(gòu)造
2.1 初始化算法
輸入安全參數(shù) λ,系統(tǒng)生成 Bob 的私鑰 k 和公鑰 PK,公 鑰 PK 是對(duì)圖 1 Public Key 經(jīng)過(guò)混淆后生成的程序,PK= i? (Public Key)。
2.2 公鑰可搜索加密算法
Alice 調(diào)用 Bob 的公鑰 PK 對(duì)明文文件 m 和關(guān)鍵字 w 加密生成密文 C=(c,s1,s2)。Alice 將密文文件 C=(c,s1, s2)上傳到云服務(wù)器供 Bob 搜索。
2.3 陷門(mén)生成算法
Bob 利用帶密鑰的哈希函數(shù) H(k,· )對(duì)關(guān)鍵字 w 加密生成 τ。并將 τ 發(fā)送至云服務(wù)器,作為對(duì)關(guān)鍵字 w 的搜索請(qǐng)求 :
H(k,w)=τ
2.4 檢測(cè)算法
當(dāng)云服務(wù)器接收到 Bob 的搜索請(qǐng)求后,判斷 s s τ 是否成立。若成立,則云服務(wù)器返回 c 給 Bob,Bob 收到 c 后用自身私鑰 k 解密后得到明文文件 m ;若不成立,則輸出終止符號(hào)。
3 正確性及安全性分析
(2)文件密文的安全性 :文件的安全性依賴于加密算法的安全性,因此為文件加密時(shí)需選用安全的加密算法。
(3)混淆器的安全性 :文獻(xiàn) [20] 中就有對(duì)不可區(qū)分混淆器安全性的描述,一個(gè)安全的不可區(qū)分混淆器可以確?;煜髦械臄?shù)據(jù)不被泄漏。
(4)密鑰和陷門(mén)信息的安全性 :密鑰的安全性不僅依賴于密鑰管理,更依賴于不可區(qū)分混淆器的安全性,如果 i?是一個(gè)安全的不可區(qū)分混淆器,那么在混淆器中的密鑰就是安全的且不會(huì)被泄露。陷門(mén)信息通過(guò)使用帶密鑰的 Hash 函數(shù)對(duì)關(guān)鍵字加密生成。根據(jù) Hash 函數(shù)的性質(zhì),如果不知道密鑰 k 則無(wú)法生成陷門(mén)信息。
(5)關(guān)鍵字的安全性 :每一個(gè)關(guān)鍵字先由隨機(jī)數(shù) r1,r2完成隨機(jī)化,每加密一次都會(huì)換一次隨機(jī)數(shù),再經(jīng)過(guò)不可區(qū)分混淆器后攻擊者無(wú)法直接獲取關(guān)鍵字的任何信息。
4 結(jié) 語(yǔ)
目前的公鑰可搜索加密方案大多基于雙線性對(duì)實(shí)現(xiàn),由于其計(jì)算開(kāi)銷(xiāo)大、效率低、難以在實(shí)際中應(yīng)用,所以找到一種不用雙線性對(duì)且易實(shí)現(xiàn)的方案十分必要。本文利用不可區(qū)分混淆構(gòu)造公鑰可搜索加密方案以避免使用雙線性對(duì),使算法變得更簡(jiǎn)單。不足之處是目前不可區(qū)分混淆的效率并不高,此后應(yīng)將提高不可區(qū)分混淆的效率作為研究重點(diǎn)。