欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

生成索引的方法和裝置以及檢索方法和裝置的制作方法

文檔序號(hào):6467678閱讀:135來(lái)源:國(guó)知局
專利名稱:生成索引的方法和裝置以及檢索方法和裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及信息處理技術(shù),尤其涉及使得能夠驗(yàn)證檢索結(jié)果完整性的生成索引的方法和裝置以及檢索方法和裝置。

背景技術(shù)
在很多應(yīng)用中,需要對(duì)大量信息進(jìn)行檢索,以獲得滿足一定條件的信息。通常,預(yù)先對(duì)原始信息建立索引。然后,響應(yīng)于檢索請(qǐng)求,在索引中執(zhí)行查找,以找出匹配的項(xiàng)目,從而得到相關(guān)信息。出于各種原因,檢索者總是希望能夠得到完整的檢索結(jié)果,即,得到所有滿足檢索條件的信息。而現(xiàn)有的索引編制和檢索技術(shù)缺乏對(duì)檢索完整性的保障。
隨著計(jì)算機(jī)網(wǎng)絡(luò)和通信技術(shù)的廣泛使用,數(shù)據(jù)擁有者經(jīng)常將數(shù)據(jù)文件存儲(chǔ)在由第三方維護(hù)的(一個(gè)或多個(gè))服務(wù)器上。這種應(yīng)用中,對(duì)服務(wù)器上存儲(chǔ)的數(shù)據(jù)文件的檢索服務(wù)一般也由第三方提供,即,提供檢索服務(wù)的第三方響應(yīng)于檢索者的請(qǐng)求,利用索引對(duì)服務(wù)器上存儲(chǔ)的數(shù)據(jù)文件執(zhí)行查找,并將結(jié)果提供給檢索者。由于實(shí)質(zhì)的檢索工作主要由第三方執(zhí)行,因此在這種情況中,更加希望能夠驗(yàn)證和保證檢索的正確性和完整性。
另外,出于隱私和安全的考慮,數(shù)據(jù)文件經(jīng)常被加密存儲(chǔ)。尤其是在上述使用存儲(chǔ)服務(wù)的情況中,文件經(jīng)常以密文的形式存儲(chǔ)在服務(wù)器上,以防止文件內(nèi)容暴露給未被授權(quán)的用戶(一些情況中也包括提供存儲(chǔ)或檢索服務(wù)的第三方)。而文件的加密存儲(chǔ)使得文件檢索變得困難,尤其是難以驗(yàn)證檢索結(jié)果是否正確和完整。


發(fā)明內(nèi)容
本發(fā)明提供了一種生成索引的方法和裝置,以及用于檢索的方法的裝置。
根據(jù)本發(fā)明的一個(gè)方面,提供了一種生成索引的方法,包括生成對(duì)應(yīng)于檢索項(xiàng)的檢索項(xiàng)標(biāo)識(shí);根據(jù)與所述檢索項(xiàng)相關(guān)的一條或多條檢索信息,生成一個(gè)或多個(gè)索引項(xiàng);生成所述一條或多條檢索信息的聚合器;以及至少利用所述檢索項(xiàng)標(biāo)識(shí)、所述一個(gè)或多個(gè)索引項(xiàng)以及所述聚合器生成索引條目,從而形成索引。
根據(jù)本發(fā)明的另一個(gè)方面,提供了一種用于生成索引的裝置,包括檢索項(xiàng)標(biāo)識(shí)生成單元,適合于生成對(duì)應(yīng)于檢索項(xiàng)的檢索項(xiàng)標(biāo)識(shí);索引項(xiàng)生成單元,適合于根據(jù)與所述檢索項(xiàng)相關(guān)的一條或多條檢索信息,生成一個(gè)或多個(gè)索引項(xiàng);聚合器生成單元,適合于生成所述一條或多條檢索信息的聚合器;以及索引形成單元,適合于至少利用所述檢索項(xiàng)標(biāo)識(shí)、所述一個(gè)或多個(gè)索引項(xiàng)以及所述聚合器生成索引條目,從而形成索引。
根據(jù)本發(fā)明的另一個(gè)方面,提供了一種檢索方法,包括生成檢索請(qǐng)求;接收一個(gè)或多個(gè)索引項(xiàng)和聚合器;從所述接收的一個(gè)或多個(gè)索引項(xiàng)提取一條或多條檢索信息;利用所述接收的聚合器驗(yàn)證所述提取的檢索信息。
根據(jù)本發(fā)明的另一個(gè)方面,提供了一種檢索裝置,包括檢索請(qǐng)求單元,適合于生成檢索請(qǐng)求;檢索信息提取單元,適合于從接收的一個(gè)或多個(gè)索引項(xiàng)提取一條或多條檢索信息;以及驗(yàn)證單元,適合于利用接收的聚合器驗(yàn)證所述提取的檢索信息。
根據(jù)本發(fā)明的方法,可以利用聚合器驗(yàn)證檢索結(jié)果的完整性和正確性。本發(fā)明可以應(yīng)用于加密索引,尤其是加密倒排索引。結(jié)合設(shè)置了隱私級(jí)別的加密倒排索引,可以在提供檢索結(jié)果的可驗(yàn)證性的基礎(chǔ)上,提供了良好的隱私控制和保密性。



從下面結(jié)合附圖對(duì)本發(fā)明優(yōu)選實(shí)施例的描述中可以更好地理解本發(fā)明,附圖中類似的參考標(biāo)號(hào)表示類似的部分,其中 圖1是示出了一個(gè)檢索系統(tǒng)的示例的框圖; 圖2是示意性地示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的數(shù)據(jù)擁有者終端的配置示例的框圖; 圖3是示意性地示出了根據(jù)該實(shí)施例的生成索引的操作的流程圖; 圖4是示意性地示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的檢索者終端的配置示例的框圖;以及 圖5是示意性地示出了根據(jù)該實(shí)施例進(jìn)行檢索的操作的流程圖。

