專利名稱:用于密文索引和檢索的裝置和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及信息獲取技術(shù),尤其涉及生成和使用用于密文檢索的多級(jí)索引的方法
和裝置。
背景技術(shù):
存儲(chǔ)外包服務(wù)和網(wǎng)絡(luò)存儲(chǔ)服務(wù)已經(jīng)成為重要的研究課題。面對(duì)信息浪潮,很多業(yè)務(wù)都選擇將數(shù)據(jù)存儲(chǔ)和存儲(chǔ)管理外包。隨著數(shù)據(jù)外包業(yè)務(wù)變得越來(lái)越流行,密文檢索技術(shù)成為研究的熱點(diǎn)。然而,存儲(chǔ)技術(shù)的復(fù)雜度越來(lái)越高,數(shù)據(jù)量不斷地增長(zhǎng),數(shù)據(jù)安全和業(yè)務(wù)連續(xù)性的空前的重要性,這些都給檢索技術(shù)帶來(lái)困難。 已經(jīng)存在一些密文檢索技術(shù)。通常的做法是通過(guò)加密倒排索引來(lái)執(zhí)行檢索。 一般,用戶首先生成用于加密的密鑰,并從給定文檔中提取關(guān)鍵詞和文件信息。然后,用戶利用密鑰對(duì)關(guān)鍵詞和文件信息進(jìn)行加密,以生成加密倒排索引。加密后的文件和加密倒排索引被存儲(chǔ)在服務(wù)器上。檢索時(shí),用戶首先獲得密鑰,利用關(guān)鍵詞的密文在服務(wù)器上的加密倒排索引中執(zhí)行查找,從匹配的項(xiàng)中得到相關(guān)文件信息,從而獲取相應(yīng)的文檔。
例如,在題為"密文全文檢索技術(shù)"的中國(guó)專利申請(qǐng)公開(kāi)CN1588365A中,發(fā)明人李新提出了一種密文檢索技術(shù)。在加密階段,用戶生成密鑰;用密鑰對(duì)索引詞進(jìn)行加密以生成密文索引文件;并用同一密鑰對(duì)文件進(jìn)行加密處理以生成文件密文;然后,用戶用自己的公鑰對(duì)該密鑰加密以生成密鑰密文;最后,密文索引文件、文件密文和密鑰密文保持到密文庫(kù)中。在檢索階段,首先從密文庫(kù)下載密鑰密文;利用私鑰進(jìn)行解密得到密鑰;用密鑰對(duì)檢索詞加密,得到檢索詞密文;將檢索詞密文發(fā)送到密文庫(kù),在密文索引文件中進(jìn)行查找;下載匹配的文件密文,并用密鑰進(jìn)行解密,得到文件明文。 但是,當(dāng)索引需要被更新時(shí),傳統(tǒng)的方法存在各種缺點(diǎn)。為了更新加密倒排索引,用戶必須從服務(wù)器下載文件,重建加密索引,再將重建的索引上載到服務(wù)器上,即使文件的內(nèi)容沒(méi)有改變。 另外,根據(jù)上面所描述的方法,即使關(guān)鍵詞和文件都被加密,只要文件被移動(dòng)或改名,存儲(chǔ)服務(wù)器就可能觀察到關(guān)鍵詞和文件之間的關(guān)聯(lián)。這意味著存在直接的隱私漏洞。其次,用戶下載的文件的原因是要重建加密倒排索引。這帶來(lái)了明顯的計(jì)算開(kāi)銷。再者,用戶使用一個(gè)密鑰對(duì)所有文件進(jìn)行加密。在大多數(shù)情況下,文件加密使用流式密碼。對(duì)多于一個(gè)文件使用單個(gè)密鑰進(jìn)行加密是公知的不安全的方式。另外,用戶使用一個(gè)密鑰來(lái)既對(duì)文件加密也對(duì)關(guān)鍵詞加密。檢索者僅用一個(gè)關(guān)鍵詞對(duì)用戶的文件進(jìn)行了檢索之后,就有可能獲取用戶的全部文件。這也是不安全的。
發(fā)明內(nèi)容
本發(fā)明提供了一種多級(jí)加密索引,其提供了良好的安全性和隱私性,并使得可能進(jìn)行簡(jiǎn)便的更新。 根據(jù)本發(fā)明的一個(gè)方面,提供了一種用于密文索引的裝置,包括主索引單元,被配置為生成主索引,其中每個(gè)主索引條目與一個(gè)關(guān)鍵詞相關(guān)聯(lián),并至少包括主索引條目標(biāo)識(shí)符以及與所述關(guān)鍵詞相關(guān)的每個(gè)文件的主索引信息的密文;和副索引單元,被配置為生成一級(jí)或多級(jí)副索引,其中每個(gè)副索引條目至少包括副索引條目標(biāo)識(shí)符和副索引信息的密文,其中,每條主索引信息至少包括相關(guān)聯(lián)的第一級(jí)副索引條目的副索引條目標(biāo)識(shí)符和副索引信息解密信息,每條副索引信息至少包括密文的解密信息或者相關(guān)聯(lián)的下一級(jí)副索引條目的副索引條目標(biāo)識(shí)符和副索引信息解密信息。 根據(jù)本發(fā)明的另一個(gè)方面,提供了一種密文索引方法,包括生成主索引,其中每個(gè)主索引條目與一個(gè)關(guān)鍵詞相關(guān)聯(lián),并至少包括主索引條目標(biāo)識(shí)符以及與所述關(guān)鍵詞相關(guān)的每個(gè)文件的主索引信息的密文;和生成一級(jí)或多級(jí)副索引,其中每個(gè)副索引條目至少包括副索引條目標(biāo)識(shí)符和副索引信息的密文,其中,每條主索引信息至少包括相關(guān)聯(lián)的第一級(jí)副索引條目的副索引條目標(biāo)識(shí)符和副索引信息解密信息,每條副索引信息至少包括密文的解密信息或者相關(guān)聯(lián)的下一級(jí)副索引條目的副索引條目標(biāo)識(shí)符和副索引信息解密信息。
根據(jù)本發(fā)明的另一個(gè)方面,提供了一種用于密文檢索的裝置,包括主檢索請(qǐng)求單元,被配置為生成包括主索引條目標(biāo)識(shí)符的主檢索請(qǐng)求;主索引信息解密單元,被配置為對(duì)響應(yīng)于所述主檢索請(qǐng)求而接收到的主索引信息密文進(jìn)行解密,以得到主索引信息;副檢索請(qǐng)求單元,被配置為根據(jù)所述主索引信息中所包括的副索引條目標(biāo)識(shí)符生成副檢索請(qǐng)求;副索引信息解密單元,被配置為利用所述主索引信息中所包括的副索引信息解密信息,對(duì)響應(yīng)于所述副檢索請(qǐng)求而接收到的副索引信息密文進(jìn)行解密;和文件獲取單元,被配置為根據(jù)所述主索引信息和所述副索引信息中所包括的文件獲取信息和解密密鑰,獲取文件密文并解密。 根據(jù)本發(fā)明的另一個(gè)方面,提供了一種用于密文檢索的方法,包括生成包括主索引條目標(biāo)識(shí)符的主檢索請(qǐng)求;接收主索引信息密文;對(duì)主索引信息密文進(jìn)行解密,得到主索引信息;根據(jù)所述主索引信息中所包括的副索引條目標(biāo)識(shí)符生成副檢索請(qǐng)求;接收副索引信息密文;利用所述主索引信息中所包括的副索引信息解密信息,對(duì)所述副索引信息密文進(jìn)行解密;以及根據(jù)所述主索引信息和所述副索引信息中所包括的文件獲取信息和解密密鑰,獲取文件密文并解密。 根據(jù)本發(fā)明的另一個(gè)方面,提供了一種用于密文檢索的裝置,包括主檢索單元,被配置為根據(jù)主索引條目標(biāo)識(shí)符在主索引中查找匹配的主索引條目,并發(fā)送所述主索引條目中的主索引信息密文;和副檢索單元,被配置為根據(jù)副索引條目標(biāo)識(shí)符在副索引中查找匹配的副索引條目,并發(fā)送所述副索引條目中的副索引信息密文。 根據(jù)本發(fā)明的另一個(gè)方面,提供了一種用于密文檢索的方法,包括根據(jù)主索引條目標(biāo)識(shí)符在主索引中查找匹配的主索引條目;發(fā)送所述主索引條目中的主索引信息密文;根據(jù)副索引條目標(biāo)識(shí)符在副索引中查找匹配的副索引條目;以及發(fā)送所述副索引條目中的副索引信息密文。
從下面結(jié)合附圖對(duì)本發(fā)明優(yōu)選實(shí)施例的描述中可以更好地理解本發(fā)明,附圖中類似的參考標(biāo)號(hào)表示類似的部分,其中 圖1是圖1示意性地示出了一個(gè)系統(tǒng)的示例框 圖2是示意性地示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的用戶裝置的配置示例的框圖; 圖3是示意性地示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的生成多級(jí)加密索引的過(guò)程的流程圖; 圖4是示意性地示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的檢索者裝置的配置示例的框圖; 圖5是示意性地示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的服務(wù)器的配置示例的框圖;以及 圖6是示意性地示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的檢索過(guò)程的流程圖。
具體實(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所示,一個(gè)或多個(gè)用戶終端和提供存儲(chǔ)服務(wù)的服務(wù)器可例如經(jīng)由網(wǎng)絡(luò)彼此通信。 應(yīng)當(dāng)注意,這里所使用的術(shù)語(yǔ)"服務(wù)器"可以是提供存儲(chǔ)服務(wù)和檢索服務(wù)兩者的單個(gè)裝置,或者彼此相鄰或遠(yuǎn)程的一組多個(gè)裝置,每個(gè)負(fù)責(zé)不同的服務(wù),例如存儲(chǔ)、數(shù)據(jù)檢索、用戶管理等等,或者分擔(dān)服務(wù)。例如,文件存儲(chǔ)在存儲(chǔ)服務(wù)器上,而索引存儲(chǔ)在與存儲(chǔ)服務(wù)器通信的檢索服務(wù)器上。為了簡(jiǎn)化說(shuō)明,在圖中和下面的描述中,將這樣的設(shè)備統(tǒng)稱為"服務(wù)器"。 服務(wù)器一般實(shí)現(xiàn)為由服務(wù)提供者管理的能夠存儲(chǔ)和維護(hù)數(shù)據(jù),并且使得終端能夠有條件地訪問(wèn)數(shù)據(jù)的設(shè)備或一組設(shè)備。用戶終端可以實(shí)現(xiàn)為能夠處理信息和進(jìn)行信息通信的設(shè)備,例如個(gè)人計(jì)算機(jī)(PC)、個(gè)人數(shù)字助理(PDA)、智能電話等等小型設(shè)備,也可以是用戶操作的服務(wù)器或企業(yè)工作站等,或者其他數(shù)據(jù)處理設(shè)備。注意,服務(wù)設(shè)備和用戶設(shè)備的具體體現(xiàn)不受到任何具體形式的限制。 圖1中的網(wǎng)絡(luò)可以是任何類型的網(wǎng)絡(luò),包括任何種類的電信網(wǎng)絡(luò)或者計(jì)算機(jī)網(wǎng)絡(luò)。當(dāng)各個(gè)終端被實(shí)現(xiàn)為單個(gè)設(shè)備的一部分時(shí),上述網(wǎng)絡(luò)還可以包括任何內(nèi)部數(shù)據(jù)傳輸機(jī)制,例如,數(shù)據(jù)總線或集線器。 在根據(jù)本發(fā)明的系統(tǒng)中,與傳統(tǒng)密文檢索技術(shù)不同,用戶對(duì)要存儲(chǔ)到服務(wù)器上的密文文件編制多級(jí)加密索引。根據(jù)主索引中的查找結(jié)果,來(lái)定位相應(yīng)的副索引條目。主索引和副索引都是加密索引。 圖2示意性地示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的用于生成和更新索引的用戶裝置
100的配置示例。用戶裝置ioo可以是用戶所使用的任何終端設(shè)備,或者任何終端設(shè)備中的
功能部件(由硬件、固件、軟件或其任何組合構(gòu)成)。 如圖2所示,用戶裝置100主要包括主索引單元101和副索引單元102。 主索引單元101被配置為生成主索引。每個(gè)主索引條目與一個(gè)關(guān)鍵詞相關(guān)聯(lián),并
且至少包括根據(jù)該關(guān)鍵詞生成的主索引條目標(biāo)識(shí)符,以及與該關(guān)鍵詞相關(guān)的每個(gè)文件的主索引信息密文。相應(yīng)地,不排斥任何可能的其他部件,主索引單元101可以包括用于生成主索引條目標(biāo)識(shí)符的主索引條目標(biāo)識(shí)符生成模塊103,以及用于生成主索引信息密文的主索引信息密文生成模塊104。 副索引單元102被配置為生成一級(jí)或多級(jí)副索引。每個(gè)副索引條目可以針對(duì)一個(gè)文件,并至少包括副索引條目標(biāo)識(shí)符和與獲取相應(yīng)文件有關(guān)的副索引信息的密文。相應(yīng)
地,不排斥任何可能的其他部件,副索引單元ioi可以包括用于生成副索引條目標(biāo)識(shí)符的
副索引條目標(biāo)識(shí)符生成模塊105,以及用于生成副索引信息密文的副索引信息密文生成模塊106。 在根據(jù)本發(fā)明的多級(jí)索引中,每條主索引信息至少包括相關(guān)聯(lián)的副索引條目的副索引條目標(biāo)識(shí)符和用于對(duì)密副索引條目解密所需的解密信息。每條副索引信息可以包括用于對(duì)密文解密所需的解密信息,或者當(dāng)存在下一級(jí)相關(guān)聯(lián)的副索引條目時(shí),包括相關(guān)聯(lián)的下一級(jí)副索引條目的副索引條目標(biāo)識(shí)符和用于對(duì)該下一級(jí)副索引條目解密所需的解密信息。根據(jù)不同的實(shí)施例,用于獲取密文文件的文件路徑或密文文件名信息可以包括在主索引信息中,也可以包括在副索引信息中。 假設(shè)有n個(gè)文件的'Z^ (i = 1, . . . , n)與關(guān)鍵詞K^相關(guān)(例如,包括該關(guān)鍵詞),主索引中與一個(gè)關(guān)鍵詞 CW相關(guān)的條目可以采取以下形式 :爭(zhēng)/o一(P力,.,'爭(zhēng)/o一g ,,.爭(zhēng)/o—(P打,式
(1) 其中,0Y①^是與該關(guān)鍵詞2CHA相關(guān)的主索引條目標(biāo)識(shí)符;h/o一(Pi是第i(i =l,. . . ,n)個(gè)與該關(guān)鍵詞K^相關(guān)的文件巧&的主索引信息;^)UPz是用于對(duì)^/b一(^加密的密鑰^j表示用密鑰(g對(duì)^加密。 注意,可以使用同一密鑰來(lái)對(duì)一個(gè)主索引條目中的不同文件的主索引信息進(jìn)行加密,也可以使用不同的密鑰來(lái)對(duì)一個(gè)主索引條目中的不同文件的主索引信息進(jìn)行加密。在一個(gè)主索引條目中的不同文件的主索引信息的加密密鑰相同(%>_^)的情況下,主索引條目也可以采取如下的替代形式 ,£(7打/0_" I I…I I 1 I.." ^y一" >式(2) g卩,利用密鑰^xJP對(duì)與關(guān)鍵詞; c^相關(guān)的所有文件的主索引信息的組合進(jìn)行加密。 注意,可以使用相同的密鑰對(duì)各個(gè)主索引條目中的主索引信息進(jìn)行加密。但是,對(duì)于與不同關(guān)鍵詞相對(duì)應(yīng)的主索引條目,也可以使用不同的密鑰來(lái)加密主索引信息,以提供增強(qiáng)的安全性。 上述主索引條目標(biāo)識(shí)符^/①^可以例如是關(guān)鍵詞7CW的密文。例如^①b=<£(^^^""1是用于對(duì)關(guān)鍵詞進(jìn)行加密的密鑰,其可以是用戶的秘密密鑰或者其他密鑰。優(yōu)選地,用于生成主索引條目標(biāo)識(shí)符^^D^的密鑰與上述用于生成主索引信息密文的密鑰不同。注意,^^A^也可以采用其他方式生成,只要保證不同的關(guān)鍵詞對(duì)應(yīng)于不同的 文件巧化的主索引信息/"/0—g至少包括與該文件的獲取有關(guān)的副索引條目的標(biāo)識(shí)符和用于對(duì)該副索引條目中的副索引信息密文進(jìn)行解密所需的信息,例如解密密鑰。/n/o一g還可以包括其他信息。例如在一些實(shí)施例中,/打/0—^還可以包括用于驗(yàn)證主索引信
息解密正確性的信息。在一些實(shí)施例中,/w/o—^還可以包括與文件巧化有關(guān)的信息。另外,
在獲取文件巧化的過(guò)程中所需的一部分信息也可以包括在主索引信息/ /0一@中。 副索引可以只有一級(jí),也可以具有多級(jí)。作為通式,第j級(jí)副索引中與任一文件
^/^相關(guān)的條目可以采取以下形式 <1;/ 一..£(7打/0—5一, %)/-&%>式(3) 其中,^/①《必:是該副索引條目的副索引條目標(biāo)識(shí)符,Jn/cLi^必:是該副索引條目的副索引信息,^OL、&0:是用于對(duì)該副索引信息進(jìn)行加密的密鑰。注意,用于對(duì)不同副索引條目中的副索引信息加密的密鑰可以是不同的。 副索引條目標(biāo)識(shí)符t;jo^)可以采用任意方式來(lái)計(jì)算,只要在同一級(jí)副索引中,與
不同文件相關(guān)的副索引條目的副索引標(biāo)識(shí)符彼此不同,并且用戶可以根據(jù)文件信息重復(fù)確定出t^D(隊(duì)例如,副索引條目標(biāo)識(shí)符"Ura^0可以是文件巧7^的唯一標(biāo)識(shí)符。 如果采用多級(jí)副索引,并且為了獲取關(guān)于文件^H/^的全部信息,還需繼續(xù)訪問(wèn)下
一級(jí)副索引,則上述副索引信息/ /0—^^至少包括相關(guān)聯(lián)的下一級(jí)副索引條目的標(biāo)識(shí)符和用于對(duì)該下一級(jí)副索引條目中的副索引信息密文進(jìn)行解密所需的信息。獲取文件的化所需的部分或全部信息可以被包括在最后一級(jí)副索引條目的副索引信息中或者分散在不同級(jí)的副索引條目的副索引信息中。 如果副索引只有一級(jí),則上述副索引信息/M/o一i^必0'=1)至少包括獲取文件
W7^所需的部分或全部信息。 圖3示意性地示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的生成加密索引的過(guò)程。
首先,用戶裝置100進(jìn)行初始設(shè)置,例如在步驟S201提取并匯總文件的關(guān)鍵詞,在步驟S202設(shè)置生成索引所需的各種密鑰,例如用于加密主索引信息和副索引信息的密鑰,以及一些實(shí)施例中的用于生成主索引條目標(biāo)識(shí)符或副索引條目標(biāo)識(shí)符的密鑰,以及相關(guān)的解密密鑰。上述過(guò)程例如由用戶裝置100的初始化單元或其他單元完成。由于可以使用常規(guī)方法提取關(guān)鍵詞,并利用常規(guī)加密系統(tǒng)來(lái)設(shè)置各種密鑰,因此省略了對(duì)相關(guān)部件和過(guò)程的詳細(xì)描述,以避免對(duì)本發(fā)明不必要的混淆。注意,在本發(fā)明的系統(tǒng)中,可以采用對(duì)稱密鑰,也可以采用不對(duì)稱密鑰?;蛘?,可以在多級(jí)加密索引中混合使用對(duì)稱加密和不對(duì)稱加密。例如,對(duì)于一些信息的加密采用對(duì)稱加密方式,而對(duì)另一些信息的加密采用不對(duì)稱加密方式。
在步驟S203,主索引單元101利用主索引條目標(biāo)識(shí)符生成模塊103生成與各個(gè)關(guān)鍵詞相關(guān)的主索引條目的主索引條目標(biāo)識(shí)符。例如,通過(guò)用用戶秘密密鑰對(duì)關(guān)鍵詞或包含關(guān)鍵詞的信息進(jìn)行加密來(lái)得到相應(yīng)的主索引條目標(biāo)識(shí)符。 在步驟S204,副索引單元102利用副索引條目標(biāo)識(shí)符生成模塊105生成與各個(gè)文件相關(guān)聯(lián)的副索引條目的副索引條目標(biāo)識(shí)符。例如,計(jì)算文件的唯一標(biāo)識(shí)符作為相關(guān)聯(lián)的副索引條目標(biāo)識(shí)符。 在步驟S205,主索引單元101利用主索引信息密文生成模塊104確定每個(gè)主索引條目中的主索引信息,并在步驟S206對(duì)主索引信息進(jìn)行加密。如上所述,對(duì)于與不同關(guān)鍵詞相關(guān)聯(lián)的主索引信息,可以使用不同的密鑰進(jìn)行加密。 在步驟S207,副索引單元102利用副索引信息密文生成模塊106確定每個(gè)副索引條目中的主索引信息,并在步驟S208對(duì)副索引信息進(jìn)行加密。如上所述,用于對(duì)不同副索
引條目中的副索引信息,可以使用不同的密鑰進(jìn)行加密。 在步驟S209,主索引單元和副索引單元分別形成主索引和副索引。 為了更好地理解,下面給出一些具體形式的多級(jí)加密索引的示例。應(yīng)當(dāng)認(rèn)識(shí)到,這
些示例僅是用于說(shuō)明的目的,而本發(fā)明的實(shí)質(zhì)并不限于所描述的任何特定的算法和配置。 為了簡(jiǎn)明起見(jiàn),下面先給出兩級(jí)加密索引(一級(jí)主索引和一級(jí)副索引)的具體示
例。在下面的示例中,假設(shè)有n個(gè)文件^H^ (i = l,... ,n)與關(guān)鍵詞K^相關(guān)(例如,包括
該關(guān)鍵詞),并且主索引條目可采用上述式(1)或式(2)的形式,副索引條目可采用上述式
(3)的形式。 示例1 與關(guān)鍵詞7CW相關(guān)聯(lián)的主索引條目中,關(guān)于文件的&的主索引信息/ /0—(P,如下生成J打/o一g 二 [f/^ I i;w^i I II I ^ W; I I l^A I I ! COL"/①i)式(4) 其中,/z!^是用于檢驗(yàn)主索引信息解密是否正確的標(biāo)志信息,;wW是文件^^的
密文的存取路徑,CE7v;是文件的化的密文文件名,(pf」m是文件巧化的明文文件名,t;/o),是
與文件^&相關(guān)的副索引條目的副索引條目標(biāo)識(shí)符,KOLt^A是用于對(duì)該副索引條目中
的副索引信息密文進(jìn)行解密的副索引信息解密密鑰。注意,如果采用對(duì)稱加密,解密密鑰
KOL^/①i與上述式(3)中的密鑰&xJ^是相同的。
該示例中,與任一文件!Fz7^相關(guān)的副索引條目為
〈"J化.,—K0LW〉式(5)
其中,副索引信息/w/o一^如下生成
/打 =胸I L/^式(6) 其中,yz^是用于檢驗(yàn)副索引信息解密是否正確的標(biāo)志信息,/^x是用于對(duì)文件巧/^的密文進(jìn)行解密的文件解密密鑰。 在該示例中,副索引條目標(biāo)識(shí)符^/①d列如簡(jiǎn)單地是文件巧^J勺順序或隨機(jī)編號(hào),
或其他任意與文件^v/^唯一對(duì)應(yīng)的值。 根據(jù)該示例的多級(jí)加密索引,首先可以通過(guò)主索引條目標(biāo)識(shí)符在主索引中進(jìn)行查找,得到匹配的主索引條目,然后通過(guò)對(duì)主索引條目中的主索引信息密文進(jìn)行解密來(lái)獲得與相應(yīng)關(guān)鍵詞有關(guān)的各個(gè)文件的文件路徑、密文文件名、明文文件名、相關(guān)副索引條目標(biāo)識(shí)符以及對(duì)應(yīng)的副索引信息解密密鑰。獲得上述信息后,可以進(jìn)一步利用得到的各個(gè)副索引條目標(biāo)識(shí)符在副索引中進(jìn)行查找,找到匹配的副索引條目,然后利用副索引信息解密密鑰對(duì)其中的副索引信息密文進(jìn)行解密,得到有關(guān)文件的文件解密密鑰。根據(jù)得到的上述信息,便可以獲得與被查詢的關(guān)鍵詞相關(guān)的各個(gè)文件的明文。 順便說(shuō)明ys^的使用。yr^例如是檢索者預(yù)先已知的一個(gè)值。當(dāng)對(duì)包含//^標(biāo)志的信息的密文(例如本示例中的主索引信息密文或副索引信息密文)進(jìn)行解密時(shí),檢索者可以通過(guò)檢查解密得到的信息中的/^《是否與已知的/z^相同,來(lái)判斷解密是否正確。當(dāng)檢索者獲得了用不同密鑰加密的多條主索引信息密文或多條副索引信息密文時(shí),該標(biāo)志可以幫助檢索者判斷哪些信息對(duì)于檢索者來(lái)說(shuō)是可解密的,哪些是不可解密的。相應(yīng)地,通過(guò)利用不同的密鑰對(duì)不同信息進(jìn)行加密(例如,用不同的密鑰對(duì)同一主索引條目中的不同主 索引信息),并對(duì)檢索者授予單個(gè)或部分解密密鑰,可以對(duì)檢索者的權(quán)限進(jìn)行區(qū)分并控制。當(dāng)然,ys^僅是一種輔助信息。對(duì)于一些不需要驗(yàn)證解密正確性的情形,或者采用
其他方式檢驗(yàn)的實(shí)現(xiàn)方式,/Z^并非是必需的。
示例2 該示例中,上述示例1中的主索引信息被替換為
<formula>formula see original document page 11</formula>
上述示例1中的副索引信息被替換為
<formula>formula see original document page 11</formula>
根據(jù)本示例的多級(jí)加密索引,通過(guò)在主索引中的查找和相應(yīng)的解密,可以得到每 個(gè)相關(guān)文件的副索引條目標(biāo)識(shí)符以及對(duì)應(yīng)的副索引信息解密密鑰。然后通過(guò)在副索引中的 查找和相應(yīng)的解密,可以得到各個(gè)相關(guān)文件的文件路徑、密文文件名、明文文件名和文件解 密密鑰,從而獲得文件的明文。 在該示例中,與任一文件"H/^相關(guān)的副索引條目的副索引條目標(biāo)識(shí)符i;ja^可以
如下生成 <formula>formula see original document page 11</formula>
其中,^^是哈希函數(shù);^wn^是文件巧'/^中的某段內(nèi)容,例如正文的第一句或第
一段或最后一句或最后一段,等等W&是用戶的秘密密鑰,或其他秘密信息。
示例3 該示例與上述示例2類似,只是與任一文件的7^相關(guān)的副索引條目的副索引條目 標(biāo)識(shí)符U/①《波替換為 <formula>formula see original document page 11</formula>
其中,cfw^是文件巧/^的密文文件名。 示例4 該示例與上述示例2和示例3類似,只是與任一文件巧7^.相關(guān)的副索引條目的副
索引條目標(biāo)識(shí)符^/^\被替換為
<formula>formula see original document page 11</formula>
其中,(R^F是偽隨機(jī)數(shù)函數(shù),"C是該函數(shù)的隨機(jī)輸入。 在該示例中,用戶可以保存各個(gè)副索引條目標(biāo)識(shí)符與相應(yīng)文件之間的對(duì)應(yīng)關(guān)系, 以便以后更新索引時(shí)使用。例如,保存如下映射或表
<formula>formula see original document page 11</formula> 上面給出了二級(jí)加密索引的若干具體示例。應(yīng)當(dāng)認(rèn)識(shí)到,可以設(shè)計(jì)任意多級(jí)的加 密索引。下面給出采用一級(jí)主索引和兩級(jí)副索引的三級(jí)加密索引的示例,以幫助理解。
示例5 與關(guān)鍵詞^c^相關(guān)聯(lián)的主索引條目中,關(guān)于文件^^的主索引信息/ /0_@如下生 成 <formula>formula see original document page 11</formula>
其中,"UW)/"是與文件相關(guān)的第 一 級(jí)副索引條目的副索引條目標(biāo)識(shí)符, ^^D/"是用于對(duì)該第一級(jí)副索引條目中的副索引信息密文進(jìn)行解密的副索引信息解
密密鑰。 與任一文件"H/^相關(guān)的第一級(jí)副索引條目為 <lAra\W %y—柳>式(14) 其中,副索引信息^/0一i^"如下生成 I I I CF,《I IWJ /" I I Ko;—i;j①/2"式(15) 其中,x; J /2>是與文件相關(guān)的第二級(jí)副索引條目的副索引條目標(biāo)識(shí)符,
K^—^^A^是用于對(duì)該第二級(jí)副索引條目中的副索引信息密文進(jìn)行解密的副索引信息解 密密鑰。 與任一文件巧'/^相關(guān)的第二級(jí)副索引條目為
<lAra\" :£(Tn>—^L^P"〉式(16) 其中,副索引信息^/o—i^"如下生成
/打 =,| I狎H ,i)式(17) 在該示例中,可以使用任意方式來(lái)指定第一級(jí)副索引條目標(biāo)識(shí)符^/①/"和第二級(jí) 副索引條目標(biāo)識(shí)符t^I^(",只要保證相應(yīng)索引條目的可識(shí)別性。 根據(jù)該示例的三級(jí)加密索引,首先可以通過(guò)在主索引中的查找和相應(yīng)的解密,可 以得到每個(gè)相關(guān)文件的第一級(jí)副索引條目標(biāo)識(shí)符以及對(duì)應(yīng)的第一級(jí)副索引信息解密密鑰。 然后利用得到的一個(gè)或多個(gè)第一級(jí)副索引條目標(biāo)識(shí)符以及對(duì)應(yīng)的第一級(jí)副索引信息解密 密鑰,通過(guò)在第一級(jí)副索引中的查找和相應(yīng)的解密,可以得到各個(gè)相關(guān)文件的文件路徑、密 文文件名、相關(guān)的第二級(jí)副索引的副索引條目標(biāo)識(shí)符以及對(duì)應(yīng)的第二級(jí)副索引信息解密密 鑰。最后,利用得到的一個(gè)或多個(gè)第二級(jí)副索引條目標(biāo)識(shí)符以及對(duì)應(yīng)的第二級(jí)副索引信息 解密密鑰,通過(guò)在第二級(jí)副索引中的查找和相應(yīng)的解密,可以得到各個(gè)相關(guān)文件的明文文 件名和文件解密密鑰,從而得到用于獲得文件的明文的全部必要信息。 上述示例中,兩級(jí)副索引中的每個(gè)條目均是針對(duì)要獲取的文件而設(shè)置的。但是可 以認(rèn)識(shí)到,副索引中編制的信息并不限于這些。例如,可以在第一級(jí)副索引中編制獲取相應(yīng) 文件所需的文件解密密鑰等信息,而在第二級(jí)副索引中編制附加信息,例如每個(gè)第二級(jí)副 索引條目對(duì)應(yīng)于一個(gè)參考文件信息。在這種情況下,第一副索引條目的副索引信息中可以 包括與相關(guān)的參考文件相對(duì)應(yīng)的一個(gè)或多個(gè)第二級(jí)副索引條目標(biāo)識(shí)符和解密密鑰。另外, 可以認(rèn)識(shí)到,副索引的級(jí)數(shù)可以任意設(shè)計(jì),每一級(jí)中可以編制一類或多類信息。
上面的示例中使用了文件的存取路徑、密文文件名、明文文件名、驗(yàn)證解密的標(biāo) 志、文件解密密鑰作為編制在加密索引中的與一個(gè)文件有關(guān)的信息。但是這些信息并非是 對(duì)于每種實(shí)施例所必需的。例如,如果提供存取路徑和密文文件名中任意一者就可以從服 務(wù)器獲取相應(yīng)的密文文件,則可以不需要存取路徑,或者不需要密文文件名。另外,在一些 實(shí)施例中,明文文件名或者驗(yàn)證解密的標(biāo)志也是不需要的。并且,可以認(rèn)識(shí)到,能夠編制在 索引中的信息并不限于上述內(nèi)容,而是可以根據(jù)實(shí)際應(yīng)用設(shè)計(jì)任何需要的信息。這些信息 可以分布在各級(jí)副索引信息中或者其中的一部分信息可以被包括在主索引信息中。
下面參考圖4至圖6描述根據(jù)一個(gè)實(shí)施例的多級(jí)加密索引的使用。
12
圖4示意性地示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的檢索者裝置的配置示例。 如圖4所示,檢索者裝置300主要包括用于生成主檢索請(qǐng)求的主檢索請(qǐng)求單元
301、用于對(duì)主索引信息密文解密的主索引信息解密單元302、用于生成副檢索請(qǐng)求的副檢
索請(qǐng)求單元、用于對(duì)副索引信息密文進(jìn)行解密的副索引信息解密、和獲取文件密文并對(duì)文
件解密的文件獲取單元305。 圖5示意性地示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的用于檢索的服務(wù)器的配置示例。
如圖5所示,服務(wù)器400用于利用多級(jí)索引執(zhí)行檢索,主要包括用于在主索引中執(zhí) 行查找的主檢索單元401以及用于在副索引中執(zhí)行查找的副檢索單元402。如果密文文件 也存儲(chǔ)在服務(wù)器400上,則服務(wù)器400還可以包括用于查找密文文件的文件查找單元。
圖6示意性地示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的檢索過(guò)程。圖6的左半部示出了在 檢索者終端處的操作,圖6的右半部示出了在檢索和存儲(chǔ)服務(wù)器出執(zhí)行的操作。
在檢索過(guò)程開(kāi)始之前,檢索者應(yīng)當(dāng)已經(jīng)被授權(quán)進(jìn)行檢索。例如,檢索者從文件擁有 者或其他方得到了與被授權(quán)檢索的關(guān)鍵詞相對(duì)應(yīng)的主索引條目標(biāo)識(shí)符,并得到了相應(yīng)的用 于解密主索引信息的主索引信息解密密鑰,或者得到了相關(guān)信息并通過(guò)計(jì)算得出了主索引 條目標(biāo)識(shí)符和相應(yīng)解密密鑰。檢索者終端可以執(zhí)行任何必要的授權(quán)過(guò)程來(lái)獲取這些初始信 息。當(dāng)然,下面描述的檢索者也可以是數(shù)據(jù)擁有者本身。 檢索時(shí),首先在步驟S501,檢索者終端的主檢索請(qǐng)求單元301生成主檢索請(qǐng)求,主 檢索請(qǐng)求中包括檢索者已得到或計(jì)算出的主索引條目標(biāo)識(shí)符。然后,檢索者終端將主檢索 請(qǐng)求發(fā)送到服務(wù)器。 服務(wù)器在接收到主檢索請(qǐng)求后,在步驟S502,服務(wù)器的主檢索單元401在存儲(chǔ)在 服務(wù)器上的主索引中執(zhí)行查找,找到主索引條目標(biāo)識(shí)符與所接收的主索引條目標(biāo)識(shí)符一致 的主索引條目。然后,服務(wù)器將匹配的主索引條目中所包括的主索引信息的密文返回給檢 索者終端??蛇x地,在服務(wù)器執(zhí)行查找之前,可以先對(duì)檢索者進(jìn)行必要的身份驗(yàn)證。
接收到主索引信息密文后,在步驟S503,檢索者終端的主索引信息解密單元302 利用已經(jīng)得到的主索引信息解密密鑰,對(duì)收到的主索引信息密文進(jìn)行解密,得到相關(guān)聯(lián)的 各個(gè)文件的對(duì)應(yīng)副索引條目標(biāo)識(shí)符和副索引信息解密密鑰。另外,還可能從主索引信息中 得到其他信息。例如,在上述示例1的情況中,還可以得到相關(guān)文件的密文文件名或文件路 徑等。 在步驟S504,檢索者終端的副檢索請(qǐng)求單元303生成副檢索請(qǐng)求。副檢索請(qǐng)求包 括得到的一個(gè)或多個(gè)副索引條目標(biāo)識(shí)符。然后,檢索者終端將副檢索請(qǐng)求發(fā)送到服務(wù)器。
在接收到副檢索請(qǐng)求之后,在步驟S505,服務(wù)器的副檢索單元402在存儲(chǔ)在服務(wù) 器上的副索引中執(zhí)行查找,找到副索引條目標(biāo)識(shí)符與副檢索請(qǐng)求中的副索引條目標(biāo)識(shí)符一 致的各個(gè)副索引條目。然后,服務(wù)器將匹配的副索引條目中所包括的副索引信息的密文返 回給檢索者終端。 接收到副索引信息密文后,在步驟S506,檢索者終端的副索引信息解密單元304 利用得到的相應(yīng)的副索引信息解密密鑰,對(duì)收到的副索引信息密文進(jìn)行解密,得到相應(yīng)的 副索引信息。 如果副索引只有一級(jí),則至此檢索者終端將從解密出的副索引信息(以及主索引 信息)得到用于獲取文件的全部必需信息,例如文件的密文文件名或存取路徑,以及文件
13的解密密鑰。當(dāng)然,檢索者終端還將得到副索引信息和主索引信息中所包括的其他信息,如 果有的話。 如果副索引具有兩級(jí)或更多級(jí),則檢索者終端將從解密出的副索引信息中進(jìn)一步 得到下一級(jí)副索引條目標(biāo)識(shí)符和相應(yīng)解密密鑰。然后,重復(fù)過(guò)程S504至S506,直到檢索者 終端得到了各級(jí)索引中的全部必要信息。 最后,在步驟S507,檢索者終端的文件獲取單元305根據(jù)獲得的信息,生成相關(guān)文 件的文件獲取請(qǐng)求。文件獲取請(qǐng)求例如包括文件的密文文件名或存取路徑,或其他可唯一 確定密文文件的信息。然后,檢索者終端將文件獲取請(qǐng)求發(fā)送到存儲(chǔ)文件的服務(wù)器(在一 種實(shí)現(xiàn)方式中,文件存儲(chǔ)服務(wù)器與檢索服務(wù)器可以是相同的服務(wù)器)。 在步驟S508,文件存儲(chǔ)服務(wù)器根據(jù)檢索者終端提供的信息,例如利用文件查找單 元查找相應(yīng)的文件密文,并將匹配的文件密文提供給檢索者終端。 或者,在另一種實(shí)施例中,檢索者終端直接根據(jù)文件的存取路徑,從相應(yīng)的存儲(chǔ)位 置獲得文件密文。 得到相關(guān)的各個(gè)文件的文件密文之后,在步驟S509,檢索者終端的文件獲取單元 305利用從副索引信息(或主索引信息)中得到的相應(yīng)文件解密密鑰,對(duì)文件密文進(jìn)行解 密,從而得到各個(gè)文件的明文。 在索引信息中包括了用于解密驗(yàn)證的標(biāo)志y/^的情況中,在上述各個(gè)解密過(guò)程
中,例如主索引信息解密單元或索引信息解密單元或文件獲取單元,可以判斷解密得到的 信息中所包括的標(biāo)志是否與預(yù)先已知的標(biāo)志/Z^相同。如果是,則表明解密是正確的。如 果否,則表明解密不正確。根據(jù)驗(yàn)證結(jié)果,檢索者可以選擇適用的信息,放棄不能正確解密 的信息。 上述過(guò)程僅僅是一個(gè)具體示例。本發(fā)明并不限于上述具體的步驟或步驟間的順 序。例如,如果在完成全部級(jí)別的副索引信息的解密之前(例如,上述示例1的情況),就已 經(jīng)得到了文件的密文文件名,則步驟S507和S508的順序可以提前。 根據(jù)本發(fā)明的多級(jí)加密索引和檢索過(guò)程,服務(wù)器無(wú)法得知所存儲(chǔ)的文件密文的內(nèi)
容,也無(wú)法得知其與關(guān)鍵詞之間的關(guān)聯(lián)。通過(guò)使用不同的密鑰進(jìn)行加密,提供了更好的安全
性和隱私性,防止了未授權(quán)的文件解密,避免的傳統(tǒng)密文檢索技術(shù)中的隱私漏洞。 另外,根據(jù)本發(fā)明的多級(jí)索引,還可以提供靈活的索引更新。簡(jiǎn)單地說(shuō),當(dāng)副索引
由于文件變化而發(fā)生更新時(shí),可以利用副索引標(biāo)識(shí)符簡(jiǎn)單地更新相應(yīng)的副索引條目,并且
在一些情況中,主索引可以不用改變。 例如,在上述示例2、3、4中,如果文件的位置改變,則用戶裝置僅需要計(jì)算相應(yīng)的 副索引條目標(biāo)識(shí)符和更新后的副索引信息密文,將其發(fā)送給服務(wù)器。該過(guò)程例如可以由用 戶裝置的副索引單元完成,或者利用另外設(shè)置的更新單元來(lái)完成。服務(wù)器利用接收的副索 引條目標(biāo)識(shí)符定位相應(yīng)的副索引條目,將其中的副索引信息密文更新為從用戶裝置接收的 新的副索引信息密文即可,而主索引不需要改變。該過(guò)程可以由服務(wù)器上另外設(shè)置的更新 單元完成。 并且,在上述示例2、4中,由于副索引條目標(biāo)識(shí)符并非是根據(jù)文件名而生成的,因 此即使當(dāng)文件被重命名時(shí),也可以利用相應(yīng)的副索引條目標(biāo)識(shí)符找到相應(yīng)的副索引條目, 并更新其中的副索引信息密文,從而完成更正,而主索引不需要改變。
14
根據(jù)在主索引和副索引中編制的信息以及索引條目標(biāo)識(shí)符的生成方式,可以采取 相應(yīng)的更新方法。由于提供了多級(jí)索引的編排,提供了僅更新某一級(jí)索引或其中某個(gè)具體 索引條目的可能。 上面已經(jīng)參考附圖描述了根據(jù)本發(fā)明的一些具體示例。但是,本發(fā)明并非要受到
上述實(shí)施例中描述的任何具體配置和過(guò)程的限制。在本發(fā)明的精神的范圍之內(nèi),本領(lǐng)域技
術(shù)人員能夠認(rèn)識(shí)到上述配置、算法、操作和過(guò)程的各種替換、改變或修改。 在本說(shuō)明書(shū)中使用的所謂的"文件"應(yīng)當(dāng)被理解為是廣義的概念,其包括但不限于
例如文本文件、視頻/音頻文件、圖像/圖表以及任何其他數(shù)據(jù)或信息。 在本說(shuō)明書(shū)中使用的所謂的"關(guān)鍵詞"也應(yīng)當(dāng)被理解為是廣義的概念,其包括任何 與特定文件相關(guān)聯(lián)的數(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è)備。 本發(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ì)或者通信鏈路上傳送。"機(jī)器可讀介質(zhì)"可以包括能夠存儲(chǔ)或傳輸 信息的任何介質(zhì)。機(jī)器可讀介質(zhì)的例子包括電子電路、半導(dǎo)體存儲(chǔ)器設(shè)備、R0M、閃存、可擦 除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ì)特征。因此,當(dāng)前的實(shí) 施例在所有方面都被看作是示例性的而非限定性的,本發(fā)明的范圍由所附權(quán)利要求而非上 述描述定義,并且,落入權(quán)利要求的含義和等同物的范圍內(nèi)的全部改變從而都被包括在本 發(fā)明的范圍之中。
1權(quán)利要求
一種用于密文索引的裝置,包括主索引單元,被配置為生成主索引,其中每個(gè)主索引條目與一個(gè)關(guān)鍵詞相關(guān)聯(lián),并至少包括主索引條目標(biāo)識(shí)符以及與所述關(guān)鍵詞相關(guān)的每個(gè)文件的主索引信息的密文;和副索引單元,被配置為生成一級(jí)或多級(jí)副索引,其中每個(gè)副索引條目至少包括副索引條目標(biāo)識(shí)符和副索引信息的密文,其中,每條主索引信息至少包括相關(guān)聯(lián)的第一級(jí)副索引條目的副索引條目標(biāo)識(shí)符和副索引信息解密信息,每條副索引信息至少包括密文的解密信息或者相關(guān)聯(lián)的下一級(jí)副索引條目的副索引條目標(biāo)識(shí)符和副索引信息解密信息。
2. 根據(jù)權(quán)利要求1所述的裝置,其中,所述每個(gè)文件的主索引信息還包括所述文件的文件路徑、密文文件名、明文文件名和用于解密驗(yàn)證的標(biāo)志當(dāng)中的一個(gè)或多個(gè)。
3. 根據(jù)權(quán)利要求1所述的裝置,其中,至少一級(jí)副索引中的副索引信息還包括相應(yīng)文件的文件路徑、密文文件名、明文文件名和用于解密驗(yàn)證的標(biāo)志當(dāng)中的一個(gè)或多個(gè)。
4. 根據(jù)權(quán)利要求1所述的裝置,其中,所述主索引單元包括被配置用于生成主索引條目標(biāo)識(shí)符的主索引條目標(biāo)識(shí)符生成模塊,和被配置用于確定主索引信息并生成主索引信息的密文的主索引信息密文生成模塊,并且所述副索引單元包括被配置用于生成副索引條目標(biāo)識(shí)符的副索引條目標(biāo)識(shí)符生成模塊,和被配置用于確定副索引信息并生成副索引信息的密文的副索引信息密文生成模塊。
5. 根據(jù)權(quán)利要求1所述的裝置,其中,所述第一級(jí)副索引的副索引條目標(biāo)識(shí)符是文件的唯一標(biāo)識(shí)符。
6. 根據(jù)權(quán)利要求1所述的裝置,其中,所述副索引條目標(biāo)識(shí)符是所述文件的編號(hào)、包含所述文件中的部分內(nèi)容的信息的哈希值、包含所述文件的密文文件名的信息的哈希值、映射表中的值當(dāng)中的一種。
7. 根據(jù)權(quán)利要求1所述的裝置,其中所述副索引生成單元還被配置為當(dāng)文件更新時(shí),生成更新的副索引信息的密文,用于替換相關(guān)副索引條目中的副索引信息的密文。
8. 根據(jù)權(quán)利要求l所述的裝置,其中,主索引信息密文和主索引條目標(biāo)識(shí)符是使用不同的密鑰生成的。
9. 根據(jù)權(quán)利要求l所述的裝置,其中,不同主索引條目中的主索引信息密文的解密密鑰彼此不同。
10. 根據(jù)權(quán)利要求l所述的裝置,其中,不同副索引條目中的副索引信息密文的解密密鑰彼此不同。
11. 一種密文索引方法,包括生成主索引,其中每個(gè)主索引條目與一個(gè)關(guān)鍵詞相關(guān)聯(lián),并至少包括主索引條目標(biāo)識(shí)符以及與所述關(guān)鍵詞相關(guān)的每個(gè)文件的主索引信息的密文;禾口生成一級(jí)或多級(jí)副索引,其中每個(gè)副索引條目至少包括副索引條目標(biāo)識(shí)符和副索引信息的密文,其中,每條主索引信息至少包括相關(guān)聯(lián)的第一級(jí)副索引條目的副索引條目標(biāo)識(shí)符和副索引信息解密信息,每條副索引信息至少包括密文的解密信息或者相關(guān)聯(lián)的下一級(jí)副索引 條目的副索引條目標(biāo)識(shí)符和副索引信息解密信息。
12. 根據(jù)權(quán)利要求11所述的方法,其中,所述每個(gè)文件的主索引信息還包括所述文件的文件路徑、密文文件名、明文文件名和用于解密驗(yàn)證的標(biāo)志當(dāng)中的一個(gè)或多個(gè)。
13. 根據(jù)權(quán)利要求ll所述的方法,其中,至少一級(jí)副索引中的副索引信息還包括相應(yīng)文件的文件路徑、密文文件名、明文文件名和用于解密驗(yàn)證的標(biāo)志當(dāng)中的一個(gè)或多個(gè)。
14. 根據(jù)權(quán)利要求11所述的方法,其中,生成副索引包括確定文件的唯一標(biāo)識(shí)符作為所述第一級(jí)副索引的相應(yīng)副索引條目標(biāo)識(shí)符。
15. 根據(jù)權(quán)利要求11所述的方法,其中,所述副索引條目標(biāo)識(shí)符是所述文件的編號(hào)、包含所述文件中的部分內(nèi)容的信息的哈希值、包含所述文件的密文文件名的信息的哈希值、映射表中的值當(dāng)中的一種。
16. 根據(jù)權(quán)利要求11所述的方法,還包括當(dāng)文件更新時(shí),生成更新的副索引信息的密文,用于替換相關(guān)副索引條目中的副索引信息的密文。
17. 根據(jù)權(quán)利要求11所述的方法,其中,主索引信息密文和主索引條目標(biāo)識(shí)符使用不同的密鑰生成。
18. 根據(jù)權(quán)利要求ll所述的方法,其中,不同主索引條目中的主索引信息密文使用不同的密鑰生成。
19. 根據(jù)權(quán)利要求ll所述的裝置,其中,不同副索引條目中的副索引信息密文使用不同的密鑰生成。
20. —種用于密文檢索的裝置,包括主檢索請(qǐng)求單元,被配置為生成包括主索引條目標(biāo)識(shí)符的主檢索請(qǐng)求;主索引信息解密單元,被配置為對(duì)響應(yīng)于所述主檢索請(qǐng)求而接收到的主索引信息密文進(jìn)行解密,以得到主索引信息;副檢索請(qǐng)求單元,被配置為根據(jù)所述主索引信息中所包括的副索引條目標(biāo)識(shí)符生成副檢索請(qǐng)求;副索引信息解密單元,被配置為利用所述主索引信息中所包括的副索引信息解密信息,對(duì)響應(yīng)于所述副檢索請(qǐng)求而接收到的副索引信息密文進(jìn)行解密;禾口文件獲取單元,被配置為根據(jù)所述主索引信息和/或所述副索引信息中所包括的文件獲取信息和解密密鑰,獲取文件密文并解密。
21. 根據(jù)權(quán)利要求20所述的裝置,其中,所述副檢索請(qǐng)求單元還被配置為根據(jù)副索引信息中所包括的下一級(jí)副索引條目標(biāo)識(shí)符,生成下一級(jí)副檢索請(qǐng)求;并且所述副索引信息解密單元還被配置為利用所述副索引信息中所包括的下一級(jí)副索引信息解密信息,對(duì)響應(yīng)于所述下一級(jí)副檢索請(qǐng)求而接收到的下一級(jí)副索引信息密文進(jìn)行解密。
22. 根據(jù)權(quán)利要求20所述的裝置,其中所述主索引信息解密單元根據(jù)所述主索引信息中包括的標(biāo)志對(duì)解密進(jìn)行驗(yàn)證。
23. 根據(jù)權(quán)利要求20所述的裝置,其中所述副索引信息解密單元根據(jù)所述副索引信息中包括的標(biāo)志對(duì)解密進(jìn)行驗(yàn)證。
24. —種用于密文檢索的方法,包括生成包括主索引條目標(biāo)識(shí)符的主檢索請(qǐng)求;接收主索引信息密文;對(duì)主索引信息密文進(jìn)行解密,得到主索引信息;根據(jù)所述主索引信息中所包括的副索引條目標(biāo)識(shí)符生成副檢索請(qǐng)求;接收副索引信息密文;利用所述主索引信息中所包括的副索引信息解密信息,對(duì)所述副索引信息密文進(jìn)行解密;以及根據(jù)所述主索引信息和/或所述副索引信息中所包括的文件獲取信息和解密密鑰,獲取文件密文并解密。
25. 根據(jù)權(quán)利要求24所述的方法,還包括根據(jù)副索引信息中所包括的下一級(jí)副索引條目標(biāo)識(shí)符,生成下一級(jí)副檢索請(qǐng)求;以及利用所述副索引信息中所包括的下一級(jí)副索引信息解密信息,對(duì)所述下一級(jí)副索引信息密文進(jìn)行解密。
26. 根據(jù)權(quán)利要求24所述的方法,還包括根據(jù)所述主索引信息中包括的標(biāo)志對(duì)解密進(jìn)行驗(yàn)證。
27. 根據(jù)權(quán)利要求24所述的方法,還包括根據(jù)根據(jù)所述副索引信息中包括的標(biāo)志對(duì)解密進(jìn)行驗(yàn)證。
28. —種用于密文檢索的裝置,包括主檢索單元,被配置為根據(jù)主索引條目標(biāo)識(shí)符在主索引中查找匹配的主索引條目,并發(fā)送所述主索引條目中的主索引信息密文;禾口副檢索單元,被配置為根據(jù)副索引條目標(biāo)識(shí)符在副索引中查找匹配的副索引條目,并發(fā)送所述副索引條目中的副索引信息密文。
29. 根據(jù)權(quán)利要求28所述的裝置,還包括更新單元,被配置為接收副索引條目標(biāo)識(shí)符和副索引信息密文,并用所述接收的副索引信息密文更新副索引條目標(biāo)識(shí)符與所述接收的副索引條目標(biāo)識(shí)符相同的副索引條目的副索引信息。
30. —種用于密文檢索的方法,包括根據(jù)主索引條目標(biāo)識(shí)符在主索引中查找匹配的主索引條目;發(fā)送所述主索引條目中的主索引信息密文;根據(jù)副索引條目標(biāo)識(shí)符在副索引中查找匹配的副索引條目;以及發(fā)送所述副索引條目中的副索引信息密文。
31. 根據(jù)權(quán)利要求30所述的方法,還包括接收副索引條目標(biāo)識(shí)符和副索引信息密文;查找具有所述接收的副索引條目標(biāo)識(shí)符的副索引條目;用所述接收的副索引信息密文更新所述副索引條目。
全文摘要
本發(fā)明提供了一種用于密文索引和檢索的裝置和方法。對(duì)密文創(chuàng)建多級(jí)加密索引。主索引條目包括主索引條目標(biāo)識(shí)符和相關(guān)的各個(gè)文件的主索引信息的密文。每條主索引信息包括相關(guān)聯(lián)的副索引條目的標(biāo)識(shí)符和解密信息。副索引條目包括副索引條目標(biāo)識(shí)符和副索引信息的密文。獲取文件所需的信息被包括在相應(yīng)的副索引信息中。利用解密出的主索引信息中的副索引信息解密信息,可以對(duì)相關(guān)副索引信息密文進(jìn)行解密,得到例如文件解密密鑰等信息。
文檔編號(hào)G06F21/00GK101770462SQ200810188850
公開(kāi)日2010年7月7日 申請(qǐng)日期2008年12月30日 優(yōu)先權(quán)日2008年12月30日
發(fā)明者曾珂, 王利明, 田野, 福島俊一, 雷浩 申請(qǐng)人:日電(中國(guó))有限公司