亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

具有內(nèi)容隱藏的布隆過濾器的安全私有數(shù)據(jù)庫查詢的制作方法

文檔序號:8344629閱讀:433來源:國知局
具有內(nèi)容隱藏的布隆過濾器的安全私有數(shù)據(jù)庫查詢的制作方法
【專利說明】具有內(nèi)容隱藏的布隆過濾器的安全私有數(shù)據(jù)庫查詢
[0001]政府權(quán)利聲明
[0002]本發(fā)明是關(guān)于經(jīng)由內(nèi)政部(DOI)合同N0.D11PC20194通過先進(jìn)智能研宄項(xiàng)目活動(IARPA)而執(zhí)行的工作而做出的。
技術(shù)領(lǐng)域
[0003]本發(fā)明一般涉及用于安全私有數(shù)據(jù)庫的私密性保護(hù)技術(shù)。
【背景技術(shù)】
[0004]當(dāng)各方擁有共同關(guān)注的數(shù)據(jù)時,已經(jīng)利用安全匿名數(shù)據(jù)庫搜索。參見例如M-Raykova等在(2009年11月)云計算安全研討會(CCSW)上發(fā)表的“安全匿名數(shù)據(jù)庫搜索,,(M.Raykova et al.,"Secure Anonymous Database Search, ^Cloud ComputingSecurity Workshop (CCSff) (Nov.2009));以及 V.Pappas 等在(2Oll 年 I2 月)第 27 屆年度計算機(jī)安全應(yīng)用會議(ACSAC)會刊上發(fā)表的“在現(xiàn)實(shí)世界中的私人搜索”(V.Pappaset al., "Private Search in the Real World, 〃Proc.0f the 27th Annual ComputerSecurity Applicat1ns Conference (ACSAC) (Dec.2011))。一般地,安全匿名數(shù)據(jù)庫搜索技術(shù)允許客戶端搜索駐留在服務(wù)器上的信息,而不向服務(wù)器披露客戶端身份或查詢內(nèi)容。同時,服務(wù)器被保護(hù),即僅向被授權(quán)的客戶端授予查詢能力并且客戶端不會得知與查詢無關(guān)的任何東西。
[0005]在一個示例性實(shí)現(xiàn)中,服務(wù)器S采用用于每個條目的單獨(dú)密鑰來加密數(shù)據(jù)庫,并且向索引服務(wù)器IS提供經(jīng)過加密的數(shù)據(jù)庫。此外,服務(wù)器S創(chuàng)建也被提供給索引服務(wù)器IS的經(jīng)過加密的搜索結(jié)構(gòu)。當(dāng)客戶端C想要查詢數(shù)據(jù)庫時,客戶端C加密查詢,向索引服務(wù)器IS發(fā)送它,并且由索引服務(wù)器IS使用經(jīng)過加密的搜索結(jié)構(gòu)盲執(zhí)行查詢。
[0006]為了減少關(guān)于查詢和響應(yīng)的信息泄露,經(jīng)過加密的關(guān)鍵字的布隆過濾器(“Bloomfilters (BF) ”)已經(jīng)被用作搜索結(jié)構(gòu)。異構(gòu)元素(例如關(guān)鍵字)可以插入到布隆過濾器中。在稍后的時間,用戶可以通過檢查布隆過濾器的若干位被設(shè)置為I來檢查具體的元素是否插入到布隆過濾器中。
[0007]在利用布隆過濾器的安全匿名數(shù)據(jù)庫搜索系統(tǒng)中,由索引服務(wù)器IS存儲的每一個經(jīng)過加密的數(shù)據(jù)庫行具有關(guān)聯(lián)的經(jīng)過加密的布隆過濾器。利用布隆過濾器檢查(由客戶端C提供的)經(jīng)過加密的關(guān)鍵字允許索引服務(wù)器IS確定關(guān)鍵字是否與對應(yīng)的數(shù)據(jù)庫記錄關(guān)聯(lián),并且返回需要的記錄。由于關(guān)鍵字被加密,索引服務(wù)器IS不會得知查詢內(nèi)容。
[0008]Eu-Jin Goh 的“安全索引”,密碼學(xué)電子文庫:報告 2003/216 (Eu-Jin Goh1aSecureIndexes,,,Cryptology ePrint Archive: Report 2003/216 (http://eprint.1acr.0rg/2003/216))通過提出使用布隆過濾器樹來改進(jìn)這樣的安全匿名數(shù)據(jù)庫搜索系統(tǒng)的可擴(kuò)展性。一般地,二進(jìn)制樹建立在與數(shù)據(jù)庫行對應(yīng)的布隆過濾器上,其中內(nèi)部節(jié)點(diǎn)是如下的布隆過濾器一一該布隆過濾器包括在子樹的布隆過濾器中的任意一個中所包括的全部關(guān)鍵字。因?yàn)橥ㄟ^沿著布隆過濾器樹往下來識別匹配數(shù)據(jù)庫行,所以現(xiàn)在可以更快地搜索數(shù)據(jù)庫。
[0009]仍然需要可以處理比只是關(guān)鍵字搜索更復(fù)雜的查詢的安全匿名數(shù)據(jù)庫搜索系統(tǒng)。特別地,仍然需要可以處理需要公式評估(例如公式、范圍查詢、否定和近似)的查詢的安全匿名數(shù)據(jù)庫搜索系統(tǒng)。還有,對這樣的安全匿名數(shù)據(jù)庫搜索系統(tǒng)的另一需要仍然存在:該搜索系統(tǒng)可以處理需要公式評估的查詢而不披露布隆過濾器是否匹配公式的每一項(xiàng)。

【發(fā)明內(nèi)容】

[0010]一般地,提供方法和設(shè)備以用于具有內(nèi)容隱藏的布隆過濾器的安全私有數(shù)據(jù)庫查詢。根據(jù)本發(fā)明的一個方面,服務(wù)器提供在數(shù)據(jù)庫上由客戶端進(jìn)行的安全私有數(shù)據(jù)庫查詢,用于具有在至少兩個關(guān)鍵字A和B上的公式評估的查詢,通過:從數(shù)據(jù)庫接收包括經(jīng)過加密的布隆過濾器的布隆過濾器樹,其中該經(jīng)過加密的布隆過濾器包含經(jīng)過加密的關(guān)鍵字,其中,在布隆過濾器樹中的每一個布隆過濾器分別由隨機(jī)掩碼墊P來掩碼;從客戶端接收關(guān)鍵字A和B的經(jīng)過加密的版本;獲得用于關(guān)鍵字A和B的經(jīng)過掩碼的布隆過濾器索引;與客戶端一起參與安全功能評估(SFE),其中服務(wù)器具有輸入,其包括用于關(guān)鍵字A和B的經(jīng)過掩碼的布隆過濾器索引,以及其中客戶端具有包括隨機(jī)掩碼墊P的輸入,以及其中安全功能評估包括以下步驟:由服務(wù)器從經(jīng)過掩碼的布隆過濾器索引輸入移除隨機(jī)掩碼墊P ;確定是否存在用于關(guān)鍵字A和B中的每一個的匹配布隆過濾器;應(yīng)用公式評估從而確定是否滿足公式;以及生成結(jié)果。
[0011]根據(jù)本發(fā)明的另一方面,客戶端執(zhí)行在數(shù)據(jù)庫上使用服務(wù)器的安全私有數(shù)據(jù)庫查詢,用于具有在至少兩個關(guān)鍵字A和B上的公式評估的查詢,通過:向服務(wù)器提供關(guān)鍵字A和B的經(jīng)過加密的版本,其中服務(wù)器將數(shù)據(jù)庫表示為包括經(jīng)過加密的布隆過濾器的布隆過濾器樹,其中該加密的布隆過濾器包含來自數(shù)據(jù)庫的經(jīng)過加密的關(guān)鍵字,其中在布隆過濾器樹中的每個布隆過濾器分別由隨機(jī)掩碼墊P來掩碼;與服務(wù)器一起參與安全功能評估(SFE),其中服務(wù)器具有包括經(jīng)過掩碼的布隆過濾器索引的輸入,該經(jīng)過掩碼的布隆過濾器索引是用于來自布隆過濾器樹的關(guān)鍵字A和B,以及其中客戶端具有包括隨機(jī)掩碼墊P的輸入,以及其中安全功能評估包括以下步驟:由服務(wù)器從經(jīng)過掩碼的布隆過濾器索引輸入移除隨機(jī)掩碼墊P ;確定是否存在用于關(guān)鍵字A和B中的每一個的匹配布隆過濾器;應(yīng)用公式評估從而確定是否滿足公式;以及生成結(jié)果。
[0012]在布隆過濾器樹中的布隆過濾器可分別例如基于該布隆過濾器的節(jié)點(diǎn)索引由隨機(jī)掩碼墊P來掩碼。隨機(jī)掩碼墊P可以由服務(wù)器使用XOR函數(shù)從經(jīng)過掩碼的布隆過濾器索引輸入移除。例如,通過將XOR函數(shù)應(yīng)用到用于關(guān)鍵字A和B的經(jīng)過掩碼的索引和用于關(guān)鍵字A和B的單獨(dú)索引,可以由服務(wù)器將隨機(jī)掩碼墊P從經(jīng)過掩碼的布隆過濾器索引輸入移除。
[0013]通過參考以下的詳細(xì)描述和附圖將獲得對本發(fā)明的更加完整的理解以及本發(fā)明的其它特征和優(yōu)點(diǎn)。
【附圖說明】
[0014]圖1是可以實(shí)現(xiàn)本發(fā)明過程的改進(jìn)的一般性雙方SFE系統(tǒng)的框圖;
[0015]圖2示出示例性布隆過濾器;
[0016]圖3示出示例性安全匿名數(shù)據(jù)庫搜索系統(tǒng);以及
[0017]圖4示出用于包含本發(fā)明各方面的安全私有數(shù)據(jù)庫查詢過程的示例性實(shí)現(xiàn)的偽碼。
【具體實(shí)施方式】
[0018]本發(fā)明的多個方面提供可以處理需要公式評估(例如公式、范圍查詢、否定和近似)的查詢的安全匿名數(shù)據(jù)庫搜索方法和系統(tǒng)。根據(jù)本發(fā)明的一方面,所公開的安全匿名數(shù)據(jù)庫搜索方法和系統(tǒng)可以處理需要公式評估的查詢而不披露布隆過濾器是否匹配公式的每一項(xiàng)。
[0019]關(guān)于包含經(jīng)過加密的關(guān)鍵字的布隆過濾器和布隆過濾器樹的上述技術(shù)被用作在利用安全功能評估(SFE)的安全匿名數(shù)據(jù)庫搜索系統(tǒng)中的構(gòu)建塊。布隆過濾器額外采用一次性掩碼墊(“one-time mask pad”)(其由服務(wù)器S生成并且提供給客戶端C)加密。使用在客戶端C和索引服務(wù)器IS之間的安全功能評估(SFE)從而有效地解密(即去除一次性掩碼墊)布隆過濾器并且評估查詢公式,從而使得索引服務(wù)器IS不會得知布隆過濾器匹配。
[0020]圖1是改進(jìn)的安全私有數(shù)據(jù)庫查詢系統(tǒng)100的框圖。如圖1中所示,存儲器130配置處理器120實(shí)現(xiàn)在本文中公開的改進(jìn)的安全私有數(shù)據(jù)庫查詢方法、步驟和功能(共同地在圖1中示為150,并且結(jié)合圖2至圖4在下文中進(jìn)一步討論)。存儲器130可以是分布式或本地的,并且處理器120可以是分布式或單個的。存儲器130可以是分布的或本地的,并且處理器120可以是分布的或單一的。存儲器130可以實(shí)現(xiàn)為電、磁或光存儲器,或者這些或其它類型的存儲裝置的任何結(jié)合。應(yīng)當(dāng)注意,組成處理器120的每個分布式處理器一般包含其自身的可尋址存儲器空間。同樣應(yīng)當(dāng)注意,計算機(jī)系統(tǒng)100的一些或全部可以被包含在個人計算機(jī)、便攜式計算機(jī)、手持計算裝置、專用電路或通用集成電路中。
[0021]布降過濾器(“Bloom filter,,)
[0022]圖2示出示例性布隆過濾器200,其表示集合{x,y,z}。一般地,布隆過濾器是可以用來測試元素是否是集合中的成員的空間高效概率數(shù)據(jù)結(jié)構(gòu)??盏牟悸∵^濾器200是m比特的位數(shù)組,全部被設(shè)置為O。同樣必須存在定義的k個不同的散列函數(shù),其中的每一個散列函數(shù)將某個集合元素映射或散列到具有均勻隨機(jī)分布的m個數(shù)組位置中的一個。要將元素添加到布隆過濾器200,對k個散列函數(shù)中的每一個函數(shù)應(yīng)用該元素從而得到k個數(shù)組位置。在所有這些k個位置處的比特被設(shè)置為I。
[0023]要查詢在布隆過濾器200中的元素(即測試元素是否在集合中),向k個散列函數(shù)中的每一個函數(shù)應(yīng)用該元素從而得到k個數(shù)組位置。如果在這些位置處的比特中的任意一個為0,則元素不在集合中(如果它是在集合中的話,則在插入時所有的比特將已經(jīng)設(shè)置為I)。如果在這些位置處的所有比特為1,則元素是在集合中(或者有可能在插入其它元素期間比特已經(jīng)偶然地設(shè)置為1,導(dǎo)致誤報(“false positive”))。
當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1