具體實(shí)施例方式 下面將詳細(xì)描述本發(fā)明的各個(gè)方面的特征和示例性實(shí)施例。在下面的詳細(xì)描述中,提出了許多具體細(xì)節(jié),以便提供對(duì)本發(fā)明的全面的理解。但是,對(duì)于本領(lǐng)域技術(shù)人員來(lái)說(shuō)很明顯,本發(fā)明可以在不需要這些具體細(xì)節(jié)中的一些細(xì)節(jié)的情況下被實(shí)施。下面對(duì)實(shí)施例的描述僅僅是為了通過(guò)示出本發(fā)明的示例來(lái)提供對(duì)本發(fā)明的更好的理解。本發(fā)明決不限于下面所提出的任何具體配置和算法,而是覆蓋了元素、部件和算法的任何修改、替換和改進(jìn),只要不脫離本發(fā)明的精神。在附圖和下面的描述中,沒(méi)有示出公知的結(jié)構(gòu)和技術(shù),以便避免不必要地使本發(fā)明模糊。
圖1示意性地示出了可在其中應(yīng)用本發(fā)明的一個(gè)檢索系統(tǒng)的示例。如圖1所示,數(shù)據(jù)擁有者的裝置或終端、由服務(wù)提供者管理的服務(wù)器、以及一個(gè)或多個(gè)檢索者的裝置或終端經(jīng)由通信網(wǎng)絡(luò)彼此連接并彼此可通信。數(shù)據(jù)擁有者將文件和這些文件的索引存儲(chǔ)在服務(wù)器上。服務(wù)器響應(yīng)于來(lái)自檢索者終端的檢索請(qǐng)求,利用索引對(duì)文件進(jìn)行檢索,并將檢索結(jié)果提供給檢索者。
應(yīng)當(dāng)注意,這里所使用的術(shù)語(yǔ)“服務(wù)器”可以是提供存儲(chǔ)服務(wù)和檢索服務(wù)兩者的單個(gè)裝置,或者彼此相鄰或遠(yuǎn)程的一組多個(gè)裝置,每個(gè)負(fù)責(zé)不同的服務(wù),例如存儲(chǔ)、數(shù)據(jù)檢索、用戶管理等等,或者分擔(dān)服務(wù)。例如,數(shù)據(jù)擁有者可以將文件存儲(chǔ)在存儲(chǔ)服務(wù)器上,而將索引存儲(chǔ)在可與存儲(chǔ)服務(wù)器通信的檢索服務(wù)器上。為了簡(jiǎn)化說(shuō)明,在圖中和下面的描述中,將這樣的設(shè)備統(tǒng)稱為“服務(wù)器”。雖然圖中將數(shù)據(jù)擁有者終端和服務(wù)器示出為分別的裝置,但是可以理解,在本發(fā)明中,也可以由單個(gè)設(shè)備實(shí)現(xiàn)下面所描述的數(shù)據(jù)擁有者終端和服務(wù)器的功能。
數(shù)據(jù)擁有者和服務(wù)器的裝置或終端中的每個(gè)可以實(shí)現(xiàn)為能夠處理信息和進(jìn)行信息通信的設(shè)備,例如個(gè)人計(jì)算機(jī)(PC)、個(gè)人數(shù)字助理(PDA)、智能電話、或者其他數(shù)據(jù)處理設(shè)備。服務(wù)器一般實(shí)現(xiàn)為由服務(wù)提供者管理的能夠存儲(chǔ)和維護(hù)大量數(shù)據(jù),并且使得終端能夠有條件地訪問(wèn)數(shù)據(jù)的設(shè)備或一組設(shè)備。
在所示系統(tǒng)中,數(shù)據(jù)擁有者對(duì)其文件編制索引,并將文件和索引存儲(chǔ)在服務(wù)器上。檢索時(shí),檢索者向服務(wù)器提供包含檢索項(xiàng)信息(例如,檢索項(xiàng)標(biāo)識(shí))的請(qǐng)求,服務(wù)器根據(jù)檢索項(xiàng)信息在索引中執(zhí)行查找,找到匹配的索引條目,將該索引條目中與檢索項(xiàng)有關(guān)的索引項(xiàng)提供給檢索者,以便檢索者獲取有關(guān)信息。特別的,根據(jù)本發(fā)明的方案,索引條目中還包括用于驗(yàn)證檢索結(jié)果完整性的聚合器。服務(wù)器還將索引條目中的聚合器提供給檢索者。檢索者根據(jù)聚合器來(lái)驗(yàn)證檢索結(jié)果是否正確和完整。
在一般的應(yīng)用中,經(jīng)常使用倒排索引,其中根據(jù)關(guān)鍵詞來(lái)查找含有該關(guān)鍵詞的文件。下面以倒排索引應(yīng)用為例來(lái)進(jìn)行說(shuō)明。但是應(yīng)當(dāng)理解,本發(fā)明也可以類似地應(yīng)用于正排索引。
圖2示意性地示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的數(shù)據(jù)擁有者終端100的配置示例。如圖2所示,數(shù)據(jù)擁有者終端100主要包括檢索項(xiàng)標(biāo)識(shí)生成單元101、索引項(xiàng)生成單元102、聚合器生成單元103和索引形成單元104。
圖3示意性地示出了根據(jù)該實(shí)施例的數(shù)據(jù)擁有者終端100生成索引的操作。
首先,在步驟S201,針對(duì)數(shù)據(jù)擁有者文件的檢索項(xiàng)被設(shè)置,并且檢索項(xiàng)標(biāo)識(shí)生成單元101根據(jù)檢索項(xiàng)生成相應(yīng)的檢索項(xiàng)標(biāo)識(shí)。在倒排索引應(yīng)用中,檢索項(xiàng)是關(guān)鍵詞。例如,數(shù)據(jù)擁有者終端通過(guò)提取各個(gè)文件中的關(guān)鍵詞來(lái)作為檢索項(xiàng),或者由數(shù)據(jù)擁有者通過(guò)對(duì)終端的輸入來(lái)手動(dòng)設(shè)置檢索項(xiàng)。假設(shè)設(shè)置了彼此不同的關(guān)鍵詞作為檢索項(xiàng),對(duì)于每一檢索項(xiàng)(關(guān)鍵詞)KW,檢索項(xiàng)標(biāo)識(shí)生成單元101生成相應(yīng)的唯一檢索項(xiàng)標(biāo)識(shí)KL。
檢索項(xiàng)標(biāo)識(shí)KL例如可以是檢索項(xiàng)KW本身,或者映射到檢索項(xiàng)KW的數(shù)據(jù)。在加密索引應(yīng)用中,檢索項(xiàng)標(biāo)識(shí)KL可以是KW的密文,或包含KW信息的數(shù)據(jù)。例如如下計(jì)算KL KL=Hash(MEK‖KW)式(1) 其中Hash()表示哈希函數(shù),MEK是特定參數(shù)(例如,數(shù)據(jù)擁有者的主密鑰),“‖”表示串或數(shù)字按照預(yù)定順序的組合?;蛘?,KL=E(EKey,KW),其中EKey是特定密鑰,E(EKey,KW)表示利用EKey對(duì)KW加密。
在步驟S202,與每個(gè)檢索項(xiàng)有關(guān)的檢索信息被設(shè)置,并且索引項(xiàng)生成單元102生成每條檢索信息相應(yīng)的索引項(xiàng)。每個(gè)檢索項(xiàng)對(duì)應(yīng)于一條或多條檢索信息。檢索信息可以是提供了與該檢索項(xiàng)匹配的檢索結(jié)果的任何信息。例如,在倒排索引中,對(duì)于檢索項(xiàng)(關(guān)鍵詞)KW,每個(gè)含有關(guān)鍵詞KW的文件的文件名或文件位置(或與該文件相關(guān)的其他信息)被設(shè)置為與該檢索項(xiàng)相關(guān)的一條檢索信息。例如,對(duì)于檢索項(xiàng)KW,含有關(guān)鍵詞KW的n個(gè)文件的文件名被設(shè)置為與檢索項(xiàng)KW有關(guān)的n條檢索信息I1、I2、...In。
注意,在加密存儲(chǔ)應(yīng)用中,數(shù)據(jù)擁有者可能將文件以密文而非明文的形式存儲(chǔ)在服務(wù)器上。在這種情況中,上述文件名是指加密文件的密文文件名。
對(duì)于每一檢索信息,索引項(xiàng)生成單元102生成包含該檢索信息或能夠從中得出該檢索信息的一個(gè)索引項(xiàng)。對(duì)于檢索信息Ij(j=1,2,...,n),索引項(xiàng)生成單元102生成索引項(xiàng)FLj。索引項(xiàng)FLj例如可以是檢索信息Ij本身,或者可經(jīng)過(guò)變換得到檢索信息Ij的值。在一種加密索引應(yīng)用中,索引項(xiàng)FLj可以是包含Ij信息的數(shù)據(jù)的密文。例如如下計(jì)算索引項(xiàng)FLj FLj=E(EKey,Ij‖Key) 式(2) 其中EKey是特定密鑰,Key是特定參數(shù)(例如,數(shù)據(jù)擁有者用于相應(yīng)加密文件的密鑰)E(EKey,Ij‖Key)表示利用EKey對(duì)Ij和Key的組合加密。
然后在步驟S203,聚合器生成單元103生成聚合器,每個(gè)聚合器聚合了與一個(gè)檢索項(xiàng)有關(guān)的全部檢索信息,用于驗(yàn)證檢索結(jié)果的完整性??梢允褂酶鞣N方法來(lái)生成聚合器,只要在檢索者終端處,能夠使用該聚合器驗(yàn)證得到的包含各個(gè)檢索信息的檢索結(jié)果是否完整。下面分別以異或運(yùn)算、取模運(yùn)算、聚合簽名為例來(lái)說(shuō)明聚合器的計(jì)算。本領(lǐng)域技術(shù)人員能夠認(rèn)識(shí)到,還可以使用各種其他算法來(lái)生成聚合器。
示例1-異或運(yùn)算
對(duì)于與檢索項(xiàng)KW相關(guān)的全部檢索信息I1、I2、...In,聚合器生成單元103可以利用異或運(yùn)算如下生成聚合器IC 式(3) 式(3)可以利用以下迭代程序計(jì)算 set IC=0 for j=1 to n next j 示例2-取模運(yùn)算
利用取模運(yùn)算,聚合器生成單元103可以如下生成聚合器IC 式(4) 或者 式(5) 其中,p是大素?cái)?shù)。
式(4)可以利用以下迭代程序計(jì)算 set IC=1 for j=1 to n IC=(IC*Ij)mod p next j 式(5)可以利用以下迭代程序計(jì)算 set IC=0 for j=1 to n IC=(IC+Ij)mod p nextj 示例3-聚合簽名
假設(shè)預(yù)先設(shè)置如下安全參數(shù)p是大素?cái)?shù);G1和G2是同為p階的群;g1和g2分別是G1和G2的生成元;Zp*是所有小于p且與p互素的正整數(shù)的集合;定義雙線性映射e為G1×G2→GT,該雙線性映射滿足以下特性 (1)雙映射性——對(duì)所有的g1、g2和屬于Zp*的所有的a,b,e(g1a,g2b)=e(g1,g2)ab成立; (2)非退化性——如果e(g1,g2)=1,存在g2屬于G2,則有g(shù)1=O。
并且設(shè)置將{0,1}*映射到G1的哈希函數(shù)H,選擇Zp*中的隨機(jī)數(shù)K,并設(shè)置密鑰sk。其中,g2和隨機(jī)數(shù)K被公布給檢索者,或者g2k被公布給檢索者。
聚合器生成單元103可以如下生成聚合器IC 式(6) 式(5)可以利用以下迭代程序計(jì)算 set IC=1 for j=1 to n IC=(IC*H(Ij)1/(sk+K))mod p next j 聚合器被生成之后,索引形成單元104針對(duì)每個(gè)檢索項(xiàng),生成一個(gè)索引條目。每個(gè)索引條目至少包括與該檢索項(xiàng)相對(duì)應(yīng)的檢索項(xiàng)標(biāo)識(shí)、與該檢索項(xiàng)有關(guān)的全部索引項(xiàng),以及通過(guò)聚合與該檢索項(xiàng)相關(guān)的全部檢索信息而得到的聚合器。然后,索引形成單元104形成包括了全部索引條目的索引。需要注意的是,可以選擇不同的隨機(jī)數(shù)K來(lái)分別聚合不同組的索引項(xiàng),以生成各個(gè)聚合器。
至此,在數(shù)據(jù)擁有者終端100處生成了含有聚合器的索引。之后,數(shù)據(jù)擁有者終端可以將文件以及所生成的索引存儲(chǔ)到服務(wù)器上,以供使用。
下面參考圖4和圖5描述聚合器的使用。
圖4示意性地示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的檢索者終端300的配置示例。如圖4所示,檢索者終端300主要包括檢索請(qǐng)求單元301、檢索信息提取單元302和驗(yàn)證單元303。
圖5示意性地示出了根據(jù)該實(shí)施例的檢索者終端300進(jìn)行檢索的操作。
首先,在步驟S401,檢索請(qǐng)求單元301生成至少包括檢索項(xiàng)標(biāo)識(shí)的檢索請(qǐng)求并將檢索請(qǐng)求發(fā)送給服務(wù)器。檢索者可以從數(shù)據(jù)擁有者處得到檢索項(xiàng)標(biāo)識(shí),或者從數(shù)據(jù)擁有者處得到計(jì)算檢索項(xiàng)標(biāo)識(shí)所必須的數(shù)據(jù),利用與建立索引時(shí)所用的生成檢索項(xiàng)標(biāo)識(shí)的方法相對(duì)應(yīng)的方法計(jì)算出檢索項(xiàng)標(biāo)識(shí)。
服務(wù)器接收到檢索請(qǐng)求之后,在索引中執(zhí)行查找,找到含有與所接收的檢索項(xiàng)標(biāo)識(shí)相匹配的檢索項(xiàng)標(biāo)識(shí)的索引條目,將該索引條目中的所有索引項(xiàng)以及聚合器返回給檢索者終端。在需要認(rèn)證的情況中,在執(zhí)行上述查找之前,服務(wù)器還可以對(duì)檢索者執(zhí)行身份認(rèn)證過(guò)程。如果服務(wù)器沒(méi)有找到匹配的索引條目或者檢索者的身份認(rèn)證失敗,服務(wù)器可以返回空結(jié)果或者進(jìn)入錯(cuò)誤處理,例如向檢索者終端發(fā)送通知等。在這種情況下,檢索者終端執(zhí)行相應(yīng)的錯(cuò)誤處理,例如重試或者結(jié)束過(guò)程。
如果服務(wù)器返回了檢索結(jié)果,在步驟S402,檢索者終端接收得到的一個(gè)或多個(gè)索引項(xiàng)和相應(yīng)的聚合器。
然后在步驟S403,檢索者終端的檢索信息提取單元302從所接收的每個(gè)索引項(xiàng)中提取檢索信息。如上所述,索引項(xiàng)可以是檢索信息本身,這種情況中,可以直接得到檢索信息。在索引項(xiàng)是檢索信息的加密形式或者是可經(jīng)過(guò)變換得到檢索信息的值的情況下,檢索信息提取單元302通過(guò)相應(yīng)的解密或變換過(guò)程提取檢索信息。解密或變換所需的參數(shù)可以從數(shù)據(jù)擁有者處獲得。
得到每個(gè)索引項(xiàng)中所包含的檢索信息之后,在步驟S404,檢索者終端的驗(yàn)證單元303利用所接收的聚合器來(lái)檢驗(yàn)檢索結(jié)果是否完整和正確。
如果檢驗(yàn)成功,則過(guò)程進(jìn)行到步驟S405,獲取的檢索信息可以被使用,例如用于根據(jù)檢索信息獲取相應(yīng)文件或者用于進(jìn)一步的信息處理。由于如何使用檢索信息與本發(fā)明并不直接相關(guān),因此附圖中并未繪出相應(yīng)的單元或模塊,并且在此省略對(duì)其的詳細(xì)描述。但是應(yīng)當(dāng)理解,可以根據(jù)實(shí)際的應(yīng)用添加任何必要的單元或模塊,執(zhí)行所需的過(guò)程。
如果驗(yàn)證失敗,則表明檢索結(jié)果不完整或者不正確。這可能是由于數(shù)據(jù)被篡改或者數(shù)據(jù)通信中出現(xiàn)錯(cuò)誤而造成的。在這種情況下,過(guò)程進(jìn)行到步驟S406,執(zhí)行錯(cuò)誤處理。例如,重新發(fā)送檢索請(qǐng)求,或者要求重傳,或者結(jié)束過(guò)程。
前述使用聚合器進(jìn)行驗(yàn)證的方法可以根據(jù)數(shù)據(jù)擁有者終端所采用的生成聚合器的方法來(lái)確定。
例如,驗(yàn)證單元303可以根據(jù)提取出的全部檢索信息,使用和數(shù)據(jù)擁有者終端所用的相同的方法計(jì)算一個(gè)聚合器,將該計(jì)算出的聚合器與從服務(wù)器接收的聚合器相比較。如果兩者一致,則驗(yàn)證成功;否則,驗(yàn)證失敗。下面給出幾個(gè)示例。
假設(shè)檢索信息提取單元從所接收的全部索引項(xiàng)中提取出了檢索信息I’1、I’2、...I’m。在聚合器是按照上述式(3)生成的情況下,驗(yàn)證單元303計(jì)算

