亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        一種結(jié)合可驗證數(shù)據(jù)庫的屬性可搜索加密方案*

        2022-11-14 01:50:14陳立全張林樾
        密碼學報 2022年5期
        關鍵詞:可驗證持有者使用者

        陳立全, 張林樾, 陳 垚

        1. 東南大學 網(wǎng)絡空間安全學院, 南京 210096

        2. 網(wǎng)絡通信與安全紫金山實驗室, 南京 211111

        1 引言

        隨著數(shù)字經(jīng)濟的發(fā)展, 數(shù)據(jù)已經(jīng)成為受國家、企業(yè)和個人重視的關鍵戰(zhàn)略性資源. 隨著數(shù)據(jù)規(guī)模的增加, 使用云存儲技術存儲數(shù)據(jù)資源, 可以有效減少在軟硬件部署與管理環(huán)節(jié)中的大量成本. 因此, 云存儲和云計算技術已經(jīng)成為業(yè)界學者研究的重點. 資源受限的客戶端難以處理復雜的計算任務, 越來越多的企業(yè)和個人選擇將大型加密數(shù)據(jù)庫外包到云存儲服務中. 但面對半可信的云存儲服務平臺, 數(shù)據(jù)持有者的數(shù)據(jù)可能面臨被篡改和替換的危險, 特別是在屬性可搜索加密方案中, 數(shù)據(jù)使用者屬性復雜, 在其對數(shù)據(jù)進行搜索時, 云存儲服務平臺可能只會將部分搜索結(jié)果返回給用戶, 這影響了搜索結(jié)果的完整性和正確性.

        目前, 云存儲系統(tǒng)的數(shù)據(jù)完整性及隱私安全是學術界的熱門話題. 2000 年Song 等人[1]首次提出可搜索加密技術這一概念, 可搜索加密技術是指在密文域中使用關鍵詞搜索, 得到相應的文件, 其特點是在有效減少本地存儲空間和通信消耗的同時, 也保證了數(shù)據(jù)的保密性, 傳統(tǒng)的可搜索加密技術主要分為對稱可搜索加密技術(symmetric searchable encryption, SSE)[1]和公鑰可搜索加密技術(public-key encryption with keyword search, PEKS)[2]. 數(shù)據(jù)持有者將數(shù)據(jù)加密后上傳至云平臺, 再構(gòu)建合適的搜索索引, 上傳至云平臺, 數(shù)據(jù)使用者在搜索數(shù)據(jù)時, 根據(jù)搜索的關鍵詞構(gòu)造相應的陷門, 將陷門上傳至云平臺, 云平臺執(zhí)行搜索操作, 將匹配到的文件發(fā)送給數(shù)據(jù)使用者, 數(shù)據(jù)使用者接收到密文文件后在本地進行解密, 最終得到想要的明文文件. 近年來, 許多學者也在關鍵詞檢索等方面提出了多種方案, 例如單關鍵詞檢索[3,4]、多關鍵詞檢索[5–7]、模糊關鍵詞檢索[6,8]等.

        近年來, 隨著對不同場景需求的不斷完善, 更多學者關注于數(shù)據(jù)及密鑰的安全性問題. 對稱可搜索加密技術加解密效率較高, 但需要一條安全信道完成密鑰傳輸, 而公鑰可搜索加密技術解決了這一問題, 傳統(tǒng)的公鑰加密方案中需要引入可信第三方作為授權(quán)機構(gòu)頒發(fā)公鑰證書,提高了方案的復雜度. 因此,Boneh等人在2001 年[9]提出了身份基(identity-based encryption, IBE) 可搜索加密方案, 與傳統(tǒng)公鑰加密方案相比, 身份基方案將用戶的唯一身份信息作為生成公鑰的依據(jù), 由私鑰生成中心(private key generator,PKG) 產(chǎn)生用戶的解密私鑰. 為了解決身份基可搜索加密方案在用戶身份模糊或敏感時無法使用的問題,Sahai 等人[10]在此基礎上提出了模糊身份基方案(fuzzy identity-based encryption, FIBE), 該方案將用戶身份分解為一系列模糊身份, 需要擁有d個模糊身份符合條件才能解密密文, 引入訪問結(jié)構(gòu)的概念并進一步提出了屬性基加密(attribute-based encryption, ABE), 而后其他學者也基于屬性基加密提出了多種可搜索加密方案[11–13].

        在實際應用場景中, 搜索結(jié)果的正確性和完整性同樣是非常重要的, 因此就有必要在可搜索加密方案中提供對搜索結(jié)果的驗證功能. Benabbas 等人提出了第一個實用的高階多項式函數(shù)可驗證計算方案, 同時提出了可驗證數(shù)據(jù)庫(verifiable database, VDB) 的概念及方案, 允許客戶端將大型數(shù)據(jù)庫外包給不受信任的云存儲服務器, 并在數(shù)據(jù)庫中進行檢索和更新, 服務器在給出搜索結(jié)果的同時還會提供搜索結(jié)果正確性的證明[14]. 不久后Sun 等人提出了一種高效的搜索結(jié)果驗證方法, 該方法允許用戶自行驗證結(jié)果正確性, 同時也支持委托給第三方可信機構(gòu)對搜索結(jié)果進行驗證[15]. 2020 年Liu 等人提出了一種多用戶可驗證的可搜索加密方案, 允許多個用戶執(zhí)行搜索操作, 而不僅僅局限于數(shù)據(jù)擁有者[16].

        在基于屬性的可搜索加密方案中, 設計者通常采用非對稱加密方式來實現(xiàn)屬性之間的區(qū)分. 使用非對稱加密算法會導致數(shù)據(jù)擁有者執(zhí)行更新操作時需要將完整的密文數(shù)據(jù)和索引重新上傳, 效率較低, 同時對于屬性的更新操作也十分困難; 另一方面, 公鑰可搜索加密方案通常在大型數(shù)據(jù)庫場景中難以應用. 關于可驗證性的問題, 當前具有可驗證性的方案中, 大部分方案驗證的是搜索結(jié)果的完整性, 這其中并不包括對數(shù)據(jù)庫的驗證, 從而無法保證服務器給出的搜索結(jié)果是在最新數(shù)據(jù)庫上計算得出的. 針對上述問題,本文提出了一種基于可驗證數(shù)據(jù)庫的屬性可搜索加密方案(attribute-based searchable encryption with verifiable database, VDB-ABSE), 在實現(xiàn)權(quán)限可控功能的同時, 可以確保數(shù)據(jù)的可驗證完整性, 使得可搜索加密方案能夠應對更復雜、安全性能要求更高的場景, 主要貢獻如下:

        (1) 使用對稱加密方式對文件進行加密, 使用字典樹結(jié)構(gòu)建立搜索索引, 在搜索過程中先對數(shù)據(jù)使用者的屬性進行識別, 然后在對應屬性的子樹中對關鍵詞進行搜索, 得到目標的文件標識符. 實現(xiàn)了屬性、關鍵詞與密文的高效動態(tài)更新, 并滿足前向安全和后向安全.

        (2) 構(gòu)造一個可驗證數(shù)據(jù)庫, 在搜索完成后, 服務器將搜索結(jié)果與證明一起發(fā)送給數(shù)據(jù)使用者, 使用者可以對搜索結(jié)果以及數(shù)據(jù)庫的完整性和正確性進行驗證. 提出了一種結(jié)合屬性權(quán)限與可驗證數(shù)據(jù)庫的屬性可搜索加密方案.

        2 VDB-ABSE 方案

        VDB-ABSE 方案主要的方案模型如圖1 所示, 主要有三個部分: 云存儲平臺、數(shù)據(jù)持有者以及數(shù)據(jù)使用者.

        圖1 VDB-ABSE 方案的系統(tǒng)模型Figure 1 VDB-ABSE scheme system model

        云存儲平臺作為系統(tǒng)的核心部分, 具有高效的數(shù)據(jù)計算功能, 可以存儲由數(shù)據(jù)持有者上傳的密文文件集合、文件索引以及哈希樹. 數(shù)據(jù)持有者上傳可供搜索的文件, 預先使用關鍵詞分詞技術生成每個文件對應的關鍵詞. 數(shù)據(jù)使用者首先需要從數(shù)據(jù)持有者處獲得一個屬性認證, 標志該用戶的屬性權(quán)限.

        2.1 VDB-ABSE 算法定義

        VDB-ABSE 方案涉及5 個多項式時間的算法, 分別是初始化算法、陷門生成算法、搜索算法、驗證算法和更新算法, 定義如下:

        (1) Setup(SK,PP,DB,AttributeList)→VDB,PK,S: 其中SK 為數(shù)據(jù)持有者的私鑰, 公共參數(shù)為PP, 所有文件構(gòu)成的數(shù)據(jù)庫DB, 以及數(shù)據(jù)使用者的屬性列表AttributeList. 輸出為一個構(gòu)建好的可驗證數(shù)據(jù)庫VDB、公開密鑰PK, 以及一些附加信息S.

        (2) TrapGen(UA,w,KT)→Tpw: 當數(shù)據(jù)使用者想要在VDB 中搜索關鍵詞為w的文件時, 將自己的屬性UA, 目標關鍵詞w, 以及索引密鑰KT作為該算法的輸入, 通過計算, 輸出為對應的搜索陷門Tpw.

        (3) Search(Tpw,UA,VDB,PK)→τ,D: 數(shù)據(jù)使用者將生成的陷門Tpw和自己的屬性UA 發(fā)送給云存儲服務, 云存儲服務器將Tpw、UA 以及可驗證數(shù)據(jù)庫VDB、公開密鑰PK 為輸入. 先進行關鍵詞搜索, 然后再對應屬性權(quán)限索引表, 將該屬性下對應的密文文件集DWwUA發(fā)送給數(shù)據(jù)使用者, 附上證明τ.

        (4) Verify(τ,DWwUA)→result: 數(shù)據(jù)使用者收到云存儲服務器返還的密文文件集DWwUA和證明τ后進行驗證, 分別驗證完整性和正確性. 如果通過驗證, 算法輸出result=0, 表示數(shù)據(jù)使用者接受搜索結(jié)果, 否則, 算法輸出result=1, 表示云存儲服務器的搜索結(jié)果不滿足完整性或正確性,數(shù)據(jù)使用者拒絕云存儲服務器的搜索結(jié)果.

        (5) Update(Utype,w,UAtrribute,Fw,SI)→SI′: 在VDB-ABSE 方案中, 更新算法涉及關鍵詞更新、文件更新以及屬性更新. 輸入為更新的種類參數(shù)Utype、關鍵詞w、屬性列表UAtrribute、文件Fw以及索引. 根據(jù)需要更新的類別, 更新索引, 最后將新的索引SI′作為輸出.

        在下面幾個小節(jié)中將對這些算法進行詳細說明, 并給出VDB-ABSE 方案的構(gòu)造方法. 本文中使用的符號及其定義如表1 所示.

        表1 本文中的符號及定義Table 1 Symbols and their definitions in this paper

        2.2 初始化算法

        密鑰生成: 數(shù)據(jù)持有者DO 生成密鑰集KF,KS,KA ∈{0,1}256、以及數(shù)據(jù)持有者DO 認證密鑰KDO∈{0,1}λ; 選取大素數(shù)q.

        參數(shù)選擇: 選擇抗強碰撞哈希函數(shù)H(*,K) :{0,1}λ×{0,1}*={0,1}τ, 其中K ∈{0,1}λ,τ為輸出比特位. 偽隨機函數(shù)F:{0,1}λ×{0,1}λ →{0,1}λ, 和兩個能夠使等式|G1| =|G2| =q成立的兩個群,g是G1的生成器.e是一個雙線性映射, hash 是G1中的安全哈希算法,P是[1,q] 范圍內(nèi)的排列.

        明文文件集加密: 加密明文文件集合F={f1,f2,··· ,fn},n為明文文件數(shù)量. 加密采用AES 加密方式, 密鑰使用KF. 加密得到密文集合C={c1,c2,··· ,cn}, 其中ci=AESenc(KF,fi).

        關鍵詞提取: 采用關鍵詞提取技術, 根據(jù)明文文件集合F={f1,f2,··· ,fn}, 提取出關鍵詞集合W={w1,w2,··· ,wm}.

        屬性權(quán)限劃分: 數(shù)據(jù)持有者根據(jù)實際情況將數(shù)據(jù)使用者根據(jù)屬性進行劃分得到屬性集合UAttribute.對每項屬性進行權(quán)限劃分, 計算UAi,wj條件下的可搜索的文件列表Fi,j, 即屬性UAi可以搜索的關鍵詞和關鍵詞所對應的文件, 構(gòu)成屬性表AttributeList, 如式(1)所示:

        構(gòu)建可驗證數(shù)據(jù)庫: 數(shù)據(jù)持有者DO 將需要上傳到云存儲平臺CSP 的文件先構(gòu)建成可驗證數(shù)據(jù)庫VDB. 數(shù)據(jù)庫DB 包含用戶屬性、文檔標識符和關鍵詞的對應關系, DBw表示關鍵詞為w的所有文檔標識符, DBUAw則表示DBw中屬性為UA 可以搜索的所有文檔標識符.

        在初始化階段的具體操作如下:

        (1) 數(shù)據(jù)持有者隨機選擇q個元素zi ∈RZp, 計算hi=gzi,hi,j=gzizj, 其中1≤i/=j ≤q, 然后生成密鑰y ∈RZp, 計算Y=gy. 公開參數(shù)為式(2):

        其中, 信息域為M=Zp.

        (2) 構(gòu)建索引結(jié)構(gòu), 明文字典樹構(gòu)建規(guī)則如下:

        (a) 根節(jié)點為空節(jié)點, 不存儲數(shù)據(jù), 僅作為搜索入口.

        (b) 深度為1 的節(jié)點存儲屬性, 用于在搜索時匹配用戶屬性.

        (c) 深度大于1 的節(jié)點代表關鍵詞中的字符, 從根節(jié)點到該子節(jié)點的路徑代表該節(jié)點對應的關鍵詞, 節(jié)點存儲以下數(shù)據(jù){μ,Np,DBs}. 其中,s代表該節(jié)點對應的字符串;μ代表s是否為關鍵詞,μ= 1 時代表s是關鍵詞; Np={np1,np2,··· ,npθ}代表該節(jié)點的子節(jié)點; DBs代表關鍵詞s的屬性權(quán)限索引表, 該表使用二維數(shù)組的結(jié)構(gòu)存儲屬性與文檔之間的訪問權(quán)限, 1代表該屬性有權(quán)限訪問相關文檔, 構(gòu)建的二維數(shù)組結(jié)構(gòu)如表2 所示.

        表2 二位數(shù)組DBs 的結(jié)構(gòu)圖Table 2 Structure of two-dimensional array DBs

        這個索引數(shù)組對于攻擊者和云存儲服務器沒有任何意義, 為了提高安全性和索引的隱私安全, 可以在索引中添加一些假關鍵詞和文檔標識符, 進一步防止攻擊者利用統(tǒng)計方法獲取文檔信息.

        圖2 給出了根據(jù)規(guī)則構(gòu)建出的索引結(jié)構(gòu)在明文狀態(tài)下的示例. 在本方案中, 將對字典樹加密生成搜索索引, 數(shù)據(jù)持有者通過密鑰KS,KA,KI, 對字典樹進行加密, 得到搜索索引SI, 并構(gòu)建樹MHT, 具體方法如下:

        圖2 索引結(jié)構(gòu)在明文狀態(tài)下的示例圖Figure 2 Sample of index structure in plaintext

        (a) 對于關鍵詞w, 假設其每個字符為αi, 計算βi=F(KI,αi), 數(shù)據(jù)持有者對于每個屬性下的關鍵詞w ∈W進行式(3)計算, 該映射關系記作SI[UA,stagw]=eUAw.

        (b) 數(shù)據(jù)持有者生成兩個布隆過濾器BFw和BFUA, 把所有關鍵詞標記stagw插入BFw, 以確保搜索的可驗證性, 把所有的屬性標記stagUA插入BFUA, 以保證用戶屬性的可驗證性.

        (c) 按照SI 的結(jié)構(gòu)構(gòu)建哈希樹,根節(jié)點為φ,其他每個葉子節(jié)點中存儲H(UA||w||m),其中w為SI 中相同路徑所表示的關鍵詞,m為屬性UA 可搜索該關鍵詞的文件標識符數(shù)量, 即DBUAw中1 的個數(shù).

        本方案公開密鑰為PK=(PP,Y,CR,C0,BFw,BFUA,MHT,φ), 上傳至云存儲服務器的輔助信息為S=(PP,aux,DB,SI), 數(shù)據(jù)持有者和數(shù)據(jù)使用者保存的私鑰為SK={y,KS,KI,KA,KF}.

        2.3 陷門生成算法

        數(shù)據(jù)使用者需要輸入自己的屬性UA, 以及需要搜索的關鍵詞集Target ={t1,t2,···}. 生成陷門的具體操作如下:

        (1) 首先生成屬性陷門, 計算stagUA=F(KA,UA).

        (2) 對于每個關鍵詞wi=(α1,α2,··· ,αl) 中每個字母αi, 進行以下計算βi=F(KI,αi)

        (3) 關鍵詞的陷門為stagw=β1||β2||···, 關鍵詞集的搜索陷門為式(5):

        (4) 最后, 輸出的搜索陷門是Tpw={stagUA,stagT}.

        數(shù)據(jù)使用者將搜索陷門Tpw發(fā)送給云存儲服務平臺對目標文件進行請求搜索.

        2.4 搜索算法

        云存儲平臺在收到搜索請求后, 將搜索陷門Tpw解析為stagUA和stagT, 然后進行搜索, 詳細的執(zhí)行過程如下:

        (1) 驗證數(shù)據(jù)使用者的屬性是否在可以搜索的權(quán)限范圍內(nèi), 首先檢查stagUA是否在BFUA內(nèi), 如果檢查結(jié)果是存在的則再進行下面的步驟, 若不在屬性范圍內(nèi), 則結(jié)束此次搜索請求.

        (2) 服務器收到搜索令牌后, 解析出來每個關鍵詞的搜索陷門stagw, 通過SI 執(zhí)行搜索, 得到結(jié)果R= SI[UA,stagw]. 云存儲服務器將R和對應的所有加密文件一起發(fā)送給數(shù)據(jù)使用者. 數(shù)據(jù)使用者在接收到R之后, 計算Ke=F(KS,w), 解密DEC(Ke,R)=UA||DBUAw, 得到對應關鍵詞所對應的文件標識符.

        2.5 驗證算法

        驗證階段的工作主要分為三部分,先是驗證搜索屬性的正確性,接著驗證搜索結(jié)果的完整性,即DBUAw的完整性, 再解析證明τ. 具體步驟如下:

        (1) 當搜索結(jié)果為空時, 數(shù)據(jù)使用者檢查BFw(stagw) = 1 是否成立, 如果不成立, 則接受搜索結(jié)果,過程終止.

        (2) 當結(jié)果不為空時, 數(shù)據(jù)使用者首先計算DEC(Ke,R) = UA||DBUAw, 得到的屬性標識符與自身屬性標識符進行對比, 檢驗屬性的正確性.

        (3) 客戶端通過使用MHT 的根來檢查H(UA||w||m), 來驗證完整性. 其中m是通過對接收到的密文文件e進行解密得到的, 也可以通過DBUAw中文件標識符的個數(shù)得到.

        (4) 搜索結(jié)果的正確性可以通過向量承諾的特征得到. 數(shù)據(jù)使用者先對證明進行解析τ=(v(T)x ,π(T)x,HT,CT-1,C(T),T,BFw,BFUA,φ). 任何驗證者都可以通過式(6)來檢查證明τ的正確性:

        2.6 更新算法

        在實際應用中, 對存儲的數(shù)據(jù)進行動態(tài)更新十分重要, 本文提出的VDB-ABSE 方案支持對關鍵詞、屬性以及密文進行動態(tài)更新, 具體更新方法如下:

        (1) VDB-ABSE 方案在對關鍵詞進行更新時包括添加和刪除兩項操作. 數(shù)據(jù)擁有者首先要使用初始化算法中構(gòu)建索引的方法為待操作關鍵詞構(gòu)建索引結(jié)構(gòu)SI, 并更新公開密鑰中的MHT, 將Utype 設定為對應的操作標識, 添加關鍵詞時僅需將新關鍵詞的stagw加入BFw中, 刪除關鍵詞時則需根據(jù)剩余關鍵詞重新生成BFw, 將(SI,Utype,BFw) 發(fā)送到服務器. 服務器在數(shù)據(jù)擁有者通過身份驗證后更新索引結(jié)構(gòu)SI 及布隆過濾器BFw.

        (2) VDB-ABSE 方案將數(shù)據(jù)使用者屬性存儲于索引結(jié)構(gòu)中, 因此對屬性的添加、刪除操作與關鍵詞的更新方法相似. 不同之處在于使用新屬性的stagUA更新或重新生成BFUA, 將(SI, Utype,BFUA) 發(fā)送到服務器, 由服務器完成更新.

        (3) 對于要更新的密文vx, 數(shù)據(jù)持有者首先獲取相應的索引x, 服務器將最新的數(shù)據(jù)記錄vx和相應的證明τ發(fā)送給數(shù)據(jù)持有者. 當Verify(PK,x,τ)=vx/=⊥時, 數(shù)據(jù)持有者在T上加1, 并計算出式(8):

        2.7 方案運行流程

        本節(jié)中VDB-ABSE 方案的運行流程為圖3. 數(shù)據(jù)持有者對于可以對數(shù)據(jù)進行搜索的數(shù)據(jù)使用者進行管理屬性, 能夠掌握他們對文件搜索的不同權(quán)限, 在初始化階段對文件進行加密, 并根據(jù)數(shù)據(jù)使用者的權(quán)限和屬性生成相應的搜索索引, 再根據(jù)索引生成相應的哈希樹, 構(gòu)建可驗證數(shù)據(jù)庫, 并將可驗證的數(shù)據(jù)庫發(fā)送給云存儲平臺, 由云存儲平臺進行存儲. 圖3 中搜索階段與動態(tài)更新階段均可以進行重復操作. 在搜索階段數(shù)據(jù)使用者先是根據(jù)自己的屬性生成相應的搜索陷門, 向陷門發(fā)送給云存儲平臺, 云存儲平臺在接收到搜索陷門后執(zhí)行搜索操作, 將搜索結(jié)果和證明返還給數(shù)據(jù)使用者, 數(shù)據(jù)使用者在接收到信息后先驗證數(shù)據(jù)的完整性和真實性, 通過驗證后對密文文件進行解密得到自己的目標文件. 當存儲在云存儲服務器端的可驗證數(shù)據(jù)庫需要進行更新時, 數(shù)據(jù)持有者將更新指令發(fā)送給云存儲平臺, 云存儲平臺按照指令進行更新并將新的數(shù)據(jù)庫證明發(fā)送給數(shù)據(jù)持有者, 同時將公開密鑰更新.

        圖3 VDB-ABSE 方案流程圖Figure 3 VDB-ABSE scheme flow chart

        3 方案分析

        3.1 安全性分析

        定理1 假設本方案中的F是安全的偽隨機函數(shù), 則本方案中使用的SI 實例Σ 是自適應安全的.

        證明: 與文獻[17] 類似, 本文通過設計一個模擬器S來提出安全性分析, 即證明RealΣA(λ) 和RealΣA,S(λ) 在計算上是不可區(qū)分的. RealΣA,S(λ) 實驗實例化一個空的列表并且生成一個計數(shù)器, 對手A選擇一個關鍵詞集W, 實驗生成索引SI 并發(fā)送給A, 再將生成的陷門stagw發(fā)送給A, 存儲到列表中,并將最后列表發(fā)送給A. 如果存在模擬器對于所有的對手A都能安全地保護索引, 意味著模擬器S僅用泄露信息就可以精確地模擬整個協(xié)議, 從而完成證明, 則證明方案具備自適應安全.

        模擬器算法S可按照以下方式進行:S將泄露信息LT= (|DBw|,N= ∑w∈W|DBw|) 和對手的查詢T[q] 的所有記錄作為輸入. 初始化S(LT), 生成索引SI, 與索引生成算法相似, 不同的是S用相同長度的隨機比特串填充數(shù)組的所有元素. 另外,S生成一個二維數(shù)組T[w,c] 來存儲所有的條記錄, 用來做A的響應. 然后,S發(fā)送SI 給A, 對于A的每一個查詢q, 檢索一個列表t= (T[q,1],··· ,T[q,|DBq|]). 如果元素F(stagw,c) 在賦值前被查詢過, 則S終止.F是一個偽隨機函數(shù), stagw在RealΣA(λ) 中和被F范圍內(nèi)隨機元素篡改后是無法區(qū)別的. 另一方面, 因為任何給定的T[w,c] 都是隨機分配到SI 的, 所以A每個T[w,c] 的視圖與真實游戲都是相同的. 即滿足式(9):

        因此, VDB-ABSE 方案中的索引SI 具備自適應安全.

        定理2 提出來的VDB-ABSE 方案可以在Squ-CDH 假設下實現(xiàn)安全的關鍵詞搜索.

        證明: 與文獻[18] 類似, 這里采用還原法提出安全證明. 假設所提出的VDB 方案在關鍵詞搜索的情況下不能實現(xiàn)可驗證的更新, 這意味著存在一個對手A, 可以以一個非常小的優(yōu)勢?讓數(shù)據(jù)使用者進行虛假開局, 因此可以建立一個高效的算法A′包含A來打破Squ-CDH 假設. 即在輸入(g,ga) 時,A′可以輸出ga2.

        A′首先選擇一個關鍵詞w, 然后選擇一個相關的索引i ∈RZq作為對索引i的猜想,A可以打破這個位置綁定.A′隨機選擇zj ∈RZp, 其中,j ∈[1,q] 和j/=i, 并且計算式(10):

        假設(i*,π*) 為A返回的元組, 其中τ*= (v*,π*,ΣT). 如果A可以破解VDB-ABSE 方案的安全性, 即同時滿足式(11):

        A′成功的概率為?/q, 幾乎為0, 因此VDB-ABSE 方案在Squ-CDH 假設下能夠?qū)崿F(xiàn)安全的關鍵詞搜索.

        3.2 理論分析

        在本小節(jié)中,將VDB-ABSE 方案與其他方案進行理論分析比較,表3 給出了本文提出的VDB-ABSE方案與文獻[19,20] 提出方案的效率、安全性和功能對比. 其中M為在循環(huán)群G1(或G2) 中的乘法運算,E為在循環(huán)群G1中的冪運算,I為在循環(huán)群G1中的逆元運算,H為哈希運算,F為偽隨機運算,P為雙線性對運算,n為關鍵詞個數(shù).

        表3 方案對比Table 3 Comparison among schemes

        3.3 實驗分析

        本小節(jié)將對于VDB-ABSE 方案進行實驗仿真, 并且與其他方案進行對比分析, 實驗環(huán)境使用的CPU為Intel?CoreTMi5-7500 CPU@3.40 GHz, 16G 內(nèi)存, 實驗算法、參數(shù)的選擇如表4 所示. 首先從公開數(shù)據(jù)庫IMDB Reviews 中隨機挑選3000 條評論數(shù)據(jù), 并生成數(shù)據(jù)庫, 在分詞后選取400 個使用頻率高的關鍵詞, 設置數(shù)據(jù)使用者的屬性個數(shù)為20.

        表4 實驗參數(shù)Table 4 Experiment parameters

        圖4 給出VDB-ABSE 方案與文獻[19,20] 中方案的查詢性能對比. 從圖中可以看出, VDB-ABSE 方案的搜索用時較文獻[19] 中的方案更長, 優(yōu)于文獻[20] 中的方案, 但文獻[19] 中的方案是可驗證數(shù)據(jù)庫方案, 不支持可搜索加密, 而文獻[20] 中的可搜索方案不支持基于屬性加密. 另外, 文獻[20] 中的方案使用的索引結(jié)構(gòu)是在倒排索引結(jié)構(gòu)的基礎上進行升級, 搜索效率為O(n),n為關鍵詞個數(shù), VDB-ABSE 方案使用的是字典樹結(jié)構(gòu), 搜索效率為O(1), 同時還需要進行屬性搜索, 屬性搜索的搜索效率為O(n),n為屬性個數(shù). 在現(xiàn)實場景中, 關鍵詞通常遠多于屬性數(shù)量, 所以VDB-ABSE 方案的搜索效率比文獻[20] 中的方案更好, 能夠應對更加復雜的應用場景.

        圖4 VDB-ABSE 方案與其他方案的查詢用時比較Figure 4 Comparison of query time between VDB-ABSE scheme and other schemes

        圖5 給出VDB-ABSE 方案與文獻[19,20] 中方案的驗證功能的性能對比. 圖中三種方案的驗證時間均與計算次數(shù)成線性關系, VDB-ABSE 方案與文獻[20] 中方案需要更多的計算時間, 是因為兩個方案都需要執(zhí)行一個簽名驗證和復雜度為O(log2q) 的哈希運算以驗證文檔標識符的完整性. 此外, VDB-ABSE方案在這一基礎上還要進行一次解密得到用戶屬性的驗證結(jié)果, 所以VDB-ABSE 方案的驗證所用時間會比其他兩個方案更多一些, 但是從實驗結(jié)果來看, 所耗時間還是在可以接受的范圍內(nèi). 在驗證性能差不多的情況下, VDB-ABSE 方案能夠?qū)?shù)據(jù)使用者的屬性進行區(qū)分, 具有更好的普適性.

        圖5 VDB-ABSE 方案與其他方案的驗證用時比較Figure 5 Comparison of verify time between VDB-ABSE scheme and other schemes

        圖6 給出VDB-ABSE 方案與其他方案的更新功能所用時間對比. 三種方案均具有動態(tài)更新過程, 在更新過程中, VDB-ABSE 方案和文獻[20] 中的方案在更新時除了要更新數(shù)據(jù)庫, 還需要對索引中的信息進行更新, 由前文中對索引結(jié)構(gòu)的分析可知, VDB-ABSE 方案在關鍵詞個數(shù)更多的場景中的更新效率要略高于文獻[20] 中的方案.

        圖6 VDB-ABSE 方案與其他方案的更新用時比較Figure 6 Comparison of update time between VDB-ABSE scheme and other schemes

        4 結(jié)束語

        本文引入了可驗證數(shù)據(jù)庫的概念, 在屬性可搜索加密技術的基礎上加入了可驗證功能. 現(xiàn)有可搜索加密方案普遍存在效率較低, 或是不能保障數(shù)據(jù)安全性的問題. 為此, 本文提出了一種基于可驗證數(shù)據(jù)庫的可搜索加密方案(VDB-ABSE), 給出了VDB-ABSE 方案的方案模型, 對方案中的具體算法和構(gòu)造方式進行了詳細說明, 并對VDB-ABSE 方案進行了安全性分析, 證明了VDB-ABSE 方案是自適應安全的,同時證明了可以在Squ-CDH 假設下實現(xiàn)安全的關鍵詞搜索. 通過分析VDB-ABSE 方案的性能, 并與其它方案進行比較, 可以看出VDB-ABSE 方案在效率、安全性和功能上表現(xiàn)更加優(yōu)異. 實驗結(jié)果表明,VDB-ABSE 方案能夠應用于現(xiàn)實生活中更加復雜的場景, 具備屬性權(quán)限控制、動態(tài)更新以及可驗證的功能, 彌補了當前屬性可搜索加密方案的不足.

        猜你喜歡
        可驗證持有者使用者
        “法定許可”情況下使用者是否需要付費
        “可驗證”的專業(yè)術語解釋
        一種基于區(qū)塊鏈技術的可信電子投票方法
        軟件導刊(2018年5期)2018-06-21 11:46:28
        新型拼插休閑椅,讓人與人的距離更近
        好日子(2018年5期)2018-05-30 16:24:04
        云計算視角下可驗證計算的分析研究
        抓拍神器
        最低密度冰:水的第18種晶形
        新天地(2016年3期)2016-05-30 10:48:04
        無可信第三方的可驗證多秘密共享
        當代旅游(2015年8期)2016-03-07 18:14:38
        財政部:央企紅利轉(zhuǎn)社??删徑怵B(yǎng)老金繳費壓力
        時代金融(2015年28期)2015-10-16 01:58:21
        夢鄉(xiāng)床
        日本午夜理论一区二区在线观看| 午夜片无码区在线| 亚洲精品一区网站在线观看| 久久久精品久久久国产| 国产网站一区二区三区| a级毛片无码久久精品免费| 高清无码一区二区在线观看吞精| 日本草逼视频免费观看| 日本视频一区二区三区在线观看| 在线观看视频播放| 中文字幕av日韩精品一区二区 | 国产三级不卡在线观看视频| 一本无码中文字幕在线观| 色播久久人人爽人人爽人人片av| 国产免费看网站v片不遮挡| 日韩精品免费观看在线| 色爱情人网站| 国产欧美日韩久久久久| 亚洲欧洲综合有码无码| 久久精品人妻一区二三区| 中文精品久久久久人妻不卡| 亚洲av无码av吞精久久| 无码AⅤ最新av无码专区| 国产成人一区二区三区影院| av鲁丝一区鲁丝二区鲁丝三区| 久久ri精品高清一区二区三区| 开心五月婷婷综合网站| 国产女同va一区二区三区| 性大毛片视频| 欧美亚洲国产人妖系列视| 国产午夜激情视频在线看| 少妇夜夜春夜夜爽试看视频| 国产自国产在线观看免费观看| 欧美人与动牲交片免费| 国产亚洲精品在线视频| 午夜毛片不卡免费观看视频| 国产欧美精品一区二区三区,| 久久精品国产亚洲av日韩精品| 人妻少妇精品久久久久久| 欧美xxxx黑人又粗又长精品| 中文字幕人成乱码中文乱码|