一種可搜索加密方法及設(shè)備的制作方法
【專利摘要】本發(fā)明公布一種可搜索加密方法及設(shè)備,通過發(fā)送方獲取搜索方的身份或者搜索方所在群的身份,和密鑰管理中心的系統(tǒng)參數(shù);發(fā)送方根據(jù)所述搜索方的身份或者搜索方所在群的身份,和所述系統(tǒng)參數(shù)加密關(guān)鍵詞,并將加密后的關(guān)鍵詞密文上傳到存儲(chǔ)服務(wù)器。同時(shí)通過搜索方根據(jù)搜索方的身份或者搜索方所在群的身份從密鑰管理中心獲取查詢密鑰,根據(jù)關(guān)鍵詞和所述獲取的查詢密鑰生成查詢令牌,通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢加密后的關(guān)鍵詞密文,并接收所述存儲(chǔ)服務(wù)器返回的數(shù)據(jù)。從而實(shí)現(xiàn)在不需要昂貴的公鑰基礎(chǔ)設(shè)施的支持并且發(fā)送方不需要下載公鑰的情況下,實(shí)現(xiàn)可搜索加密技術(shù)。
【專利說(shuō)明】一種可搜索加密方法及設(shè)備
【技術(shù)領(lǐng)域】
[0001 ] 本發(fā)明應(yīng)用于加密【技術(shù)領(lǐng)域】,尤其涉及一種可搜索加密方法及設(shè)備。
【背景技術(shù)】
[0002]加密方案為了保證語(yǔ)義安全,往往要求加密算法產(chǎn)生的密文分布與密文空間上的均勻分布兩者在計(jì)算不可區(qū)分(計(jì)算不可區(qū)分是指對(duì)于兩個(gè)概率分布,不存在多項(xiàng)式時(shí)間算法能夠區(qū)分它們)。因此,對(duì)于任何有效的算法都無(wú)法從加密得到的密文中得到任何有意義的語(yǔ)義信息,而語(yǔ)義信息的喪失使得借助普通的檢索算法無(wú)法實(shí)現(xiàn)對(duì)密文數(shù)據(jù)的檢索。為了解決密文檢索問題,出現(xiàn)了可搜索加密技術(shù)。
[0003]可搜索加密,不需要對(duì)加密的密文數(shù)據(jù)進(jìn)行解密,而是利用檢測(cè)算法來(lái)進(jìn)行搜索,輸出的是該密文是否含有搜索關(guān)鍵詞的結(jié)果,一般是O或者I。可搜索加密的發(fā)展包含三個(gè)主要的歷史階段,首先是對(duì)稱密鑰可搜索加密,于2000年由Song等提出。其應(yīng)用場(chǎng)景是搜索方與加密方為同一實(shí)體,利用對(duì)稱密碼體制將數(shù)據(jù)和關(guān)鍵詞進(jìn)行加密后上傳到服務(wù)器,之后對(duì)該密文數(shù)據(jù)進(jìn)行檢索。其缺點(diǎn)是用戶只能搜索自己加密并上傳到數(shù)據(jù)庫(kù)中的加密數(shù)據(jù)。
[0004]為了克服這一應(yīng)用上的局限性,Dan Boneh于2004年提出了帶關(guān)鍵詞搜索的公鑰加密(Public Key Encryption with Keyword Search, PEKS)。PEKS 方案的應(yīng)用場(chǎng)景是多個(gè)發(fā)送方發(fā)送關(guān)鍵詞密文和數(shù)據(jù)密文給接收方,接收方利用私鑰生成搜索令牌,上傳至服務(wù)器,服務(wù)器運(yùn)行相應(yīng)的檢測(cè)算法進(jìn)行關(guān)鍵詞搜索。該方案中的接收者只能是單一實(shí)體,同時(shí)每次關(guān)鍵詞檢測(cè)算法的運(yùn)行只能實(shí)現(xiàn)對(duì)一個(gè)關(guān)鍵詞的檢索,無(wú)法實(shí)現(xiàn)對(duì)合取關(guān)鍵詞進(jìn)行檢索(假設(shè)有η個(gè)關(guān)鍵詞分別為Wl,W2,…,Wn,對(duì)包含關(guān)鍵詞Wl,且包含關(guān)鍵詞W2,…,且包含關(guān)鍵詞fc的密文進(jìn)行搜 索,稱為合取關(guān)鍵詞搜索),這是其功能上的瓶頸。
[0005]2007年Hwang和Lee提出了解決該問題的方案,即多用戶的帶合取關(guān)鍵詞搜索的公鑰加密(Mult1-user Public Key Encryption with Conjunctive Keyword Search,mPECK),帶多接收者合取關(guān)鍵詞檢索的公鑰加密方案。該方案是基于公鑰密碼體制的,需要在線的公鑰數(shù)據(jù)庫(kù)或者證書庫(kù)的基礎(chǔ)設(shè)施的支持,同時(shí)發(fā)送方需要查詢和下載群組所有成員的公鑰,根據(jù)每個(gè)接收者的公鑰對(duì)數(shù)據(jù)進(jìn)行加密,接受者根據(jù)自己的私鑰生成搜索令牌對(duì)數(shù)據(jù)進(jìn)行搜索。然而,公鑰數(shù)據(jù)庫(kù)的維護(hù)和管理成本非常高,并且發(fā)送者查詢下載多個(gè)用戶的公鑰可能浪費(fèi)網(wǎng)絡(luò)帶寬和存儲(chǔ)資源。
【發(fā)明內(nèi)容】
[0006]本發(fā)明實(shí)施例的目的在于提供一種可搜索加密方法和設(shè)備,解決了現(xiàn)有技術(shù)中基于公鑰的可搜索加密技術(shù)中需要在線的公鑰數(shù)據(jù)庫(kù)或者證書庫(kù)的基礎(chǔ)設(shè)施的支持,同時(shí)發(fā)送方需要查詢和下載群組所有成員的公鑰的問題。
[0007]第一方面,一種可搜索加密方法,所述方法包括:
[0008]獲取搜索方的身份信息以及密鑰管理中心的系統(tǒng)參數(shù),所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息;
[0009]根據(jù)所述搜索方的身份信息以及所述系統(tǒng)參數(shù)對(duì)關(guān)鍵詞進(jìn)行加密,并將加密后的關(guān)鍵詞密文上傳到存儲(chǔ)服務(wù)器。
[0010]結(jié)合第一方面,在第一方面的第一種可能的實(shí)現(xiàn)方式中,所述根據(jù)所述搜索方的身份信息以及所述系統(tǒng)參數(shù)對(duì)關(guān)鍵詞進(jìn)行加密,包括:
[0011]根據(jù)所述搜索方的身份信息和所述系統(tǒng)參數(shù)計(jì)算出加密所述關(guān)鍵詞的公鑰,并根據(jù)所述計(jì)算出的公鑰加密所述關(guān)鍵詞。
[0012]結(jié)合第一方面或者第一方面的第一種可能的實(shí)現(xiàn)方式,在第一方面的第二種可能的實(shí)現(xiàn)方式中,所述方法還包括:
[0013]根據(jù)所述搜索方的身份信息和所述系統(tǒng)參數(shù)加密明文數(shù)據(jù),并將加密后的明文數(shù)據(jù)的密文上傳到所述存儲(chǔ)服務(wù)器。
[0014]結(jié)合第一方面的第二種可能的實(shí)現(xiàn)方式,在第一方面的第三種可能的實(shí)現(xiàn)方式中,所述根據(jù)所述搜索方的身份和所述系統(tǒng)參數(shù)加密明文數(shù)據(jù),包括:
[0015]根據(jù)所述搜索方的身份信息和所述系統(tǒng)參數(shù)計(jì)算出加密所述明文數(shù)據(jù)的公鑰,并根據(jù)所述計(jì)算出的公鑰加密所述明文數(shù)據(jù)。
[0016]結(jié)合第一方面或者第一方面的第一種可能的實(shí)現(xiàn)方式,在第一方面的第四種可能的實(shí)現(xiàn)方式中,所述方法還包括:
[0017]根據(jù)所述搜索方的屬性加密明文數(shù)據(jù),并將加密后的明文數(shù)據(jù)的密文上傳到所述存儲(chǔ)服務(wù)器。
[0018]第二方面,一種基于身份的可搜索加密方法,所述方法包括:
[0019]根據(jù)搜索方的身份信息從密鑰管理中心獲取查詢密鑰,所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息;
[0020]根據(jù)關(guān)鍵詞和所述獲取的查詢密鑰生成查詢令牌,通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢加密后的關(guān)鍵詞密文。
[0021]結(jié)合第二方面,在第二方面的第一種可能的實(shí)現(xiàn)方式中,所述通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢加密后的關(guān)鍵詞密文,包括:
[0022]通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢包含加密后的關(guān)鍵詞的文件。
[0023]結(jié)合第二方面或者第二方面的第一種可能的實(shí)現(xiàn)方式,在第二方面的第二種可能的實(shí)現(xiàn)方式中,所述根據(jù)關(guān)鍵詞和所述獲取的查詢密鑰生成查詢令牌,包括:
[0024]當(dāng)根據(jù)搜索方所在群的身份從密鑰管理中心獲取查詢密鑰時(shí),所述搜索方向所述搜索方所在群遞交關(guān)鍵詞,所述搜索方所在群檢查所述搜索方是否是群內(nèi)的成員,若是,則所述搜索方所在群根據(jù)所述關(guān)鍵詞和所述查詢密鑰生成查詢令牌,并將所述查詢令牌返回到所述搜索方。
[0025]結(jié)合第二方面或者第二方面的第一種可能的實(shí)現(xiàn)方式或者第二方面的第二種可能的實(shí)現(xiàn)方式,在第二方面的第三種可能的實(shí)現(xiàn)方式中,所述通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢加密后的關(guān)鍵詞密文,包括:
[0026]接收所述存儲(chǔ)服務(wù)器返回的根據(jù)公鑰加密的明文數(shù)據(jù)的密文。
[0027]結(jié)合第二方面的第三種可能的實(shí)現(xiàn)方式,在第二方面的第四種可能的實(shí)現(xiàn)方式中,所述方法在步驟接收所述存儲(chǔ)服務(wù)器返回的根據(jù)公鑰加密的明文數(shù)據(jù)的密文之后,還包括:
[0028]根據(jù)所述查詢密鑰,對(duì)所述根據(jù)公鑰加密的明文數(shù)據(jù)的密文進(jìn)行解密,獲得解密后的明文數(shù)據(jù)。
[0029]結(jié)合第二方面或者第二方面的第一種可能的實(shí)現(xiàn)方式或者第二方面的第二種可能的實(shí)現(xiàn)方式或者第二方面的第三種可能的實(shí)現(xiàn)方式或者第二方面的第四種可能的實(shí)現(xiàn)方式,在第二方面的第五種可能的實(shí)現(xiàn)方式中,所述方法,還包括:
[0030]根據(jù)預(yù)先設(shè)置的搜索方屬性從所述密鑰管理中心獲取所述屬性對(duì)應(yīng)的數(shù)據(jù)解密密鑰。
[0031]結(jié)合第二方面的第五種可能的實(shí)現(xiàn)方式,在第二方面的第六種可能的實(shí)現(xiàn)方式中,所述通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢加密后的關(guān)鍵詞密文,包括:
[0032]接收所述存儲(chǔ)服務(wù)器返回的根據(jù)所述預(yù)先設(shè)置的搜索方屬性加密的明文數(shù)據(jù)的密文。
[0033]結(jié)合第二方面的第六種可能的實(shí)現(xiàn)方式,在第二方面的第七種可能的實(shí)現(xiàn)方式中,所述方法在步驟接收所述存儲(chǔ)服務(wù)器返回的根據(jù)所述預(yù)先設(shè)置的搜索方屬性加密的明文數(shù)據(jù)的密文之后,還包括:
[0034]根據(jù)所述數(shù)據(jù)解密密鑰,對(duì)所述存儲(chǔ)服務(wù)器返回的根據(jù)所述預(yù)先設(shè)置的搜索方屬性加密的明文數(shù)據(jù)的密文進(jìn)行解密,獲得解密后的明文數(shù)據(jù)。
[0035]第三方面,一種加密設(shè)備,所述設(shè)備包括:
[0036]第一獲取單元,用于獲取搜索方的身份信息以及密鑰管理中心的系統(tǒng)參數(shù),所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息;
[0037]加密上傳單元,用于根據(jù)所述搜索方的身份信息以及所述系統(tǒng)參數(shù)對(duì)關(guān)鍵詞進(jìn)行加密,并將加密后的關(guān)鍵詞密文上傳到存儲(chǔ)服務(wù)器。
[0038]結(jié)合第三方面,在第三方面的第一種可能的實(shí)現(xiàn)方式中,所述加密上傳單元具體用于:
[0039]根據(jù)所述搜索方的身份信息和所述系統(tǒng)參數(shù)計(jì)算出加密所述關(guān)鍵詞的公鑰,并根據(jù)所述計(jì)算出的公鑰加密所述關(guān)鍵詞。
[0040]結(jié)合第三方面或者第三面的第一種可能的實(shí)現(xiàn)方式,在第三方面的第二種可能的實(shí)現(xiàn)方式中,所述設(shè)備還包括:
[0041]第一加密單元,用于根據(jù)所述搜索方的身份信息和所述系統(tǒng)參數(shù)加密明文數(shù)據(jù),并將加密后的明文數(shù)據(jù)的密文上傳到所述存儲(chǔ)服務(wù)器。
[0042]結(jié)合第三面的第二種可能的實(shí)現(xiàn)方式,在第三方面的第三種可能的實(shí)現(xiàn)方式中,所述第一加密單元具體用于:
[0043]根據(jù)所述搜索方的身份信息和所述系統(tǒng)參數(shù)計(jì)算出加密所述明文數(shù)據(jù)的公鑰,并根據(jù)所述計(jì)算出的公鑰加密所述明文數(shù)據(jù)。
[0044]結(jié)合第三方面或者第三方面的第一種可能的實(shí)現(xiàn)方式,在第三方面的第四種可能的實(shí)現(xiàn)方式中,所述設(shè)備還包括:
[0045]第二加密單元,用于根據(jù)所述搜索方的屬性加密明文數(shù)據(jù),并將加密后的明文數(shù)據(jù)的密文上傳到所述存儲(chǔ)服務(wù)器。[0046]第四方面,一種搜索設(shè)備,所述設(shè)備包括:
[0047]第二獲取單元,用于根據(jù)搜索方的身份信息從密鑰管理中心獲取查詢密鑰,所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息;
[0048]查詢接收單元,用于根據(jù)關(guān)鍵詞和所述獲取的查詢密鑰生成查詢令牌,通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢加密后的關(guān)鍵詞密文。
[0049]結(jié)合第四方面,在第四方面的第一種可能的實(shí)現(xiàn)方式中,所述查詢接收單元中執(zhí)行步驟通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢加密后的關(guān)鍵詞密文,包括:
[0050]通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢包含加密后的關(guān)鍵詞的文件。
[0051]結(jié)合第四方面或者第四方面的第一種可能的實(shí)現(xiàn)方式,在第四方面的第二種可能的實(shí)現(xiàn)方式中,所述查詢接收單元執(zhí)行步驟根據(jù)關(guān)鍵詞和所述獲取的查詢密鑰生成查詢令牌,包括:
[0052]當(dāng)根據(jù)搜索方所在群的身份從密鑰管理中心獲取查詢密鑰時(shí),所述搜索方向所述搜索方所在群遞交關(guān)鍵詞,所述搜索方所在群檢查所述搜索方是否是群內(nèi)的成員,若是,則所述搜索方所在群根據(jù)所述關(guān)鍵詞和所述查詢密鑰生成查詢令牌,并將所述查詢令牌返回到所述搜索方。
[0053]結(jié)合第四方面或者第四方面的第一種可能的實(shí)現(xiàn)方式或者第四方面的第二種可能的實(shí)現(xiàn)方式,在第四方面的第三種可能的實(shí)現(xiàn)方式中,所述查詢接收單元,包括:
[0054]接收所述存儲(chǔ)服務(wù)器返回的根據(jù)公鑰加密的明文數(shù)據(jù)的密文。
[0055]結(jié)合第四方面的第三種可能的實(shí)現(xiàn)方式,在第四方面的第四種可能的實(shí)現(xiàn)方式中,所述設(shè)備還包括第一解密單元,所述第一解密單元具體用于:
[0056]根據(jù)所述查詢密鑰,對(duì)所述根據(jù)公鑰加密的明文數(shù)據(jù)的密文進(jìn)行解密,獲得解密后的明文數(shù)據(jù)。
[0057]結(jié)合第四方面或者第四方面的第一種可能的實(shí)現(xiàn)方式或者第四方面的第二種可能的實(shí)現(xiàn)方式或者第四方面的第三種可能的實(shí)現(xiàn)方式或者第四方面的第四種可能的實(shí)現(xiàn)方式,在第四方面的第五種可能的實(shí)現(xiàn)方式中,所述設(shè)備還包括第三獲取單元,所述第三獲取單元具體用于:
[0058]根據(jù)預(yù)先設(shè)置的搜索方屬性從所述密鑰管理中心獲取所述屬性對(duì)應(yīng)的數(shù)據(jù)解密密鑰。
[0059]結(jié)合第四方面的第五種可能的實(shí)現(xiàn)方式,在第四方面的第六種可能的實(shí)現(xiàn)方式中,所述查詢接收單元,包括:
[0060]接收所述存儲(chǔ)服務(wù)器返回的根據(jù)所述預(yù)先設(shè)置的搜索方屬性加密的明文數(shù)據(jù)的密文。
[0061]結(jié)合第四方面的第六種可能的實(shí)現(xiàn)方式,在第四方面的第七種可能的實(shí)現(xiàn)方式中,所述設(shè)備還包括第二解密單元,所述第二解密單元包括:
[0062]根據(jù)所述數(shù)據(jù)解密密鑰,對(duì)所述存儲(chǔ)服務(wù)器返回的根據(jù)所述預(yù)先設(shè)置的搜索方屬性加密的明文數(shù)據(jù)的密文進(jìn)行解密,獲得解密后的明文數(shù)據(jù)。
[0063]與現(xiàn)有技術(shù)相比,本發(fā)明實(shí)施例提供一種可搜索加密方法,所述方法通過從密鑰管理中心獲取系統(tǒng)參數(shù)和私鑰,使得密鑰管理中心可以采用離線的方式工作同樣可以實(shí)現(xiàn)發(fā)送方加密和搜索方搜索的目的。同時(shí),發(fā)送方只需要知道搜索方的身份或者搜索方所在群即可實(shí)現(xiàn)關(guān)鍵詞的加密方法,使得發(fā)送方不需要下載多個(gè)搜索方的身份或者搜索方所在群的公鑰,不需要在線公鑰數(shù)據(jù)庫(kù)支撐,降低了網(wǎng)絡(luò)帶寬和存儲(chǔ)開銷。由于對(duì)應(yīng)發(fā)送方公鑰的查詢密鑰是由所述密鑰管理中心產(chǎn)生的,因此密鑰管理中心能夠搜索所有的關(guān)鍵詞密文數(shù)據(jù),實(shí)現(xiàn)集中式密鑰托管功能,該功能在公司及一些政府機(jī)關(guān)尤其重要。同時(shí)通過上述一個(gè)或者多個(gè)關(guān)鍵詞的方式,可以實(shí)現(xiàn)搜索方對(duì)所述一個(gè)或多個(gè)關(guān)鍵詞在所述存儲(chǔ)服務(wù)器進(jìn)行搜索查詢,通過搜索方所在群對(duì)搜索方查詢進(jìn)行管理和控制,從而實(shí)現(xiàn)多用戶搜索的目的。
【專利附圖】
【附圖說(shuō)明】
[0064]為了更清楚地說(shuō)明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0065]圖1是本發(fā)明實(shí)施例一提供的一種可搜索加密方法流程圖;
[0066]圖2是本發(fā)明實(shí)施例二提供的一種可搜索加密方法流程圖;
[0067]圖3是本發(fā)明實(shí)施例一、二提供的一種可搜索加密方法示意圖;
[0068]圖4是本發(fā)明實(shí)施例一、二提供的一種可搜索加密方法示意圖;
[0069]圖5是本發(fā)明實(shí)施例三提供的一種可搜索加密方法流程圖;
[0070]圖6是本發(fā)明實(shí)施例四提供的一種可搜索加密方法流程圖;
[0071]圖7是本發(fā)明實(shí)施例三、四提供的一種可搜索加密方法示意圖;
[0072]圖8是本發(fā)明實(shí)施例五提供的一種可搜索加密方法流程圖;
[0073]圖9是本發(fā)明實(shí)施例六提供的一種可搜索加密方法流程圖;
[0074]圖10是本發(fā)明實(shí)施例五、六提供的一種可搜索加密方法示意圖;
[0075]圖11是本發(fā)明實(shí)施例七提供的一種可搜索加密方法流程圖;
[0076]圖12是本發(fā)明實(shí)施例七提供的一種可搜索加密方法流程圖;
[0077]圖13是本發(fā)明實(shí)施例七、八提供的一種可搜索加密方法示意圖;
[0078]圖14是本發(fā)明實(shí)施例九提供的一種加密設(shè)備的裝置結(jié)構(gòu)圖;
[0079]圖15是本發(fā)明實(shí)施例十提供的一種搜索設(shè)備的裝置結(jié)構(gòu)圖;
[0080]圖16是本發(fā)明實(shí)施例十一提供的一種加密設(shè)備的裝置結(jié)構(gòu)圖;
[0081]圖17是本發(fā)明實(shí)施例十二提供的一種搜索設(shè)備的裝置結(jié)構(gòu)圖;
[0082]圖18是本發(fā)明實(shí)施例十三提供的一種加密設(shè)備的裝置結(jié)構(gòu)圖;
[0083]圖19是本發(fā)明實(shí)施例十四提供的一種搜索設(shè)備的裝置結(jié)構(gòu)圖;
[0084]圖20是本發(fā)明實(shí)施例十五提供的一種加密設(shè)備的裝置結(jié)構(gòu)圖;
[0085]圖21是本發(fā)明實(shí)施例十六提供的一種搜索設(shè)備的裝置結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0086]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0087]以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
[0088]實(shí)施例一
[0089]參考圖1,圖1是本發(fā)明實(shí)施例一提供的一種可搜索加密方法流程圖。如圖1所示,該方法包括以下步驟:
[0090]步驟101,獲取搜索方的身份信息以及密鑰管理中心的系統(tǒng)參數(shù),所述搜索方包括單個(gè)搜索者或者多個(gè)搜索者所在的群組,所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息;
[0091]其中,所述搜索方的身份信息包括但不限于搜索方的手機(jī)號(hào)碼、工號(hào)、QQ號(hào)、Email等信息。所述獲取搜索方的身份信息的方式包括但不限于通過電話查詢或者郵件查詢等方式獲得。所述搜索方所在群的身份信息包括但不限于搜索方所在群的QQ群號(hào)、部門名稱等信息。所述獲取搜索方所在群的身份的方式包括但不限于通過電話查詢或者郵件查詢等方式獲得。所述密鑰管理中心負(fù)責(zé)向發(fā)送方下發(fā)用于計(jì)算加密公鑰的系統(tǒng)參數(shù),還可以進(jìn)一步向搜索方或者搜索方所在群下發(fā)所述加密公鑰對(duì)應(yīng)的私鑰,即查詢密鑰,所述系統(tǒng)參數(shù)包括但不限于橢圓曲線密碼參數(shù)組,映射函數(shù)和映射方法。
[0092]具體的,由身份得到的映射參數(shù)是一致的,而公鑰的計(jì)算方式是由映射參數(shù)和公鑰因子矩陣相乘得到的,私鑰的計(jì)算方式是由映射參數(shù)和私鑰因子矩陣相乘得到的,因此,保證了公鑰和私鑰的一一對(duì)應(yīng)。
[0093]本步驟中,所述密鑰管理中心可以采用離線的方式工作,即發(fā)送所述身份信息和系統(tǒng)參數(shù),以及發(fā)送查詢密鑰的時(shí)間并不限定,可以在離線之前將系統(tǒng)參數(shù)下發(fā)給發(fā)送方,并將計(jì)算出的加密公鑰所對(duì)應(yīng)的查詢密鑰下發(fā)給搜索方或者搜索方所在群,也可以在線提供。
[0094]步驟102,根據(jù)所述搜索方的身份信息以及所述系統(tǒng)參數(shù)對(duì)關(guān)鍵詞進(jìn)行加密,并將加密后的關(guān)鍵詞密文上傳到存儲(chǔ)服務(wù)器。
[0095]具體的,所述根據(jù)所述搜索方的身份信息以及所述系統(tǒng)參數(shù)對(duì)關(guān)鍵詞進(jìn)行加密,包括:
[0096]根據(jù)所述搜索方的身份信息以及所述系統(tǒng)參數(shù),計(jì)算出用來(lái)加密所述關(guān)鍵詞的加密公鑰,并根據(jù)所述計(jì)算出的加密公鑰加密所述關(guān)鍵詞。
[0097]本步驟中,發(fā)送方只需要知道搜索方的身份信息或者搜索方所在群組的身份信息即可實(shí)現(xiàn)關(guān)鍵詞的加密,使得發(fā)送方不需要從在線的公鑰數(shù)據(jù)庫(kù)或者證書庫(kù)下載加密公鑰,降低了網(wǎng)絡(luò)帶寬和存儲(chǔ)開銷。
[0098]本發(fā)明實(shí)施例提供一種基于身份的可搜索加密方法,所述方法中發(fā)送方只需要知道搜索方的身份或者搜索方所在群即可實(shí)現(xiàn)關(guān)鍵詞的加密方法,使得發(fā)送方不需要下載多個(gè)搜索方的身份或者搜索方所在群的公鑰,不需要在線公鑰數(shù)據(jù)庫(kù)支撐,降低了網(wǎng)絡(luò)帶寬和存儲(chǔ)開銷。
[0099]實(shí)施例二
[0100]參考圖2,圖2是本發(fā)明實(shí)施例二提供的一種基于身份的可搜索加密方法流程圖。如圖2所示,該方法包括以下步驟:[0101]步驟201,根據(jù)搜索方的身份信息從密鑰管理中心獲取查詢密鑰,所述搜索方包括單個(gè)搜索者或者多個(gè)搜索者所在的群組,所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息;
[0102]其中,查詢密鑰是所述密鑰管理中心根據(jù)所述搜索方的身份信息以及系統(tǒng)參數(shù)生成的加密密鑰所對(duì)應(yīng)的私鑰。所述密鑰管理中心同樣可以計(jì)算公鑰,因?yàn)樗雒荑€管理中心存儲(chǔ)有公鑰因子矩陣,而私鑰只存在于所述密鑰管理中心,不對(duì)外布。
[0103]步驟202,根據(jù)關(guān)鍵詞和所述獲取的查詢密鑰生成查詢令牌,通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢加密后的關(guān)鍵詞密文,并接收所述存儲(chǔ)服務(wù)器返回的查詢結(jié)果。
[0104]其中,所述根據(jù)關(guān)鍵詞和所述獲取的查詢密鑰生成查詢令牌,包括:
[0105]根據(jù)搜索方的一個(gè)或者多個(gè)關(guān)鍵詞和所述獲取的查詢密鑰生成查詢令牌。
[0106]通過上述一個(gè)或者多個(gè)關(guān)鍵詞的方式,可以實(shí)現(xiàn)搜索方對(duì)所述一個(gè)或多個(gè)關(guān)鍵詞在所述存儲(chǔ)服務(wù)器進(jìn)行搜索查詢。
[0107]可優(yōu)選的,所述根據(jù)關(guān)鍵詞和所述獲取的查詢密鑰生成查詢令牌,包括:
[0108]當(dāng)根據(jù)搜索方所在群的身份信息從密鑰管理中心獲取查詢密鑰時(shí),所述搜索方向所述搜索方所在群遞交關(guān)鍵詞,所述搜索方所在群檢查所述搜索方是否是群內(nèi)的成員,若是,則所述搜索方所在群根據(jù)所述關(guān)鍵詞和所述查詢密鑰生成查詢令牌,并將所述查詢令牌返回到所述搜索方。通過搜索方所在群對(duì)搜索方查詢進(jìn)行管理和控制,從而實(shí)現(xiàn)多用戶搜索的目的。
[0109]圖3和圖4是本發(fā)明實(shí)施例一和二提供的一種基于身份的可搜索加密方法示意圖,現(xiàn)以信令交互的方式具體說(shuō)明實(shí)施例一和二中所述的一種基于身份的可搜索加密方法。同時(shí),本發(fā)明實(shí)施例的實(shí)現(xiàn)方式包括圖3和圖4的步驟,但不限于各步驟的順序,圖3和圖4只是一種可優(yōu)選的實(shí)施例。如圖3所示,所述方法包括如下步驟:
[0110]步驟301,發(fā)送方從密鑰管理中心獲取系統(tǒng)參數(shù),并同時(shí)獲取搜索方的身份信息,所述搜索方包括單個(gè)搜索者或者多個(gè)搜索者所在的群組,所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息;
[0111]步驟302,發(fā)送方根據(jù)搜索方的身份信息和系統(tǒng)參數(shù)獲得對(duì)關(guān)鍵詞進(jìn)行加密的加密密鑰,根據(jù)所述加密密鑰加密關(guān)鍵詞并將加密后的關(guān)鍵詞密文上傳到存儲(chǔ)服務(wù)器;
[0112]步驟303,搜索方根據(jù)自己相關(guān)的身份信息從所述密鑰管理中心獲取查詢密鑰;
[0113]步驟304,搜索方根據(jù)所述查詢密鑰和關(guān)鍵詞生成查詢令牌;
[0114]步驟305,搜索方上傳所述查詢令牌到所述存儲(chǔ)服務(wù)器;
[0115]步驟306,搜索方從所述存儲(chǔ)服務(wù)器接收返回的查詢結(jié)果。
[0116]如圖4所示,所述方法包括如下步驟:
[0117]步驟401,發(fā)送方從密鑰管理中心獲取系統(tǒng)參數(shù),并同時(shí)獲取搜索方的身份信息,所述搜索方包括單個(gè)搜索者或者多個(gè)搜索者所在的群組,所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息;
[0118]步驟402,發(fā)送方根據(jù)搜索方的身份信息和系統(tǒng)參數(shù)獲得對(duì)關(guān)鍵詞進(jìn)行加密的加密密鑰,根據(jù)所述加密密鑰加密關(guān)鍵詞并將加密后的關(guān)鍵詞密文上傳到存儲(chǔ)服務(wù)器;
[0119]步驟403,搜索方所在群根據(jù)所述群的身份信息從所述密鑰管理中心獲取查詢密鑰;[0120]步驟404,所述搜索方向搜索方所在群遞交關(guān)鍵詞,向搜索方所在群申請(qǐng)查詢令牌;
[0121 ] 步驟405,搜索方所在群檢查所述搜索方是否是群內(nèi)成員,若是,則生成查詢令牌,若不是,則不生成查詢令牌;
[0122]步驟406,所述搜索方接收所述群下發(fā)的查詢令牌;
[0123]步驟407,搜索方上傳所述查詢令牌到所述存儲(chǔ)服務(wù)器;
[0124]步驟408,搜索方從所述存儲(chǔ)服務(wù)器接收返回的查詢結(jié)果。
[0125]本發(fā)明實(shí)施例提供一種基于身份的可搜索加密方法,所述方法通過上述一個(gè)或者多個(gè)關(guān)鍵詞的方式,可以實(shí)現(xiàn)搜索方對(duì)所述一個(gè)或多個(gè)關(guān)鍵詞在所述存儲(chǔ)服務(wù)器進(jìn)行搜索查詢。同時(shí)通過搜索方所在群對(duì)搜索方查詢進(jìn)行管理和控制,從而實(shí)現(xiàn)多用戶搜索的目的。
[0126]實(shí)施例三
[0127]參考圖5,圖5是本發(fā)明實(shí)施例三提供的一種基于身份的可搜索加密方法流程圖。如圖5所示,所述方法包括以下步驟:
[0128]步驟501,獲取搜索方的身份或者搜索方所在群的身份,和密鑰管理中心的系統(tǒng)參數(shù);
[0129]步驟502,根據(jù)所述搜索方的身份或者搜索方所在群的身份,和所述系統(tǒng)參數(shù)加密關(guān)鍵詞,并將加密后的關(guān)鍵詞密文上傳到存儲(chǔ)服務(wù)器;
[0130]步驟503,根據(jù)現(xiàn)有技術(shù)中任意一種加密的方法加密明文數(shù)據(jù),并將加密后的明文數(shù)據(jù)的密文上傳到所述存儲(chǔ)服務(wù)器。
[0131]本步驟中,通過現(xiàn)有技術(shù)中任意一種加密的方法加密所述關(guān)鍵詞對(duì)應(yīng)的明文數(shù)據(jù)。
[0132]本發(fā)明實(shí)施例對(duì)于搜索方或者搜索方所在群都適用,下面主要以搜索方為例做進(jìn)一步說(shuō)明。具體參考圖7所示的步驟703。
[0133]本發(fā)明實(shí)施例通過本發(fā)明實(shí)施例一和二提供的一種基于身份的可搜索加密方法加密關(guān)鍵詞,通過現(xiàn)有技術(shù)加密所述關(guān)鍵詞對(duì)應(yīng)的明文數(shù)據(jù),從而實(shí)現(xiàn)在現(xiàn)有技術(shù)的基礎(chǔ)上,實(shí)現(xiàn)基于身份的可搜索加密關(guān)鍵詞的方案。
[0134]實(shí)施例四
[0135]參考圖6,圖6是本發(fā)明實(shí)施例四提供的一種基于身份的可搜索加密方法流程圖。如圖6所示,所述方法包括如下步驟:
[0136]步驟601,根據(jù)搜索方的身份或者搜索方所在群的身份從密鑰管理中心獲取查詢密鑰;
[0137]步驟602,根據(jù)關(guān)鍵詞和所述獲取的查詢密鑰生成查詢令牌,通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢加密后的關(guān)鍵詞密文,并接收所述存儲(chǔ)服務(wù)器返回的數(shù)據(jù);
[0138]步驟603,獲取現(xiàn)有技術(shù)中任意一種加密明文數(shù)據(jù)的方法對(duì)應(yīng)的解密密鑰;
[0139]步驟604,根據(jù)所述現(xiàn)有技術(shù)中任意一種加密明文數(shù)據(jù)的方法對(duì)應(yīng)的解密密鑰,對(duì)所述加密后的明文數(shù)據(jù)的密文進(jìn)行解密,獲得解密后的明文數(shù)據(jù)。
[0140]本步驟中,通過現(xiàn)有技術(shù)中任意一種加密的方法對(duì)應(yīng)的解密方法解密所述關(guān)鍵詞對(duì)應(yīng)的明文數(shù)據(jù)。
[0141]本發(fā)明實(shí)施例對(duì)于搜索方或者搜索方所在群都適用,下面主要以搜索方為例做進(jìn)一步說(shuō)明。具體參考圖7所示的步驟708和步驟709。
[0142]圖7是本發(fā)明實(shí)施例三和實(shí)施例四提供的一種基于身份的可搜索加密方法,現(xiàn)以信令交互的方式具體說(shuō)明實(shí)施例三和四中所述的一種基于身份的可搜索加密方法,同時(shí),本發(fā)明實(shí)施例的實(shí)現(xiàn)方式包括圖7的步驟,但不限于各步驟的順序,圖7只是一種可優(yōu)選的實(shí)施例。如圖7所示,所述方法包括如下步驟:
[0143]步驟701,發(fā)送方從密鑰管理中心獲取系統(tǒng)參數(shù),并同時(shí)獲取搜索方的身份信息,所述搜索方包括單個(gè)搜索者或者多個(gè)搜索者所在的群組,所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息;
[0144]步驟702,發(fā)送方根據(jù)搜索方的身份信息和系統(tǒng)參數(shù)獲得對(duì)關(guān)鍵詞進(jìn)行加密的加密密鑰,根據(jù)所述加密密鑰加密關(guān)鍵詞并將加密后的關(guān)鍵詞密文上傳到存儲(chǔ)服務(wù)器;
[0145]步驟703,所述發(fā)送方根據(jù)現(xiàn)有技術(shù)中任意一種加密的方法加密明文數(shù)據(jù),并將加密后的明文數(shù)據(jù)的密文上傳到所述存儲(chǔ)服務(wù)器;
[0146]步驟704,搜索方根據(jù)自己相關(guān)的身份信息從所述密鑰管理中心獲取查詢密鑰;
[0147]步驟705,搜索方根據(jù)所述查詢密鑰和關(guān)鍵詞生成查詢令牌;
[0148]步驟706,搜索方上傳所述查詢令牌到所述存儲(chǔ)服務(wù)器;
[0149]步驟707,搜索方從所述存儲(chǔ)服務(wù)器接收返回的查詢結(jié)果;
[0150]步驟708,所述搜索方獲取現(xiàn)有技術(shù)中任意一種加密明文數(shù)據(jù)的方法對(duì)應(yīng)的解密密鑰;
[0151]步驟709,根據(jù)所述現(xiàn)有技術(shù)中任意一種加密明文數(shù)據(jù)的方法對(duì)應(yīng)的解密密鑰,對(duì)所述加密后的明文數(shù)據(jù)的密文進(jìn)行解密,獲得解密后的明文數(shù)據(jù)。
[0152]本發(fā)明實(shí)施例通過本發(fā)明實(shí)施例一和二提供的一種基于身份的可搜索加密方法加密關(guān)鍵詞,通過現(xiàn)有技術(shù)加密所述關(guān)鍵詞對(duì)應(yīng)的明文數(shù)據(jù),從而實(shí)現(xiàn)在現(xiàn)有技術(shù)的基礎(chǔ)上,實(shí)現(xiàn)基于身份的可搜索加密關(guān)鍵詞的方案。
[0153]實(shí)施例五
[0154]參考圖8,圖8是本發(fā)明實(shí)施例五提供的一種基于身份的可搜索加密方法流程圖。所述方法包括如下步驟:
[0155]步驟801,獲取搜索方的身份或者搜索方所在群的身份,和密鑰管理中心的系統(tǒng)參數(shù);
[0156]步驟802,根據(jù)所述搜索方的身份或者搜索方所在群的身份,和所述系統(tǒng)參數(shù)加密關(guān)鍵詞,并將加密后的關(guān)鍵詞密文上傳到存儲(chǔ)服務(wù)器;
[0157]步驟803,根據(jù)所述搜索方的身份和所述系統(tǒng)參數(shù)加密明文數(shù)據(jù),并將加密后的明文數(shù)據(jù)的密文上傳到所述存儲(chǔ)服務(wù)器。
[0158]具體的,所述根據(jù)所述搜索方的身份和所述系統(tǒng)參數(shù)加密明文數(shù)據(jù),包括:
[0159]根據(jù)所述搜索方的身份和所述系統(tǒng)參數(shù)計(jì)算出加密所述明文數(shù)據(jù)的公鑰,并根據(jù)所述計(jì)算出的公鑰加密所述明文數(shù)據(jù)。
[0160]本發(fā)明實(shí)施例對(duì)于搜索方或者搜索方所在群都適用,下面主要以搜索方為例做進(jìn)一步說(shuō)明。具體參考圖10所示的步驟1003。
[0161]本發(fā)明實(shí)施例通過使用搜索方的身份和系統(tǒng)參數(shù)計(jì)算出的公鑰加密關(guān)鍵詞對(duì)應(yīng)的明文數(shù)據(jù),使得搜索方只需要通過所述公鑰對(duì)應(yīng)的私鑰解密所述明文數(shù)據(jù)即可,可以通過一對(duì)公鑰和私鑰同時(shí)實(shí)現(xiàn)對(duì)關(guān)鍵詞和明文數(shù)據(jù)同時(shí)加密,使得操作簡(jiǎn)單。所述密鑰管理中心同時(shí)具備查詢和解密全部數(shù)據(jù)的能力,可以實(shí)現(xiàn)集中式數(shù)據(jù)管理,在對(duì)公司及一些政府機(jī)關(guān)尤其重要。
[0162]實(shí)施例六
[0163]參考圖9,圖9是本發(fā)明實(shí)施例六提供的一種基于身份的可搜索加密方法流程圖。如圖9所示,所述方法包括如下步驟:
[0164]步驟901,根據(jù)搜索方的身份或者搜索方所在群的身份從密鑰管理中心獲取查詢密鑰;
[0165]步驟902,根據(jù)關(guān)鍵詞和所述獲取的查詢密鑰生成查詢令牌,通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢加密后的關(guān)鍵詞密文,并接收所述存儲(chǔ)服務(wù)器返回的數(shù)據(jù);
[0166]步驟903,根據(jù)所述查詢密鑰,對(duì)所述根據(jù)搜索方的身份加密的明文數(shù)據(jù)的密文進(jìn)行解密,獲得解密后的明文數(shù)據(jù)。
[0167]本發(fā)明實(shí)施例對(duì)于搜索方或者搜索方所在群都適用,下面主要以搜索方為例做進(jìn)一步說(shuō)明。具體參考圖10所示的步驟1008。
[0168]圖10是本發(fā)明實(shí)施例五和實(shí)施例六提供的一種基于身份的可搜索加密方法,現(xiàn)以信令交互的方式具體說(shuō)明實(shí)施例五和六中所述的一種基于身份的可搜索加密方法,同時(shí),本發(fā)明實(shí)施例的實(shí)現(xiàn)方式包括圖10的步驟,但不限于各步驟的順序,圖10只是一種可優(yōu)選的實(shí)施例。如圖10所示,所述方法包括如下步驟:
[0169]步驟1001,發(fā)送方從密鑰管理中心獲取系統(tǒng)參數(shù),并同時(shí)獲取搜索方的身份信息,所述搜索方包括單個(gè)搜索者或者多個(gè)搜索者所在的群組,所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息;
[0170]步驟1002,發(fā)送方根據(jù)搜索方的身份信息和系統(tǒng)參數(shù)獲得對(duì)關(guān)鍵詞進(jìn)行加密的加密密鑰,根據(jù)所述加密密鑰加密關(guān)鍵詞并將加密后的關(guān)鍵詞密文上傳到存儲(chǔ)服務(wù)器;
[0171]步驟1003,根據(jù)所述搜索方的身份和所述系統(tǒng)參數(shù)加密明文數(shù)據(jù),并將加密后的明文數(shù)據(jù)的密文上傳到所述存儲(chǔ)服務(wù)器;
[0172]步驟1004,搜索方根據(jù)自己相關(guān)的身份信息從所述密鑰管理中心獲取查詢密鑰;
[0173]步驟1005,搜索方根據(jù)所述查詢密鑰和關(guān)鍵詞生成查詢令牌;
[0174]步驟1006,搜索方上傳所述查詢令牌到所述存儲(chǔ)服務(wù)器;
[0175]步驟1007,搜索方從所述存儲(chǔ)服務(wù)器接收返回的查詢結(jié)果;
[0176]步驟1008,根據(jù)所述查詢密鑰,對(duì)所述根據(jù)搜索方的身份加密的明文數(shù)據(jù)的密文進(jìn)行解密,獲得解密后的明文數(shù)據(jù)。
[0177]本發(fā)明實(shí)施例通過使用搜索方的身份和系統(tǒng)參數(shù)計(jì)算出的公鑰加密關(guān)鍵詞對(duì)應(yīng)的明文數(shù)據(jù),使得搜索方只需要通過所述公鑰對(duì)應(yīng)的私鑰解密所述明文數(shù)據(jù)即可,可以通過一對(duì)公鑰和私鑰同時(shí)實(shí)現(xiàn)對(duì)關(guān)鍵詞和明文數(shù)據(jù)同時(shí)加密,使得操作簡(jiǎn)單。所述密鑰管理中心同時(shí)具備查詢和解密全部數(shù)據(jù)的能力,可以實(shí)現(xiàn)集中式數(shù)據(jù)管理,在對(duì)公司及一些政府機(jī)關(guān)尤其重要。
[0178]實(shí)施例七
[0179]參考圖11,圖11是本發(fā)明實(shí)施例七提供的一種基于身份的可搜索加密方法流程圖。如圖11所示,所述方法包括以下步驟:[0180]步驟1101,獲取搜索方的身份或者搜索方所在群的身份,和密鑰管理中心的系統(tǒng)參數(shù);
[0181]步驟1102,根據(jù)所述搜索方的身份或者搜索方所在群的身份,和所述系統(tǒng)參數(shù)加密關(guān)鍵詞,并將加密后的關(guān)鍵詞密文上傳到存儲(chǔ)服務(wù)器;
[0182]步驟1103,根據(jù)所述搜索方的屬性加密明文數(shù)據(jù),并將加密后的明文數(shù)據(jù)的密文上傳到所述存儲(chǔ)服務(wù)器。
[0183]具體的,所述屬性包括但不限于以下幾種情況:例如,公司職員A所在的部門是某某公司研發(fā)部A組,則公司職員A的屬性可以設(shè)置為某某公司研發(fā)部A組,或者設(shè)置為其他形式。發(fā)送方根據(jù)公司職員A的屬性加密關(guān)鍵詞對(duì)應(yīng)的明文數(shù)據(jù),并將加密后的密文上傳到所述存儲(chǔ)服務(wù)器。
[0184]具體的,根據(jù)所述搜索方的屬性加密明文數(shù)據(jù)時(shí),產(chǎn)生的加密密鑰和根據(jù)所述搜索方的身份加密明文數(shù)據(jù)產(chǎn)生的加密密鑰不同。當(dāng)根據(jù)所述搜索方的身份加密明文數(shù)據(jù)時(shí),是根據(jù)所述搜索方的身份和系統(tǒng)參數(shù)生成公鑰,發(fā)送方根據(jù)公鑰對(duì)明文數(shù)據(jù)加密,搜索方根據(jù)公鑰對(duì)應(yīng)的私鑰對(duì)加密后的明文數(shù)據(jù)進(jìn)行解密。當(dāng)根據(jù)搜索方的屬性對(duì)明文數(shù)據(jù)進(jìn)行加密時(shí),是根據(jù)屬性生成加密明文數(shù)據(jù)的加密密鑰,生成密鑰的方式和生成公鑰的方式不同。
[0185]本發(fā)明實(shí)施例對(duì)于搜索方或者搜索方所在群都適用,下面主要以搜索方為例做進(jìn)一步說(shuō)明。具體參考圖13所示的步驟1303。
[0186]本發(fā)明實(shí)施例通過屬性加密搜索方關(guān)鍵詞對(duì)應(yīng)的明文屬性,使得搜索方可以根據(jù)預(yù)先設(shè)置的屬性設(shè)置訪問權(quán)限,對(duì)群組成員可以進(jìn)行多種關(guān)鍵詞檢索的同時(shí),對(duì)群組數(shù)據(jù)的公共可搜索性和數(shù)據(jù)的解密權(quán)限進(jìn)行有效的結(jié)合。
[0187]實(shí)施例八
[0188]參考圖12,圖12是本發(fā)明實(shí)施例八提供的一種基于身份的可搜索加密方法流程圖。如圖12所示,所述方法包括以下步驟:
[0189]步驟1201,根據(jù)搜索方的身份或者搜索方所在群的身份從密鑰管理中心獲取查詢密鑰;
[0190]步驟1202,根據(jù)關(guān)鍵詞和所述獲取的查詢密鑰生成查詢令牌,通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢加密后的關(guān)鍵詞密文,并接收所述存儲(chǔ)服務(wù)器返回的數(shù)據(jù);
[0191]步驟1203,根據(jù)預(yù)先設(shè)置的搜索方屬性從所述密鑰管理中心獲取所述屬性對(duì)應(yīng)的數(shù)據(jù)解密密鑰;
[0192]步驟1204,根據(jù)所述數(shù)據(jù)解密密鑰,對(duì)所述存儲(chǔ)服務(wù)器返回的根據(jù)所述預(yù)先設(shè)置的搜索方屬性加密的明文數(shù)據(jù)的密文進(jìn)行解密,獲得解密后的明文數(shù)據(jù)。
[0193]本發(fā)明實(shí)施例對(duì)于搜索方或者搜索方所在群都適用,下面主要以搜索方為例做進(jìn)一步說(shuō)明。具體參考圖13所示的步驟1308和步驟1309。
[0194]圖13是本發(fā)明實(shí)施例七和實(shí)施例八提供的一種基于身份的可搜索加密方法,現(xiàn)以信令交互的方式具體說(shuō)明實(shí)施例七和八中所述的一種基于身份的可搜索加密方法,同時(shí),本發(fā)明實(shí)施例的實(shí)現(xiàn)方式包括圖13的步驟,但不限于各步驟的順序,圖13只是一種可優(yōu)選的實(shí)施例。如圖13所示,所述方法包括如下步驟:
[0195]步驟1301,發(fā)送方從密鑰管理中心獲取系統(tǒng)參數(shù),并同時(shí)獲取搜索方的身份信息,所述搜索方包括單個(gè)搜索者或者多個(gè)搜索者所在的群組,所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息;
[0196]步驟1302,發(fā)送方根據(jù)搜索方的身份信息和系統(tǒng)參數(shù)獲得對(duì)關(guān)鍵詞進(jìn)行加密的加密密鑰,根據(jù)所述加密密鑰加密關(guān)鍵詞并將加密后的關(guān)鍵詞密文上傳到存儲(chǔ)服務(wù)器;
[0197]步驟1303,所述發(fā)送方根據(jù)所述搜索方的屬性加密明文數(shù)據(jù),并將加密后的明文數(shù)據(jù)的密文上傳到所述存儲(chǔ)服務(wù)器;
[0198]步驟1304,搜索方根據(jù)自己相關(guān)的身份信息從所述密鑰管理中心獲取查詢密鑰;
[0199]步驟1305,搜索方根據(jù)所述查詢密鑰和關(guān)鍵詞生成查詢令牌;
[0200]步驟1306,搜索方上傳所述查詢令牌到所述存儲(chǔ)服務(wù)器;
[0201]步驟1307,搜索方從所述存儲(chǔ)服務(wù)器接收返回的查詢結(jié)果;
[0202]步驟1308,根據(jù)預(yù)先設(shè)置的搜索方屬性從所述密鑰管理中心獲取所述屬性對(duì)應(yīng)的數(shù)據(jù)解密密鑰;
[0203]步驟1309,根據(jù)所述數(shù)據(jù)解密密鑰,對(duì)所述存儲(chǔ)服務(wù)器返回的根據(jù)所述預(yù)先設(shè)置的搜索方屬性加密的明文數(shù)據(jù)的密文進(jìn)行解密,獲得解密后的明文數(shù)據(jù)。
[0204]本發(fā)明實(shí)施例通過屬性加密搜索方關(guān)鍵詞對(duì)應(yīng)的明文數(shù)據(jù),使得搜索方可以根據(jù)預(yù)先設(shè)置的屬性設(shè)置訪問權(quán)限,對(duì)群組成員可以進(jìn)行多種關(guān)鍵詞檢索的同時(shí),對(duì)群組數(shù)據(jù)的公共可搜索性和數(shù)據(jù)的解密權(quán)限進(jìn)行有效的結(jié)合。
[0205]實(shí)施例九
[0206]參考圖14,圖14是本發(fā)明實(shí)施例九提供的一種加密設(shè)備的裝置結(jié)構(gòu)圖,所述設(shè)備包括以下單元:
[0207]第一獲取單元1401和加密上傳單元1402,所述第一獲取單元1401用于執(zhí)行實(shí)施例一中圖1的步驟101,所述加密上傳單元1402用于執(zhí)行實(shí)施例一中圖1的步驟102。
[0208]本領(lǐng)域普通技術(shù)人員可以理解為所述本發(fā)明實(shí)施例九中的設(shè)備所包括的各個(gè)單元只是按照功能邏輯進(jìn)行劃分的,但并不局限于上述的劃分,只要能夠?qū)崿F(xiàn)相應(yīng)的功能即可;另外,各功能單元的具體名稱也只是為了便于相互區(qū)分,并不用于限制本申請(qǐng)的保護(hù)范圍。
[0209]第一獲取單元1401,用于獲取搜索方的身份信息以及密鑰管理中心的系統(tǒng)參數(shù),所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息;
[0210]其中,所述搜索方的身份包括但不限于搜索方的手機(jī)號(hào)碼、工號(hào)、QQ號(hào)、Email等信息。所述獲取搜索方的身份的方式包括但不限于通過電話查詢或者郵件查詢等方式獲得。所述搜索方所在群的身份包括但不限于搜索方所在群的QQ群號(hào)、部門名稱等信息。所述獲取搜索方所在群的身份的方式包括但不限于通過電話查詢或者郵件查詢等方式獲得。所述密鑰管理中心負(fù)責(zé)向發(fā)送方下發(fā)加密關(guān)鍵詞時(shí)使用的系統(tǒng)參數(shù),同時(shí)向搜索方或者搜索方所在群下發(fā)發(fā)送方根據(jù)搜索方的身份或者搜索方所在群的身份和系統(tǒng)參數(shù)計(jì)算出的公鑰對(duì)應(yīng)的私鑰,即查詢密鑰,采用公鑰和私鑰一一對(duì)應(yīng)的方式管理發(fā)送方的公鑰和搜索方或者搜索方所在群的私鑰。具體參考圖3中步驟301所示和圖4中的步驟401。
[0211]本單元中,所述密鑰管理中心可以采用離線的方式工作,在離線之前將系統(tǒng)參數(shù)下發(fā)給發(fā)送方,并將搜索方計(jì)算出的公鑰所對(duì)應(yīng)的查詢密鑰下發(fā)給搜索方或者搜索方所在群即可。
[0212]加密上傳單元1402,用于根據(jù)所述搜索方的身份信息以及所述系統(tǒng)參數(shù)對(duì)關(guān)鍵詞進(jìn)行加密,并將加密后的關(guān)鍵詞密文上傳到存儲(chǔ)服務(wù)器。
[0213]具體的,所述根據(jù)所述搜索方的身份或者搜索方所在群的身份,和所述系統(tǒng)參數(shù)加密關(guān)鍵詞,包括:
[0214]根據(jù)所述搜索方的身份或者搜索方所在群的身份,和所述系統(tǒng)參數(shù)計(jì)算出加密所述關(guān)鍵詞的公鑰,并根據(jù)所述計(jì)算出的公鑰加密所述關(guān)鍵詞。
[0215]本單元中,發(fā)送方只需要知道搜索方的身份或者搜索方所在群即可實(shí)現(xiàn)關(guān)鍵詞的加密方法,使得發(fā)送方不需要下載多個(gè)搜索方的身份或者搜索方所在群的公鑰,不需要在線公鑰數(shù)據(jù)庫(kù)支撐,降低了網(wǎng)絡(luò)帶寬和存儲(chǔ)開銷。同時(shí)由于對(duì)應(yīng)發(fā)送方公鑰的查詢密鑰是由所述密鑰管理中心產(chǎn)生的,因此密鑰管理中心能夠查詢和解密全部數(shù)據(jù),實(shí)現(xiàn)集中式密鑰托管功能,該功能在公司及一些政府機(jī)關(guān)尤其重要。具體參考圖3的步驟302。
[0216]本發(fā)明實(shí)施例提供一種加密設(shè)備,所述加密設(shè)備中發(fā)送方只需要知道搜索方的身份或者搜索方所在群即可實(shí)現(xiàn)關(guān)鍵詞的加密方法,使得發(fā)送方不需要下載多個(gè)搜索方的身份或者搜索方所在群的公鑰,不需要在線公鑰數(shù)據(jù)庫(kù)支撐,降低了網(wǎng)絡(luò)帶寬和存儲(chǔ)開銷。
[0217]實(shí)施例十
[0218]參考圖15,圖15是本發(fā)明實(shí)施例十提供的一種搜索設(shè)備的裝置結(jié)構(gòu)圖,所述設(shè)備包括以下單元:
[0219]第二獲取單元1501和查詢接收單元1502,所述第二獲取單元1501用于執(zhí)行實(shí)施例二中圖2的步驟201,所述加密上傳單元1502用于執(zhí)行實(shí)施例二中圖2的步驟202。
[0220]本領(lǐng)域普通技術(shù)人員可以理解為所述本發(fā)明實(shí)施例十中的設(shè)備所包括的各個(gè)單元只是按照功能邏輯進(jìn)行劃分的,但并不局限于上述的劃分,只要能夠?qū)崿F(xiàn)相應(yīng)的功能即可;另外,各功能單元的具體名稱也只是為了便于相互區(qū)分,并不用于限制本申請(qǐng)的保護(hù)范圍。
[0221]第二獲取單元1501,用于根據(jù)搜索方的身份信息從密鑰管理中心獲取查詢密鑰,所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息;
[0222]其中,查詢密鑰是所述密鑰管理中心根據(jù)所述搜索方的身份或者搜索方所在群的身份生成的私鑰。
[0223]查詢接收單元1502,用于根據(jù)關(guān)鍵詞和所述獲取的查詢密鑰生成查詢令牌,通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢加密后的關(guān)鍵詞密文。
[0224]其中,所述根據(jù)關(guān)鍵詞和所述獲取的查詢密鑰生成查詢令牌,包括:
[0225]根據(jù)搜索方的一個(gè)或者多個(gè)關(guān)鍵詞和所述獲取的查詢密鑰生成查詢令牌。
[0226]通過上述一個(gè)或者多個(gè)關(guān)鍵詞的方式,可以實(shí)現(xiàn)搜索方對(duì)所述一個(gè)或多個(gè)關(guān)鍵詞在所述存儲(chǔ)服務(wù)器進(jìn)行搜索查詢。
[0227]可優(yōu)選的,所述根據(jù)關(guān)鍵詞和所述獲取的查詢密鑰生成查詢令牌,包括:
[0228]當(dāng)根據(jù)搜索方所在群的身份從密鑰管理中心獲取查詢密鑰時(shí),所述搜索方向所述搜索方所在群遞交關(guān)鍵詞,所述搜索方所在群檢查所述搜索方是否是群內(nèi)的成員,若是,則所述搜索方所在群根據(jù)所述關(guān)鍵詞和所述查詢密鑰生成查詢令牌,并將所述查詢令牌返回到所述搜索方。
[0229]本發(fā)明實(shí)施例提供一種搜索設(shè)備,所述搜索設(shè)備通過上述一個(gè)或者多個(gè)關(guān)鍵詞的方式,可以實(shí)現(xiàn)搜索方對(duì)所述一個(gè)或多個(gè)關(guān)鍵詞在所述存儲(chǔ)服務(wù)器進(jìn)行搜索查詢。同時(shí)通過搜索方所在群對(duì)搜索方查詢進(jìn)行管理和控制,從而實(shí)現(xiàn)多用戶搜索的目的。
[0230]實(shí)施例^^一
[0231]參考圖16,圖16是本發(fā)明實(shí)施例十一提供的一種加密設(shè)備的裝置結(jié)構(gòu)圖,所述設(shè)備包括以下單元:
[0232]第一獲取單元1601和加密上傳單元1602,第一加密單元1603,所述第一加密單元1603用于執(zhí)行實(shí)施例五圖8的步驟803。
[0233]本領(lǐng)域普通技術(shù)人員可以理解為所述本發(fā)明實(shí)施例十一中的設(shè)備所包括的各個(gè)單元只是按照功能邏輯進(jìn)行劃分的,但并不局限于上述的劃分,只要能夠?qū)崿F(xiàn)相應(yīng)的功能即可;另外,各功能單元的具體名稱也只是為了便于相互區(qū)分,并不用于限制本申請(qǐng)的保護(hù)范圍。
[0234]第一獲取單元1601,用于獲取搜索方的身份信息以及密鑰管理中心的系統(tǒng)參數(shù),所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息;
[0235]加密上傳單元1602,用于根據(jù)所述搜索方的身份信息以及所述系統(tǒng)參數(shù)對(duì)關(guān)鍵詞進(jìn)行加密,并將加密后的關(guān)鍵詞密文上傳到存儲(chǔ)服務(wù)器;
[0236]第一加密單元1603,用于根據(jù)所述搜索方的身份信息和所述系統(tǒng)參數(shù)加密明文數(shù)據(jù),并將加密后的明文數(shù)據(jù)的密文上傳到所述存儲(chǔ)服務(wù)器。
[0237]具體的,所述根據(jù)所述搜索方的身份和所述系統(tǒng)參數(shù)加密明文數(shù)據(jù),包括:
[0238]根據(jù)所述搜索方的身份和所述系統(tǒng)參數(shù)計(jì)算出加密所述明文數(shù)據(jù)的公鑰,并根據(jù)所述計(jì)算出的公鑰加密所述明文數(shù)據(jù)。
[0239]本發(fā)明實(shí)施例對(duì)于搜索方或者搜索方所在群都適用,下面主要以搜索方為例做進(jìn)一步說(shuō)明。本發(fā)明實(shí)施例通過使用搜索方的身份和系統(tǒng)參數(shù)計(jì)算出的公鑰加密關(guān)鍵詞對(duì)應(yīng)的明文數(shù)據(jù),使得搜索方只需要通過所述公鑰對(duì)應(yīng)的私鑰解密所述明文數(shù)據(jù)即可,可以通過一對(duì)公鑰和私鑰同時(shí)實(shí)現(xiàn)對(duì)關(guān)鍵詞和明文數(shù)據(jù)同時(shí)加密,使得操作簡(jiǎn)單。所述密鑰管理中心同時(shí)具備查詢和解密全部數(shù)據(jù)的能力,可以實(shí)現(xiàn)集中式數(shù)據(jù)管理,在對(duì)公司及一些政府機(jī)關(guān)尤其重要。
[0240]實(shí)施例十二
[0241]參考圖17,圖17是本發(fā)明實(shí)施例十二提供的一種搜索設(shè)備的裝置結(jié)構(gòu)圖,所述設(shè)備包括以下單元:
[0242]第二獲取單元1701和查詢接收單元1702,第一解密單元1703,所述第一解密單元1703用于執(zhí)行實(shí)施例六圖9的步驟903。
[0243]本領(lǐng)域普通技術(shù)人員可以理解為所述本發(fā)明實(shí)施例十二中的設(shè)備所包括的各個(gè)單元只是按照功能邏輯進(jìn)行劃分的,但并不局限于上述的劃分,只要能夠?qū)崿F(xiàn)相應(yīng)的功能即可;另外,各功能單元的具體名稱也只是為了便于相互區(qū)分,并不用于限制本申請(qǐng)的保護(hù)范圍。
[0244]第二獲取單元1701,用于根據(jù)搜索方的身份信息從密鑰管理中心獲取查詢密鑰,所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息;
[0245]查詢接收單元1702,用于根據(jù)關(guān)鍵詞和所述獲取的查詢密鑰生成查詢令牌,通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢加密后的關(guān)鍵詞密文;
[0246]第一解密單元1703,用于根據(jù)所述查詢密鑰,對(duì)所述根據(jù)公鑰加密的明文數(shù)據(jù)的密文進(jìn)行解密,獲得解密后的明文數(shù)據(jù)。
[0247]本發(fā)明實(shí)施例通過使用搜索方的身份和系統(tǒng)參數(shù)計(jì)算出的公鑰加密關(guān)鍵詞對(duì)應(yīng)的明文數(shù)據(jù),使得搜索方只需要通過所述公鑰對(duì)應(yīng)的私鑰解密所述密文數(shù)據(jù)即可,可以通過一對(duì)公鑰和私鑰同時(shí)實(shí)現(xiàn)對(duì)關(guān)鍵詞和明文數(shù)據(jù)同時(shí)加密,使得操作簡(jiǎn)單。所述密鑰管理中心同時(shí)具備查詢和解密全部數(shù)據(jù)的能力,可以實(shí)現(xiàn)集中式數(shù)據(jù)管理,在對(duì)公司及一些政府機(jī)關(guān)尤其重要。
[0248]實(shí)施例十三
[0249]參考圖18,圖18是本發(fā)明實(shí)施例十三提供的一種加密設(shè)備的裝置結(jié)構(gòu)圖,所述設(shè)備包括以下單元:
[0250]第一獲取單元1801和加密上傳單元1802,第二加密單元1803,所述第二加密單元1803用于執(zhí)行實(shí)施例七圖11的步驟1103。
[0251]本領(lǐng)域普通技術(shù)人員可以理解為所述本發(fā)明實(shí)施例十三中的設(shè)備所包括的各個(gè)單元只是按照功能邏輯進(jìn)行劃分的,但并不局限于上述的劃分,只要能夠?qū)崿F(xiàn)相應(yīng)的功能即可;另外,各功能單元的具體名稱也只是為了便于相互區(qū)分,并不用于限制本申請(qǐng)的保護(hù)范圍。
[0252]第一獲取單元1801,用于獲取搜索方的身份信息以及密鑰管理中心的系統(tǒng)參數(shù),所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息;
[0253]加密上傳單元1802,用于根據(jù)所述搜索方的身份信息以及所述系統(tǒng)參數(shù)對(duì)關(guān)鍵詞進(jìn)行加密,并將加密后的關(guān)鍵詞密文上傳到存儲(chǔ)服務(wù)器;
[0254]第二加密單元1803,用于根據(jù)所述搜索方的屬性加密明文數(shù)據(jù),并將加密后的明文數(shù)據(jù)的密文上傳到所述存儲(chǔ)服務(wù)器。
[0255]具體的,所述屬性包括但不限于以下幾種情況:例如,公司職員A所在的部門是某某公司研發(fā)部A組,則公司職員A的屬性可以設(shè)置為某某公司研發(fā)部A組,或者設(shè)置為其他形式。發(fā)送方根據(jù)公司職員A的屬性加密關(guān)鍵詞對(duì)應(yīng)的明文數(shù)據(jù),并將加密后的密文上傳到所述存儲(chǔ)服務(wù)器。
[0256]本發(fā)明實(shí)施例通過屬性加密搜索方關(guān)鍵詞對(duì)應(yīng)的明文屬性,使得搜索方可以根據(jù)預(yù)先設(shè)置的屬性設(shè)置訪問權(quán)限,對(duì)群組成員可以進(jìn)行多種關(guān)鍵詞檢索的同時(shí),對(duì)群組數(shù)據(jù)的公共可搜索性和數(shù)據(jù)的解密權(quán)限進(jìn)行有效的結(jié)合。
[0257]實(shí)施例十四
[0258]參考圖19,圖19是本發(fā)明實(shí)施例十四提供的一種搜索設(shè)備的裝置結(jié)構(gòu)圖,所述設(shè)備包括以下單元:
[0259]第二獲取單元1901和查詢接收單元1902,第三獲取單元1903,第二解密單元1904,所述第三獲取單元1903用于執(zhí)行實(shí)施例八中圖12的步驟1203,所述第二解密單元1904用于執(zhí)行實(shí)施例八中圖12的步驟1204。
[0260]本領(lǐng)域普通技術(shù)人員可以理解為所述本發(fā)明實(shí)施例十四中的設(shè)備所包括的各個(gè)單元只是按照功能邏輯進(jìn)行劃分的,但并不局限于上述的劃分,只要能夠?qū)崿F(xiàn)相應(yīng)的功能即可;另外,各功能單元的具體名稱也只是為了便于相互區(qū)分,并不用于限制本申請(qǐng)的保護(hù)范圍。
[0261]第二獲取單元1901,用于根據(jù)搜索方的身份信息從密鑰管理中心獲取查詢密鑰,所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息;
[0262]查詢接收單元1902,用于根據(jù)關(guān)鍵詞和所述獲取的查詢密鑰生成查詢令牌,通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢加密后的關(guān)鍵詞密文;
[0263]第三獲取單元1903,用于根據(jù)預(yù)先設(shè)置的搜索方屬性從所述密鑰管理中心獲取所述屬性對(duì)應(yīng)的數(shù)據(jù)解密密鑰;
[0264]第二解密單元1904,用于根據(jù)所述數(shù)據(jù)解密密鑰,對(duì)所述存儲(chǔ)服務(wù)器返回的根據(jù)所述預(yù)先設(shè)置的搜索方屬性加密的明文數(shù)據(jù)的密文進(jìn)行解密,獲得解密后的明文數(shù)據(jù)。
[0265]本發(fā)明實(shí)施例通過屬性加密搜索方關(guān)鍵詞對(duì)應(yīng)的明文屬性,使得搜索方可以根據(jù)預(yù)先設(shè)置的屬性設(shè)置訪問權(quán)限,對(duì)群組成員可以進(jìn)行多種關(guān)鍵詞檢索的同時(shí),對(duì)群組數(shù)據(jù)的公共可搜索性和數(shù)據(jù)的解密權(quán)限進(jìn)行有效的結(jié)合。
[0266]實(shí)施例十五
[0267]參考圖20,圖20是本發(fā)明實(shí)施例十五提供的一種加密設(shè)備的裝置結(jié)構(gòu)圖。參考圖20,圖20是本發(fā)明實(shí)施例提供的一種加密設(shè)備2000,本發(fā)明具體實(shí)施例并不對(duì)所述網(wǎng)絡(luò)設(shè)備的具體實(shí)現(xiàn)做限定。所述設(shè)備2000包括:
[0268]處理器(processor)2001,通信接口(Communications Interface) 2002,存儲(chǔ)器(memory) 2003,總線 2004。
[0269]處理器2001,通信接口 2002,存儲(chǔ)器2003通過總線2004完成相互間的通信。
[0270]通信接口 2002,用于與其他設(shè)備進(jìn)行通信;
[0271]處理器2001,用于執(zhí)行程序A。
[0272]具體地,程序A可以包括程序代碼,所述程序代碼包括計(jì)算機(jī)操作指令。
[0273]處理器2001可能是一個(gè)中央處理器CPU,或者是特定集成電路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成實(shí)施本發(fā)明實(shí)施例的一個(gè)或多個(gè)集成電路。
[0274]存儲(chǔ)器2003,用于存放程序A。存儲(chǔ)器2003可能包含高速RAM存儲(chǔ)器,也可能還包括非易失性存儲(chǔ)器(non-volatile memory),例如至少一個(gè)磁盤存儲(chǔ)器。程序A具體可以包括:
[0275]第一獲取單元1401,用于獲取搜索方的身份信息以及密鑰管理中心的系統(tǒng)參數(shù),所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息;
[0276]加密上傳單元1402,用于根據(jù)所述搜索方的身份信息以及所述系統(tǒng)參數(shù)對(duì)關(guān)鍵詞進(jìn)行加密,并將加密后的關(guān)鍵詞密文上傳到存儲(chǔ)服務(wù)器。
[0277]或者程序A具體可以包括:[0278]第一獲取單元1601,用于獲取搜索方的身份信息以及密鑰管理中心的系統(tǒng)參數(shù),所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息;
[0279]加密上傳單元1602,用于根據(jù)所述搜索方的身份信息以及所述系統(tǒng)參數(shù)對(duì)關(guān)鍵詞進(jìn)行加密,并將加密后的關(guān)鍵詞密文上傳到存儲(chǔ)服務(wù)器;
[0280]第一加密單元1603,用于根據(jù)所述搜索方的身份信息和所述系統(tǒng)參數(shù)加密明文數(shù)據(jù),并將加密后的明文數(shù)據(jù)的密文上傳到所述存儲(chǔ)服務(wù)器。
[0281 ] 或者程序A具體可以包括:
[0282]第一獲取單元1801,用于獲取搜索方的身份信息以及密鑰管理中心的系統(tǒng)參數(shù),所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息;
[0283]加密上傳單元1802,用于根據(jù)所述搜索方的身份信息以及所述系統(tǒng)參數(shù)對(duì)關(guān)鍵詞進(jìn)行加密,并將加密后的關(guān)鍵詞密文上傳到存儲(chǔ)服務(wù)器;
[0284]第二加密單元1803,用于根據(jù)所述搜索方的屬性加密明文數(shù)據(jù),并將加密后的明文數(shù)據(jù)的密文上傳到所述存儲(chǔ)服務(wù)器。
[0285]程序A中各單元的具體實(shí)現(xiàn)參見圖14或圖16或圖18所示實(shí)施例中的相應(yīng)單元,在此不贅述。
[0286]實(shí)施例十六
[0287]參考圖21,圖21是本發(fā)明實(shí)施例十六提供的一種搜索設(shè)備的裝置結(jié)構(gòu)圖。參考圖21,圖21是本發(fā)明實(shí)施例提供的一種搜索設(shè)備2100,本發(fā)明具體實(shí)施例并不對(duì)所述網(wǎng)絡(luò)設(shè)備的具體實(shí)現(xiàn)做限定。所述搜索設(shè)備2100包括:
[0288]處理器(processor)2101,通信接口(Communications Interface) 2102,存儲(chǔ)器(memory) 2103,總線 2104。
[0289]處理器2101,通信接口 2102,存儲(chǔ)器2103通過總線2104完成相互間的通信。
[0290]通信接口 2102,用于與其他設(shè)備進(jìn)行通信;
[0291]處理器2101,用于執(zhí)行程序A。
[0292]具體地,程序A可以包括程序代碼,所述程序代碼包括計(jì)算機(jī)操作指令。
[0293]處理器2101可能是一個(gè)中央處理器CPU,或者是特定集成電路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成實(shí)施本發(fā)明實(shí)施例的一個(gè)或多個(gè)集成電路。
[0294]存儲(chǔ)器2103,用于存放程序A。存儲(chǔ)器2103可能包含高速RAM存儲(chǔ)器,也可能還包括非易失性存儲(chǔ)器(non-volatile memory),例如至少一個(gè)磁盤存儲(chǔ)器。程序A具體可以包括:
[0295]第二獲取單元1501,用于根據(jù)搜索方的身份信息從密鑰管理中心獲取查詢密鑰,所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息;
[0296]查詢接收單元1502,用于根據(jù)關(guān)鍵詞和所述獲取的查詢密鑰生成查詢令牌,通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢加密后的關(guān)鍵詞密文。
[0297]或者程序A具體可以包括:[0298]第二獲取單元1701,用于根據(jù)搜索方的身份信息從密鑰管理中心獲取查詢密鑰,所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息;
[0299]查詢接收單元1702,用于根據(jù)關(guān)鍵詞和所述獲取的查詢密鑰生成查詢令牌,通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢加密后的關(guān)鍵詞密文;
[0300]第一解密單元1703,用于根據(jù)所述查詢密鑰,對(duì)所述根據(jù)公鑰加密的明文數(shù)據(jù)的密文進(jìn)行解密,獲得解密后的明文數(shù)據(jù)。
[0301 ] 或者程序A具體可以包括:
[0302]第二獲取單元1901,用于根據(jù)搜索方的身份信息從密鑰管理中心獲取查詢密鑰,所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息;
[0303]查詢接收單元1902,用于根據(jù)關(guān)鍵詞和所述獲取的查詢密鑰生成查詢令牌,通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢加密后的關(guān)鍵詞密文;
[0304]第三獲取單元1903,用于根據(jù)預(yù)先設(shè)置的搜索方屬性從所述密鑰管理中心獲取所述屬性對(duì)應(yīng)的數(shù)據(jù)解密密鑰;
[0305]第二解密單元1904,用于根據(jù)所述數(shù)據(jù)解密密鑰,對(duì)所述存儲(chǔ)服務(wù)器返回的根據(jù)所述預(yù)先設(shè)置的搜索方屬性加密的明文數(shù)據(jù)的密文進(jìn)行解密,獲得解密后的明文數(shù)據(jù)。
[0306]程序A中各單元的具體實(shí)現(xiàn)參見圖15或圖17或圖19所示實(shí)施例中的相應(yīng)單元,在此不贅述。
[0307]以上所述僅為本發(fā)明的優(yōu)選實(shí)施方式,并不構(gòu)成對(duì)本發(fā)明保護(hù)范圍的限定。任何在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明要求包含范圍之內(nèi)。
【權(quán)利要求】
1.一種可搜索加密方法,其特征在于,所述方法包括: 獲取搜索方的身份信息以及密鑰管理中心的系統(tǒng)參數(shù),所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息; 根據(jù)所述搜索方的身份信息以及所述系統(tǒng)參數(shù)對(duì)關(guān)鍵詞進(jìn)行加密,并將加密后的關(guān)鍵詞密文上傳到存儲(chǔ)服務(wù)器。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述搜索方的身份信息以及所述系統(tǒng)參數(shù)對(duì)關(guān)鍵詞進(jìn)行加密,包括: 根據(jù)所述搜索方的身份信息和所述系統(tǒng)參數(shù)計(jì)算出加密所述關(guān)鍵詞的公鑰,并根據(jù)所述計(jì)算出的公鑰加密所述關(guān)鍵詞。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述方法還包括: 根據(jù)所述搜索方的身份信息和所述系統(tǒng)參數(shù)加密明文數(shù)據(jù),并將加密后的明文數(shù)據(jù)的密文上傳到所述存儲(chǔ)服務(wù)器。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述根據(jù)所述搜索方的身份和所述系統(tǒng)參數(shù)加密明文數(shù)據(jù),包括: 根據(jù)所述搜索方的身份信息和所述系統(tǒng)參數(shù)計(jì)算出加密所述明文數(shù)據(jù)的公鑰,并根據(jù)所述計(jì)算出的公鑰加密所述明文數(shù)據(jù)。
5.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述方法還包括: 根據(jù)所述搜索方的屬性加密明文數(shù)據(jù),并將加密后的明文數(shù)據(jù)的密文上傳到所述存儲(chǔ)服務(wù)器。`
6.一種基于身份的可搜索加密方法,其特征在于,所述方法包括: 根據(jù)搜索方的身份信息從密鑰管理中心獲取查詢密鑰,所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息; 根據(jù)關(guān)鍵詞和所述獲取的查詢密鑰生成查詢令牌,通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢加密后的關(guān)鍵詞密文。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢加密后的關(guān)鍵詞密文,包括: 通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢包含加密后的關(guān)鍵詞的文件。
8.根據(jù)權(quán)利要求6或7所述的方法,其特征在于,所述根據(jù)關(guān)鍵詞和所述獲取的查詢密鑰生成查詢令牌,包括: 當(dāng)根據(jù)搜索方所在群的身份從密鑰管理中心獲取查詢密鑰時(shí),所述搜索方向所述搜索方所在群遞交關(guān)鍵詞,所述搜索方所在群檢查所述搜索方是否是群內(nèi)的成員,若是,則所述搜索方所在群根據(jù)所述關(guān)鍵詞和所述查詢密鑰生成查詢令牌,并將所述查詢令牌返回到所述搜索方。
9.根據(jù)權(quán)利要求6至8任意一項(xiàng)所述的方法,其特征在于,所述通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢加密后的關(guān)鍵詞密文,包括: 接收所述存儲(chǔ)服務(wù)器返回的根據(jù)公鑰加密的明文數(shù)據(jù)的密文。
10.根據(jù)權(quán)利要求9所述的方法,其特征在于,所述方法在步驟接收所述存儲(chǔ)服務(wù)器返回的根據(jù)公鑰加密的明文數(shù)據(jù)的密文之后,還包括: 根據(jù)所述查詢密鑰,對(duì)所述根據(jù)公鑰加密的明文數(shù)據(jù)的密文進(jìn)行解密,獲得解密后的明文數(shù)據(jù)。
11.根據(jù)權(quán)利要求6至10任意一項(xiàng)所述的方法所述的方法,其特征在于,所述方法,還包括: 根據(jù)預(yù)先設(shè)置的搜索方屬性從所述密鑰管理中心獲取所述屬性對(duì)應(yīng)的數(shù)據(jù)解密密鑰。
12.根據(jù)權(quán)利要求11所述的方法,其特征在于,所述通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢加密后的關(guān)鍵詞密文,包括: 接收所述存儲(chǔ)服務(wù)器返回的根據(jù)所述預(yù)先設(shè)置的搜索方屬性加密的明文數(shù)據(jù)的密文。
13.根據(jù)權(quán)利要求12所述的方法,其特征在于,所述方法在步驟接收所述存儲(chǔ)服務(wù)器返回的根據(jù)所述預(yù)先設(shè)置的搜索方屬性加密的明文數(shù)據(jù)的密文之后,還包括: 根據(jù)所述數(shù)據(jù)解密密鑰,對(duì)所述存儲(chǔ)服務(wù)器返回的根據(jù)所述預(yù)先設(shè)置的搜索方屬性加密的明文數(shù)據(jù)的密文進(jìn)行解密,獲得解密后的明文數(shù)據(jù)。
14.一種加密設(shè)備,其特征在于,所述設(shè)備包括: 第一獲取單元,用于獲取搜索方的身份信息以及密鑰管理中心的系統(tǒng)參數(shù),所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息; 加密上傳單元,用于根據(jù)所述搜索方的身份信息以及所述系統(tǒng)參數(shù)對(duì)關(guān)鍵詞進(jìn)行加密,并將加密后的關(guān)鍵詞密文上傳到存儲(chǔ)服務(wù)器。
15.根據(jù)權(quán) 利要求14所述的設(shè)備,其特征在于,所述加密上傳單元具體用于: 根據(jù)所述搜索方的身份信息和所述系統(tǒng)參數(shù)計(jì)算出加密所述關(guān)鍵詞的公鑰,并根據(jù)所述計(jì)算出的公鑰加密所述關(guān)鍵詞。
16.根據(jù)權(quán)利要求14或15所述的設(shè)備,其特征在于,所述設(shè)備還包括: 第一加密單元,用于根據(jù)所述搜索方的身份信息和所述系統(tǒng)參數(shù)加密明文數(shù)據(jù),并將加密后的明文數(shù)據(jù)的密文上傳到所述存儲(chǔ)服務(wù)器。
17.根據(jù)權(quán)利要求16所述的設(shè)備,其特征在于,所述第一加密單元具體用于: 根據(jù)所述搜索方的身份信息和所述系統(tǒng)參數(shù)計(jì)算出加密所述明文數(shù)據(jù)的公鑰,并根據(jù)所述計(jì)算出的公鑰加密所述明文數(shù)據(jù)。
18.根據(jù)權(quán)利要求14或15所述的設(shè)備,其特征在于,所述設(shè)備還包括: 第二加密單元,用于根據(jù)所述搜索方的屬性加密明文數(shù)據(jù),并將加密后的明文數(shù)據(jù)的密文上傳到所述存儲(chǔ)服務(wù)器。
19.一種搜索設(shè)備,其特征在于,所述設(shè)備包括: 第二獲取單元,用于根據(jù)搜索方的身份信息從密鑰管理中心獲取查詢密鑰,所述搜索方的身份信息包括所述單個(gè)搜索者的身份信息或者所述多個(gè)搜索者所在的群組的身份信息; 查詢接收單元,用于根據(jù)關(guān)鍵詞和所述獲取的查詢密鑰生成查詢令牌,通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢加密后的關(guān)鍵詞密文。
20.根據(jù)權(quán)利要求19所述的設(shè)備,其特征在于,所述查詢接收單元中執(zhí)行步驟通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢加密后的關(guān)鍵詞密文,包括: 通過所述查詢令牌從存儲(chǔ)服務(wù)器中查詢包含加密后的關(guān)鍵詞的文件。
21.根據(jù)權(quán)利要求19或20所述的設(shè)備,其特征在于,所述查詢接收單元執(zhí)行步驟根據(jù)關(guān)鍵詞和所述獲取的查詢密鑰生成查詢令牌,包括: 當(dāng)根據(jù)搜索方所在群的身份從密鑰管理中心獲取查詢密鑰時(shí),所述搜索方向所述搜索方所在群遞交關(guān)鍵詞,所述搜索方所在群檢查所述搜索方是否是群內(nèi)的成員,若是,則所述搜索方所在群根據(jù)所述關(guān)鍵詞和所述查詢密鑰生成查詢令牌,并將所述查詢令牌返回到所述搜索方。
22.根據(jù)權(quán)利要求19至21任意一項(xiàng)所述的設(shè)備,其特征在于,所述查詢接收單元,包括: 接收所述存儲(chǔ)服務(wù)器返回的根據(jù)公鑰加密的明文數(shù)據(jù)的密文。
23.根據(jù)權(quán)利要求22所述的設(shè)備,其特征在于,所述設(shè)備還包括第一解密單元,所述第一解密單元具體用于: 根據(jù)所述查詢密鑰,對(duì)所述根據(jù)公鑰加密的明文數(shù)據(jù)的密文進(jìn)行解密,獲得解密后的明文數(shù)據(jù)。
24.根據(jù)權(quán)利要求19至23任意一項(xiàng)所述的設(shè)備,其特征在于,所述設(shè)備還包括第三獲取單元,所述第三獲取單元具體用于: 根據(jù)預(yù)先設(shè)置的搜索方屬性從所述密鑰管理中心獲取所述屬性對(duì)應(yīng)的數(shù)據(jù)解密密鑰。
25.根據(jù)權(quán)利要求24所述的設(shè)備,其特征在于,所述查詢接收單元,包括: 接收所述存儲(chǔ)服務(wù)器返回的根據(jù)所述預(yù)先設(shè)置的搜索方屬性加密的明文數(shù)據(jù)的密文。
26.根據(jù)權(quán)利要求25所`述的設(shè)備,其特征在于,所述設(shè)備還包括第二解密單元,所述第二解密單元具體用于: 根據(jù)所述數(shù)據(jù)解密密鑰,對(duì)所述存儲(chǔ)服務(wù)器返回的根據(jù)所述預(yù)先設(shè)置的搜索方屬性加密的明文數(shù)據(jù)的密文進(jìn)行解密,獲得解密后的明文數(shù)據(jù)。
【文檔編號(hào)】H04L9/30GK103873236SQ201210534843
【公開日】2014年6月18日 申請(qǐng)日期:2012年12月12日 優(yōu)先權(quán)日:2012年12月12日
【發(fā)明者】高云超, 鄒繼富, 董秋香, 關(guān)志 申請(qǐng)人:華為技術(shù)有限公司