并將IC’與從服務(wù)器接收的聚合器IC相比較。
類似地,在聚合器是按照上述式(4)生成的情況中,驗(yàn)證單元303計(jì)算

并將IC’與從服務(wù)器接收的聚合器IC相比較?;蛘?,在聚合器是按照上述式(5)生成的情況中。驗(yàn)證單元303計(jì)算

p,并將IC’與從服務(wù)器接收的聚合器IC相比較。
在聚合器是采用上述式(6)的聚合簽名形式生成的情況中,可以通過(guò)驗(yàn)證該聚合簽名來(lái)進(jìn)行驗(yàn)證。具體地,驗(yàn)證單元303計(jì)算

p,然后檢驗(yàn)是否存在如下關(guān)系e(IC′,g2)=e(IC,g2sk*g2K)。如果該關(guān)系成立,則驗(yàn)證成功;否則,驗(yàn)證失敗。
當(dāng)使用其他算法生成聚合器時(shí),驗(yàn)證單元303采用相應(yīng)的方法來(lái)利用聚合器驗(yàn)證獲取的檢索信息是否完整。
在一些情況中,索引需要被更新。例如,添加新的文件或者刪除已有文件時(shí),檢索信息發(fā)生變化,索引需要相應(yīng)地更新,以提供正確的檢索。根據(jù)文件的增刪,索引項(xiàng)被更新,同時(shí)相關(guān)索引條目中的聚合器也相應(yīng)地更新。
例如,如果新的檢索信息Ia需要被添加到與檢索項(xiàng)KW相對(duì)應(yīng)的索引條目中時(shí),利用上述式(3)計(jì)算的聚合器IC可以被更新為 式(7) 利用上式(4)計(jì)算的聚合器IC可以被更新為 ICupdated=(IC*Ia)mod p式(8) 利用上式(5)計(jì)算的聚合器IC可以被更新為 ICupdated=(IC+Ia)mod p式(9) 利用上式(6)計(jì)算的聚合器IC可以被更新為 ICupdated=[IC*H(Ia)1/(sk+K)]mod p式(10) 對(duì)于利用式(6)計(jì)算的聚合器IC,也可以采用如下方法進(jìn)行更新首先,選擇新的公共隨機(jī)數(shù)K’,然后如下計(jì)算更新的聚合器ICupdated ICupdated=[IC(sk+K)*H(Ia)mod p]1/(sk+K’) 式(11) 另一方面,如果已有的檢索信息Ib需要被從與檢索項(xiàng)KW相對(duì)應(yīng)的索引條目中刪除時(shí),利用上述式(3)計(jì)算的聚合器IC可以被更新為 式(12) 利用上式(4)計(jì)算的聚合器IC可以被更新為 ICupdated=(IC*Ib-1)mod p式(13) 利用上式(5)計(jì)算的聚合器IC可以被更新為 ICupdated=(IC-Ib)mod p式(14) 利用上式(6)計(jì)算的聚合器IC可以被更新為 ICupdated=[IC*H(Ib)-1/(sk+K)]mod p式(15) 對(duì)于利用式(6)計(jì)算的聚合器IC,也可以采用如下方法進(jìn)行更新首先,選擇新的公共隨機(jī)數(shù)K’,然后如下計(jì)算更新的聚合器ICupdated ICupdated=[IC(sk+K)*H(Ib)-1modp]1/(sk+K’) 式(16) 索引條目的更新可以由數(shù)據(jù)擁有者終端進(jìn)行,然后更新后的索引條目被發(fā)送到服務(wù)器用以代替之前的索引條目?;蛘撸驴梢杂煞?wù)器進(jìn)行。相應(yīng)地,可以在數(shù)據(jù)擁有者終端或者服務(wù)器中配置用于進(jìn)行索引更新的更新單元(未在圖中示出)。
根據(jù)本發(fā)明的在索引中使用的聚合器可以應(yīng)用于各種索引。例如,在加密索引中,可以同樣使用聚合器。例如,索引條目中的索引項(xiàng)是通過(guò)對(duì)包含檢索信息的信息進(jìn)行加密而得到的密文,并且通過(guò)對(duì)檢索信息進(jìn)行聚合得到聚合器,其中的檢索信息可以是加密后的文件的密文文件名。在這樣的加密索引中,除了數(shù)據(jù)擁有者和被授權(quán)的檢索者之外,其他方,包括服務(wù)器,無(wú)法通過(guò)對(duì)索引項(xiàng)進(jìn)行解密而得知檢索信息,也無(wú)法通過(guò)模擬加密過(guò)程而得到可正確解密的索引項(xiàng),因此避免了索引項(xiàng)和聚合器被篡改。
下面提供了一種快速密文檢索方法,其中使用了改進(jìn)的倒排加密索引,并利用聚合器來(lái)提供對(duì)檢索結(jié)果完整性的驗(yàn)證。
在該方法中,數(shù)據(jù)擁有者終端利用相同或不同的密鑰對(duì)每個(gè)文件進(jìn)行加密,然后將文件的密文存儲(chǔ)到服務(wù)器上。在本示例中,上述的檢索信息Ij是文件FILEj的加密后的文件名CFNj。根據(jù)加密后的文件名,服務(wù)器可以容易地在所存儲(chǔ)的加密文件中找到匹配的文件,將其提供給請(qǐng)求者。
在編制索引時(shí),對(duì)于作為檢索項(xiàng)的關(guān)鍵詞KW,數(shù)據(jù)擁有者終端通過(guò)對(duì)包含關(guān)鍵詞KW的信息進(jìn)行加密或者將包含關(guān)鍵詞KW的信息映射到一個(gè)值來(lái)計(jì)算檢索項(xiàng)標(biāo)識(shí),例如檢索項(xiàng)標(biāo)識(shí)被計(jì)算為KL=Hash(MEK‖KW),其中MEK是數(shù)據(jù)擁有者的主密鑰。
假設(shè)文件FILEj(j=1,2,...n)含有關(guān)鍵詞KW,數(shù)據(jù)擁有者終端如下計(jì)算與KW有關(guān)的FILEj的索引項(xiàng)FLj FLj=E(EKey,Ij‖Kfilej) 式(17) 其中,Kfilej是用于文件FILEj的解密密鑰,Ij是文件FILEj的加密文件名,EKey是數(shù)據(jù)擁有者設(shè)置的用于生成索引項(xiàng)的加密密鑰,E(EKey,Ij‖Kfilej)表示利用EKey對(duì)Ij和Kfilej的組合進(jìn)行加密。
然后,可以對(duì)Ij(j=1,2,...n)進(jìn)行聚合,生成對(duì)于檢索項(xiàng)KW的聚合器IC。例如,可以利用上述式(3)~(6)中任何一種方法,或者其他方法來(lái)進(jìn)行計(jì)算。
隨后,針對(duì)關(guān)鍵詞KW,生成至少包括了KL、FLj(j=1,2,...n)和IC的索引條目。由這樣的索引條目形成的加密倒排索引被存儲(chǔ)到服務(wù)器上。
如果數(shù)據(jù)擁有者希望使得一個(gè)檢索者能夠?qū)σ粋€(gè)關(guān)鍵詞進(jìn)行檢索,則數(shù)據(jù)擁有者以安全的方式向該檢索者授予該關(guān)鍵詞的檢索項(xiàng)標(biāo)識(shí)KL,并授權(quán)給該檢索者的用于解密索引項(xiàng)的解密密鑰DKey。
在檢索時(shí),檢索者終端將含有檢索項(xiàng)標(biāo)識(shí)KL的檢索請(qǐng)求發(fā)送給服務(wù)器。服務(wù)器根據(jù)接收的檢索項(xiàng)標(biāo)識(shí)KL,在所存儲(chǔ)的加密索引中找到匹配的索引條目,然后將匹配的索引條目中所包含的全部索引項(xiàng)FLj以及聚合器IC返回給檢索者終端。
在從服務(wù)器接收到各個(gè)索引項(xiàng)FLj之后,檢索者終端利用由數(shù)據(jù)擁有者所授予的用于解密索引項(xiàng)的解密密鑰DKey,每個(gè)索引項(xiàng)FLj進(jìn)行解密,以獲得加密文件名和相應(yīng)的文件解密密鑰,即Ij和Kfilej。
然后,數(shù)據(jù)擁有者終端利用所接收的聚合器IC檢驗(yàn)獲取的Ij是否完整。如果檢驗(yàn)成功,檢索者終端可以相應(yīng)地使用這些Ij,例如將Ij發(fā)送到服務(wù)器以獲取具有相應(yīng)加密文件名的加密文件,然后利用相應(yīng)的文件解密密鑰Kfilej對(duì)加密文件進(jìn)行解密,從而得到文件的明文。如果驗(yàn)證失敗,可以進(jìn)行上述的錯(cuò)誤處理。
在上述的方案中,文件和索引信息都以加密形式存儲(chǔ)在服務(wù)器上,從而避免了文件信息暴露給服務(wù)器。
在上述示例的一種改進(jìn)形式中,代替直接使用檢索信息Ij來(lái)計(jì)算聚合器,可以使用包含檢索信息Ij的信息的密文或者從包含檢索信息Ij的信息映射而來(lái)的數(shù)據(jù)來(lái)代替上述計(jì)算、驗(yàn)證和更新聚合器IC時(shí)所使用的Ij。例如,在計(jì)算聚合器時(shí)使用Ij’=Ij‖X代替上述Ij,其中X可以是任意預(yù)定信息,例如上述示例中的DKey。又例如,在上述利用異或、取模等算法計(jì)算聚合器時(shí),可以使用Ij’=Ij‖X來(lái)代替式中的Ij,其中X可以是任意預(yù)定信息,例如上述示例中的DKey。
如前文所述,由于索引項(xiàng)是對(duì)包含檢索信息的信息的密文形式,而聚合器是對(duì)檢索信息進(jìn)行聚合而得到了,因此未被授權(quán)的第三方無(wú)法篡改索引項(xiàng)或聚合器。
在另一種改進(jìn)形式中,數(shù)據(jù)擁有者可以設(shè)置不同的隱私級(jí)別,并對(duì)不同的每個(gè)隱私級(jí)別設(shè)置不同的索引項(xiàng)加密和解密密鑰EKey和DKey。在生成索引時(shí),對(duì)于可以在某個(gè)隱私級(jí)別公開的文件,使用該隱私級(jí)別的索引項(xiàng)加密密鑰來(lái)生成對(duì)應(yīng)該文件的索引項(xiàng)。從而,在與一個(gè)檢索項(xiàng)(關(guān)鍵詞)相對(duì)應(yīng)的索引條目中,可以存在多個(gè)不同隱私級(jí)別的索引項(xiàng)。在這種情況中,為每個(gè)隱私級(jí)別的索引項(xiàng)都生成一個(gè)聚合器。也就是說(shuō),在與一個(gè)檢索項(xiàng)相對(duì)應(yīng)的索引條目中,通過(guò)聚集屬于同一隱私級(jí)別的所有索引項(xiàng)中所包含的檢索信息來(lái)生成該級(jí)別的聚合器。從而,存在針對(duì)不同隱私級(jí)別的多個(gè)聚合器。
在上述改進(jìn)形式中,數(shù)據(jù)擁有者按照隱私級(jí)別對(duì)檢索者授權(quán),即,將適應(yīng)于檢索者隱私級(jí)別的索引項(xiàng)解密密鑰DKey授予該檢索者。在檢索時(shí),檢索者利用所授予的索引項(xiàng)解密密鑰DKey可以對(duì)從服務(wù)器得到的全部索引項(xiàng)中利用相同隱私級(jí)別索引項(xiàng)加密密鑰生成的索引項(xiàng)進(jìn)行解密,得到該隱私級(jí)別的與檢索項(xiàng)相關(guān)的檢索信息。可以通過(guò)在索引項(xiàng)中設(shè)置預(yù)定標(biāo)志來(lái)驗(yàn)證解密的正確性。例如,如下生成索引項(xiàng) FLj=E(EKey,F(xiàn)LAG‖Ij‖Kfilej) 式(18) 其中,F(xiàn)LAG是檢索者已知的參數(shù)。這樣,檢索者通過(guò)檢查解密后的信息中是否存在正確的FLAG,可以確定是否進(jìn)行了正確的解密。
并且,通過(guò)解密得到了相應(yīng)隱私級(jí)別的檢索信息之后,檢索者利用接收的相應(yīng)隱私級(jí)別的聚合器來(lái)驗(yàn)證該隱私級(jí)別的檢索信息是否完整。檢索者可以利用索引條目中包括的多個(gè)聚合器來(lái)進(jìn)行檢驗(yàn),只要其中一個(gè)檢驗(yàn)成功,就代表驗(yàn)證通過(guò)。這是因?yàn)橛?jì)算出的聚合器與不相應(yīng)的隱私級(jí)別的聚合器相等的概率極低?;蛘撸饕龡l目可以分段排列,即,同一隱私級(jí)別的索引項(xiàng)和聚合器放在同一段中,從而使得檢索者能夠通過(guò)判斷哪段索引項(xiàng)被成功解密而確定使用哪個(gè)聚合器進(jìn)行檢驗(yàn)?;蛘?,可以對(duì)聚合器附加其他信息,例如表示隱私級(jí)別的參數(shù),以幫助檢索者確定應(yīng)當(dāng)使用哪個(gè)聚合器?;蛘?,在執(zhí)行檢索時(shí),服務(wù)器可以執(zhí)行確認(rèn)檢索者隱私級(jí)別的過(guò)程,然后根據(jù)檢索者的隱私級(jí)別,向檢索者返回相應(yīng)隱私級(jí)別的聚合器。這種情況中,不需要檢索者選擇聚合器的處理。
上面已經(jīng)參考附圖描述了根據(jù)本發(fā)明的一些具體示例。但是,本發(fā)明并非要受到上述實(shí)施例中描述的任何具體配置和過(guò)程的限制。在本發(fā)明的精神的范圍之內(nèi),本領(lǐng)域技術(shù)人員能夠認(rèn)識(shí)到上述配置、算法、操作和過(guò)程的各種替換、改變或修改。例如,上面具體描述了倒排索引的示例,但是本發(fā)明也可以應(yīng)用于正排索引。例如,上述示例中的檢索項(xiàng)是文件名或加密后的文件名,檢索信息是文件中所包含的關(guān)鍵詞或加密后的關(guān)鍵詞等。在正排索引中,可以類似地應(yīng)用聚合器。又例如,上述給出的示例中,索引條目至少包括了檢索項(xiàng)標(biāo)識(shí)、索引項(xiàng)以及聚合器。但是,可以認(rèn)識(shí)到,取決于應(yīng)用的需要,還可以在索引條目中添加任意需要的其他信息或數(shù)據(jù)。
在本說(shuō)明書中使用的所謂的“文件”應(yīng)當(dāng)被理解為是廣義的概念,其包括但不限于例如文本文件、視頻/音頻文件、圖像/圖表以及任何其他數(shù)據(jù)或信息。
作為數(shù)據(jù)擁有者終端、檢索者終端和服務(wù)器的示例性配置,圖中已經(jīng)示出了一些耦合在一起的單元。這些單元可以利用總線或者任何其他信號(hào)線或者通過(guò)任何無(wú)線連接來(lái)耦合,以在其間傳輸信號(hào)。然而,每個(gè)設(shè)備中所包括的部件并不限于上述這些單元,具體的配置可以被修改或改變。每個(gè)設(shè)備還可以包括其他單元,例如用于向設(shè)備的操作者顯示信息的顯示單元、用于接收操作者的輸入的輸入單元、用于控制每個(gè)單元的操作的控制單元、任何需要的存儲(chǔ)或處理裝置等等。由于這些部件是本領(lǐng)域中公知的,因此沒(méi)有對(duì)其進(jìn)行詳細(xì)的描述,本領(lǐng)域的技術(shù)人員將容易地考慮到將它們添加到上述設(shè)備中。另外,雖然所描述的單元在附圖中被示出為是分別的單元,但是它們中的任何一個(gè)可以與其他單元相結(jié)合作為一個(gè)部件,或者可以被分割為多個(gè)部件。
此外,數(shù)據(jù)擁有者終端、檢索者終端和服務(wù)器在上述示例中被描述為分別的設(shè)備,其可以在通信網(wǎng)絡(luò)中彼此遠(yuǎn)程地放置。但是,它們可以組合為一個(gè)設(shè)備來(lái)增強(qiáng)功能性。例如,數(shù)據(jù)擁有者終端和檢索者終端可以被組合,以創(chuàng)建新的設(shè)備,其在一些情況中是數(shù)據(jù)擁有者終端而在另一些情況中能夠作為檢索者終端而執(zhí)行檢索。又例如,服務(wù)器和數(shù)據(jù)擁有者終端或者檢索者終端可以被組合,如果在某個(gè)應(yīng)用中它扮演這兩個(gè)角色。同樣,可以創(chuàng)建在不同事務(wù)中扮演數(shù)據(jù)擁有者終端、檢索者終端和服務(wù)器的設(shè)備。
上述的通信網(wǎng)絡(luò)可以是任何類型的網(wǎng)絡(luò),包括任何種類的電信網(wǎng)絡(luò)或者計(jì)算機(jī)網(wǎng)絡(luò)。當(dāng)數(shù)據(jù)擁有者終端、檢索者終端和服務(wù)器被實(shí)現(xiàn)為單個(gè)設(shè)備的一部分是,上述通信網(wǎng)絡(luò)還可以包括任何內(nèi)部數(shù)據(jù)傳輸機(jī)制,例如,數(shù)據(jù)總線或集線器。
本發(fā)明的元素可以實(shí)現(xiàn)為硬件、軟件、固件或者它們的組合,并且可以用在它們的系統(tǒng)、子系統(tǒng)、部件或者子部件中。當(dāng)以軟件方式實(shí)現(xiàn)時(shí),本發(fā)明的元素是被用于執(zhí)行所需任務(wù)的程序或者代碼段。程序或者代碼段可以存儲(chǔ)在機(jī)器可讀介質(zhì)中,或者通過(guò)載波中攜帶的數(shù)據(jù)信號(hào)在傳輸介質(zhì)或者通信鏈路上傳送?!皺C(jī)器可讀介質(zhì)”可以包括能夠存儲(chǔ)或傳輸信息的任何介質(zhì)。機(jī)器可讀介質(zhì)的例子包括電子電路、半導(dǎo)體存儲(chǔ)器設(shè)備、ROM、閃存、可擦除ROM(EROM)、軟盤、CD-ROM、光盤、硬盤、光纖介質(zhì)、射頻(RF)鏈路,等等。代碼段可以經(jīng)由諸如因特網(wǎng)、內(nèi)聯(lián)網(wǎng)等的計(jì)算機(jī)網(wǎng)絡(luò)被下載。
本發(fā)明可以以其他的具體形式實(shí)現(xiàn),而不脫離其精神和本質(zhì)特征。例如,特定實(shí)施例中所描述的算法可以被修改,而系統(tǒng)體系結(jié)構(gòu)并不脫離本發(fā)明的基本精神。因此,當(dāng)前的實(shí)施例在所有方面都被看作是示例性的而非限定性的,本發(fā)明的范圍由所附權(quán)利要求而非上述描述定義,并且,落入權(quán)利要求的含義和等同物的范圍內(nèi)的全部改變從而都被包括在本發(fā)明的范圍之中。
權(quán)利要求
1.一種生成索引的方法,包括
生成對(duì)應(yīng)于檢索項(xiàng)的檢索項(xiàng)標(biāo)識(shí);
根據(jù)與所述檢索項(xiàng)相關(guān)的一條或多條檢索信息,生成一個(gè)或多個(gè)索引項(xiàng);
生成所述一條或多條檢索信息的聚合器;以及
至少利用所述檢索項(xiàng)標(biāo)識(shí)、所述一個(gè)或多個(gè)索引項(xiàng)以及所述聚合器生成索引條目,從而形成索引。
2.根據(jù)權(quán)利要求1所述的方法,其中,生成聚合器包括利用聚合簽名、異或運(yùn)算、取模運(yùn)算中的至少一種聚合所述一條或多條檢索信息。
3.根據(jù)權(quán)利要求1所述的方法,其中,所述檢索項(xiàng)是關(guān)鍵詞,所述檢索信息是包含所述關(guān)鍵詞的文件的加密文件名。
4.根據(jù)權(quán)利要求1所述的方法,其中,生成檢索項(xiàng)標(biāo)識(shí)包括生成包含所述檢索項(xiàng)的信息的密文,或者生成從包含所述檢索項(xiàng)的信息映射得的數(shù)據(jù)。
5.根據(jù)權(quán)利要求1所述的方法,其中,生成索引項(xiàng)包括生成所述檢索信息的信息的密文。
6.根據(jù)權(quán)利要求1所述的方法,其中,生成索引項(xiàng)包括用索引項(xiàng)加密密鑰對(duì)包含相應(yīng)檢索信息的信息進(jìn)行加密。
7.根據(jù)權(quán)利要求1所述的方法,其中,生成聚合器包括聚合包含所述檢索信息的信息的密文,或者聚合從包含所述檢索信息的信息映射而來(lái)的數(shù)據(jù)。
8.根據(jù)權(quán)利要求1所述的方法,還包括當(dāng)添加或刪除檢索信息時(shí),更新所述聚合器。
9.根據(jù)權(quán)利要求8所述的方法,其中,所述聚合器被計(jì)算為
其中I1、I2、...I0是要被聚合的檢索信息,
表示異或運(yùn)算,并且,所述更新包括
當(dāng)添加或刪除檢索信息Ia時(shí),將所述聚合器更新為
10.根據(jù)權(quán)利要求8所述的方法,其中,所述聚合器被計(jì)算為
其中Ii是要被聚合的檢索信息,p是大素?cái)?shù),并且,所述更新包括
當(dāng)添加檢索信息Ia時(shí),將所述聚合器更新為ICupdated=(IC*Ia)modp;以及
當(dāng)刪除檢索信息Ib時(shí),將所述聚合器更新為
11.根據(jù)權(quán)利要求8所述的方法,其中,所述聚合器被計(jì)算為
其中Ij是要被聚合的檢索信息,p是大素?cái)?shù),并且,所述更新包括
當(dāng)添加檢索信息Ia時(shí),將所述聚合器更新為ICupdated=(IC+Ia)modp;以及
當(dāng)刪除檢索信息Ib時(shí),將所述聚合器更新為ICupdated=(IC-Ib)mod。
12.根據(jù)權(quán)利要求8所述的方法,其中,所述聚合器被計(jì)算為
并且g2和K被公布,或者g2k被公布,其中Ij是要被聚合的檢索信息,sk是密鑰,p是大素?cái)?shù),H是將串映射到G1的哈希函數(shù),K是Zp*中的隨機(jī)數(shù),Zp*是所有小于p且與p互素的正整數(shù)的集合,g2是G2的生成元,G1和G2是同為p階的群,存在關(guān)于G1和G2的雙線性映射,并且,所述更新包括
當(dāng)添加檢索信息Ia時(shí),將所述聚合器更新為ICupdated=[IC(sk+K)*H(Ia)modp]1/(sk+K’),并公布K’或者g2k’,其中K’是Zp*中與K不同的隨機(jī)數(shù);以及
當(dāng)刪除檢索信息Ib時(shí),將所述聚合器更新為ICupdated=[IC(sk+K’)*H(Ib)-1modp]1/(sk+K’),并公布K’或者g2k’,其中K’是Zp*中與K不同的隨機(jī)數(shù)。
13.一種用于生成索引的裝置,包括
檢索項(xiàng)標(biāo)識(shí)生成單元,適合于生成對(duì)應(yīng)于檢索項(xiàng)的檢索項(xiàng)標(biāo)識(shí);
索引項(xiàng)生成單元,適合于根據(jù)與所述檢索項(xiàng)相關(guān)的一條或多條檢索信息,生成一個(gè)或多個(gè)索引項(xiàng);
聚合器生成單元,適合于生成所述一條或多條檢索信息的聚合器;以及
索引形成單元,適合于至少利用所述檢索項(xiàng)標(biāo)識(shí)、所述一個(gè)或多個(gè)索引項(xiàng)以及所述聚合器生成索引條目,從而形成索引。
14.根據(jù)權(quán)利要求13所述的裝置,其中,所述聚合器生成單元被配置為通過(guò)利用聚合簽名、異或運(yùn)算、取模運(yùn)算中的至少一種聚合所述一條或多條檢索信息,來(lái)生成所述聚合器。
15.根據(jù)權(quán)利要求13所述的裝置,其中,所述檢索項(xiàng)是關(guān)鍵詞,所述檢索信息是包含所述關(guān)鍵詞的文件的加密文件名。
16.根據(jù)權(quán)利要求13所述的裝置,其中,所述檢索項(xiàng)標(biāo)識(shí)生成單元被配置為通過(guò)生成包含所述檢索項(xiàng)的信息的密文,或者生成從包含所述檢索項(xiàng)的信息映射得的數(shù)據(jù),來(lái)生成所述檢索項(xiàng)標(biāo)識(shí)。
17.根據(jù)權(quán)利要求13所述的裝置,其中,所述索引項(xiàng)生成單元被配置為通過(guò)生成所述檢索信息的數(shù)據(jù)的密文,來(lái)生成所述索引項(xiàng)。
18.根據(jù)權(quán)利要求13所述的裝置,其中,所述索引項(xiàng)生成單元被配置為通過(guò)用索引項(xiàng)加密密鑰對(duì)包含相應(yīng)檢索信息的信息進(jìn)行加密,來(lái)生成所述索引項(xiàng)。
19.根據(jù)權(quán)利要求13所述的裝置,其中,所述聚合器生成單元被配置為通過(guò)聚合包含所述檢索信息的信息的密文,或者聚合從包含所述檢索信息的信息映射而來(lái)的數(shù)據(jù),來(lái)生成所述聚合器。
20.根據(jù)權(quán)利要求13所述的裝置,還包括更新單元,適合于當(dāng)添加或刪除檢索信息時(shí),更新所述聚合器。
21.根據(jù)權(quán)利要求20所述的裝置,其中,所述聚合器生成單元被配置為將所述聚合器計(jì)算為
其中I1、I2、...In是要被聚合的檢索信息,
表示異或運(yùn)算,并且,所述更新單元被配置為當(dāng)檢索信息Ia被添加或刪除時(shí),將所述聚合器更新為
22.根據(jù)權(quán)利要求20所述的裝置,其中,所述聚合器生成單元被配置為將所述聚合器計(jì)算為
其中Ij是要被聚合的檢索信息,p是大素?cái)?shù),
并且,所述更新單元被配置為當(dāng)檢索信息Ia被添加時(shí),將所述聚合器更新為ICupdated=(IC*Ia)modp;并且當(dāng)檢索信息Ib被刪除時(shí),將所述聚合器更新為
23.根據(jù)權(quán)利要求20所述的裝置,其中,所述聚合器生成單元被配置為將所述聚合器計(jì)算為
其中Ij是要被聚合的檢索信息,p是大素?cái)?shù),
并且,所述更新單元被配置為當(dāng)檢索信息Ia被添加時(shí),將所述聚合器更新為ICupdated=(IC+Ia)modp;并且當(dāng)檢索信息Ib被刪除時(shí),將所述聚合器更新為ICupdated=(IC-Ib)modp。
24.根據(jù)權(quán)利要求20所述的裝置,其中,所述聚合器生成單元被配置為將所述聚合器計(jì)算為
并公布g2和K,或者公布g2k,其中Ij是要被聚合的檢索信息,sk是密鑰,p是大素?cái)?shù),H是將串映射到G1的哈希函數(shù),K是Zp*中的隨機(jī)數(shù),Zp*是所有小于p且與p互素的正整數(shù)的集合,g2是G2的生成元,G1和G2是同為p階的群,存在關(guān)于G1和G2的雙線性映射,
并且,所述更新單元被配置為當(dāng)檢索信息Ia被添加時(shí),將所述聚合器更新為ICupdated=[IC(sk+K’)*H(Ia)modp]1/(sk+K’),并公布K’或者g2k’;并且檢索信息Ib被刪除時(shí),將所述聚合器更新為ICupdated=[IC(sk+K’)*H(Ib)-1 modp]1/(sk+K’),并公布K’或者g2k’,其中K’是Zp*中與K不同的隨機(jī)數(shù)。
25.一種檢索方法,包括
生成檢索請(qǐng)求;
接收一個(gè)或多個(gè)索引項(xiàng)和聚合器;
從所述接收的一個(gè)或多個(gè)索引項(xiàng)提取一條或多條檢索信息;以及
利用所述接收的聚合器驗(yàn)證所述提取的檢索信息。
26.根據(jù)權(quán)利要求25所述的方法,其中,驗(yàn)證檢索信息包括根據(jù)所述提取的檢索信息計(jì)算聚合器,并用所述接收的聚合器檢驗(yàn)所述計(jì)算出的聚合器。
27.根據(jù)權(quán)利要求25所述的方法,其中,驗(yàn)證檢索信息包括驗(yàn)證聚合簽名。
28.根據(jù)權(quán)利要求25所述的方法,其中,提取檢索信息包括解密所述一個(gè)或多個(gè)索引項(xiàng)。
29.根據(jù)權(quán)利要求26所述的方法,其中,計(jì)算聚合器包括利用聚合簽名、異或運(yùn)算、取模運(yùn)算中的至少一種聚合所述檢索信息
30.根據(jù)權(quán)利要求26所述的方法,其中,計(jì)算聚合器包括聚合包含所述檢索信息的信息的密文,或者聚合從包含所述檢索信息的信息映射而來(lái)的數(shù)據(jù)。
31.一種檢索裝置,包括
檢索請(qǐng)求單元,適合于生成檢索請(qǐng)求;
檢索信息提取單元,適合于從接收的一個(gè)或多個(gè)索引項(xiàng)提取一條或多條檢索信息;以及
驗(yàn)證單元,適合于利用接收的聚合器驗(yàn)證所述提取的檢索信息。
32.根據(jù)權(quán)利要求31所述的裝置,其中,所述驗(yàn)證單元被配置為根據(jù)所述提取的檢索信息計(jì)算聚合器,并用所述接收的聚合器檢驗(yàn)所述計(jì)算出的聚合器。
33.根據(jù)權(quán)利要求31所述的裝置,其中,所述驗(yàn)證單元被配置為驗(yàn)證聚合簽名。
34.根據(jù)權(quán)利要求31所述的裝置,其中,所述檢索信息提取單元被配置為通過(guò)解密所述一個(gè)或多個(gè)索引項(xiàng),來(lái)提取所述檢索信息。
35.根據(jù)權(quán)利要求32所述的裝置,其中,所述驗(yàn)證單元被配置為通過(guò)利用聚合簽名、異或運(yùn)算、取模運(yùn)算中的至少一種聚合所述檢索信息,來(lái)計(jì)算聚合器。
36.根據(jù)權(quán)利要求32所述的裝置,其中,所述驗(yàn)證單元被配置為通過(guò)聚合包含所述檢索信息的信息的密文,或者聚合從包含所述檢索信息的信息映射而來(lái)的數(shù)據(jù),來(lái)計(jì)算所述聚合器。
全文摘要
本發(fā)明提供了一種生成索引的方法和裝置以及檢索方法和裝置。索引條目至少包括對(duì)應(yīng)于檢索項(xiàng)的檢索項(xiàng)標(biāo)識(shí)、根據(jù)與檢索項(xiàng)相關(guān)的一條或多條檢索信息而生成的一個(gè)或多個(gè)索引項(xiàng)、以及關(guān)于檢索信息的聚合器。通過(guò)聚合檢索信息,或者聚合包含檢索信息的信息的密文,或者聚合從包含檢索信息的信息映射而來(lái)的數(shù)據(jù),來(lái)得到聚合器。檢索時(shí),索引項(xiàng)和聚合器被提供給檢索者,檢索者從索引項(xiàng)提取檢索信息,并利用聚合器驗(yàn)證所提取的檢索信息是否完整。在一個(gè)實(shí)施例中,聚合器被加在加密倒排索引中。
文檔編號(hào)G06F17/30GK101739400SQ20081017272
公開日2010年6月16日 申請(qǐng)日期2008年11月11日 優(yōu)先權(quán)日2008年11月11日
發(fā)明者雷浩, 田野, 曾珂, 王利明, 福島俊一 申請(qǐng)人:日電(中國(guó))有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
同江市| 子长县| 雷州市| 读书| 自治县| 元阳县| 昭觉县| 铅山县| 岳普湖县| 友谊县| 肇庆市| 鹿邑县| 班玛县| 涞源县| 临清市| 澄城县| 成都市| 富裕县| 获嘉县| 宜兴市| 达日县| 疏勒县| 榆林市| 邵武市| 义马市| 灵台县| 历史| 吉安市| 东山县| 尚志市| 辉南县| 织金县| 沙雅县| 正蓝旗| 东明县| 龙胜| 县级市| 二连浩特市| 五华县| 旬阳县| 沂水县|