本發(fā)明涉及數(shù)據(jù)處理,更具體的說(shuō)是涉及一種零隱私泄露密文數(shù)據(jù)查詢(xún)方法、系統(tǒng)及設(shè)備。
背景技術(shù):
1、隨著現(xiàn)代社會(huì)對(duì)高計(jì)算能力需求的日益增長(zhǎng)以及對(duì)數(shù)據(jù)存儲(chǔ)及獲取的便利性需要,個(gè)人或企業(yè)的本地計(jì)算機(jī)逐漸無(wú)法滿(mǎn)足計(jì)算能力及移動(dòng)獲取數(shù)據(jù)的需要,云計(jì)算這類(lèi)依托于云平臺(tái)的新興網(wǎng)絡(luò)服務(wù)興起,但是由于其外包服務(wù)模式以及云平臺(tái)自身的數(shù)據(jù)安全問(wèn)題造成了對(duì)云服務(wù)的信任危機(jī)。
2、目前,數(shù)據(jù)安全成為各行業(yè)關(guān)注的焦點(diǎn)。無(wú)論是金融交易、醫(yī)療記錄分析和數(shù)據(jù)隱私保護(hù)等領(lǐng)域,還是個(gè)人隱私信息,都需要通過(guò)有效的加密技術(shù)來(lái)保護(hù)。傳統(tǒng)的加密算法在保證數(shù)據(jù)保密性方面發(fā)揮了重要作用。然而,現(xiàn)有方案中采用明文存儲(chǔ)及傳遞信息方式,造成數(shù)據(jù)安全性不高,經(jīng)過(guò)加密的數(shù)據(jù)無(wú)法在密文下使用,使得在密文狀態(tài)下不能夠進(jìn)行有效的計(jì)算操作,并且現(xiàn)有技術(shù)的加解密速度也有待提升,不適用于需要高安全性的數(shù)據(jù)查詢(xún)場(chǎng)景。因此,亟需解決云計(jì)算環(huán)境下的數(shù)據(jù)隱私和安全問(wèn)題,提供有效的技術(shù)解決方案。
技術(shù)實(shí)現(xiàn)思路
1、鑒于上述技術(shù)問(wèn)題,本發(fā)明提供一種零隱私泄露密文數(shù)據(jù)查詢(xún)方法、系統(tǒng)及設(shè)備,旨在提升數(shù)據(jù)在傳輸和處理過(guò)程中的安全性和隱私保護(hù);為解決云計(jì)算環(huán)境下的數(shù)據(jù)隱私和安全問(wèn)題,提供了有效的技術(shù)解決方案。
2、為實(shí)現(xiàn)上述目的,本發(fā)明采取的技術(shù)方案為:
3、第一方面,本發(fā)明提供一種零隱私泄露密文數(shù)據(jù)查詢(xún)方法,該方法包括以下步驟:
4、s1、將待匹配和查詢(xún)的數(shù)據(jù)錄入到系統(tǒng),保存為鍵值對(duì)形式;
5、s2、通過(guò)設(shè)定的安全參數(shù)生成公共參數(shù),并將所述公共參數(shù)發(fā)送給各個(gè)用戶(hù)端;
6、s3、根據(jù)公共參數(shù)中?;臄?shù)據(jù)生成一個(gè)相同長(zhǎng)度的密鑰w;
7、s4、用戶(hù)端將待查詢(xún)的數(shù)據(jù)分解為單個(gè)整數(shù)組成字符串,使用所述字符串作為索引,生成查詢(xún)密文c;
8、s5、將密文c發(fā)送至服務(wù)器;
9、s6、服務(wù)器獲取到密文c后,調(diào)用數(shù)據(jù)庫(kù),使用鍵值進(jìn)行匹配以及計(jì)算查詢(xún)結(jié)果;
10、s7、用戶(hù)端接收密文結(jié)果,調(diào)用解密模塊,使用密鑰w對(duì)密文結(jié)果執(zhí)行解密,得到明文狀態(tài)的處理結(jié)果,并調(diào)用前端展示模塊將結(jié)果進(jìn)行可視化展示。
11、進(jìn)一步地,s1中,所述鍵值對(duì)形式為:
12、;
13、其中,表示系統(tǒng)錄入數(shù)據(jù)的最大值;且每一個(gè)均不相同。
14、進(jìn)一步地,s2中,所述公共參數(shù)包括:
15、由個(gè)加密?;M成的?;虾驮O(shè)置混淆模分量的個(gè)數(shù),其中,表示第個(gè)加密?;?,表示加密?;臄?shù)量。
16、進(jìn)一步地,s3中,密鑰,其中。
17、進(jìn)一步地,s4中,用戶(hù)端將待查詢(xún)的數(shù)據(jù)分解為單個(gè)整數(shù)組成字符串,表示字符串d的長(zhǎng)度,是字符總數(shù),使用字符串d作為索引,生成查詢(xún)密文c中1的密文,其他位置為0的密文,其中和分別表示使用密鑰w對(duì)1和0使用同態(tài)加密生成的密文,為組成查詢(xún)密文c的單位密文。
18、進(jìn)一步地,s6中,服務(wù)器獲取到密文c后,計(jì)算模塊調(diào)用數(shù)據(jù)庫(kù),使用鍵值對(duì)中的key進(jìn)行匹配,使用value計(jì)算查詢(xún)結(jié)果的返回;具體流程包括:
19、s61、將數(shù)據(jù)庫(kù)中每一個(gè)鍵值對(duì)中的鍵都分解為整數(shù)組成字符串,表示鍵分解為整數(shù)組成的字符串,將單個(gè)字符作為索引逐行提取密文c中對(duì)應(yīng)位置的單個(gè)密文,,是查詢(xún)密文c中第行第列的單位密文;
20、s62、將s61中挑選出來(lái)個(gè)密文做同態(tài)加密的同態(tài)乘后再乘以對(duì)應(yīng)的,得到第個(gè)查詢(xún)結(jié)果,這里,最終得到個(gè)查詢(xún)結(jié)果;
21、s63、將s62中得到的查詢(xún)結(jié)果使用同態(tài)加密的同態(tài)加得到最終的密文結(jié)果;
22、s64、根據(jù)密文結(jié)果調(diào)用服務(wù)器端的通訊模塊發(fā)送回對(duì)應(yīng)的用戶(hù)端。
23、第二方面,本發(fā)明還提供一種零隱私泄露密文數(shù)據(jù)查詢(xún)系統(tǒng),進(jìn)行密文數(shù)據(jù)查詢(xún),該系統(tǒng)包括:用戶(hù)端和服務(wù)器端,所述用戶(hù)端和服務(wù)器端通過(guò)網(wǎng)絡(luò)連接,其中:
24、所述用戶(hù)端包括:初始化模塊、加解密模塊、密鑰管理模塊、通訊模塊和前端展示模塊,其中:
25、所述初始化模塊用于對(duì)系統(tǒng)初始化,生成系統(tǒng)參數(shù);所述加解密模塊用于對(duì)原始數(shù)據(jù)的全同態(tài)加密,以及對(duì)處理結(jié)果的全同態(tài)解密;所述密鑰管理模塊用于控制生成密鑰,存儲(chǔ)密鑰和銷(xiāo)毀密鑰,對(duì)密鑰進(jìn)行全生命周期管理;所述通訊模塊用于與所述服務(wù)器端的信息交互;所述前端展示模塊用于數(shù)據(jù)的可視化交互;
26、所述服務(wù)器端包括:通訊層、計(jì)算模塊和數(shù)據(jù)庫(kù),其中:
27、所述通訊層用于實(shí)現(xiàn)與所述用戶(hù)端的信息交互;所述計(jì)算模塊用于密文數(shù)據(jù)計(jì)算;所述數(shù)據(jù)庫(kù)為基于全同態(tài)加密的密文數(shù)據(jù)庫(kù),用于存儲(chǔ)計(jì)算處理后的密文數(shù)據(jù),在密文狀態(tài)下完成數(shù)據(jù)的增刪改查。
28、第三方面,本發(fā)明實(shí)施例還提供一種電子設(shè)備,包括處理器和存儲(chǔ)器,所述存儲(chǔ)器存儲(chǔ)有能夠被所述處理器執(zhí)行的機(jī)器可執(zhí)行指令,所述處理器執(zhí)行所述機(jī)器可執(zhí)行指令以實(shí)現(xiàn)能夠執(zhí)行上述的一種零隱私泄露密文數(shù)據(jù)查詢(xún)方法。
29、第四方面,本發(fā)明還提供一種存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算設(shè)備可讀的一個(gè)或多個(gè)程序,所述一個(gè)或多個(gè)程序包括指令,所述指令當(dāng)由計(jì)算設(shè)備執(zhí)行時(shí),使得所述計(jì)算設(shè)備執(zhí)行如上述的一種零隱私泄露密文數(shù)據(jù)查詢(xún)方法。
30、與現(xiàn)有技術(shù)相比,本發(fā)明至少具有如下有益技術(shù)效果:
31、1、本發(fā)明將用戶(hù)端查詢(xún)數(shù)據(jù)加密為密文,服務(wù)器計(jì)算返回的數(shù)據(jù)也是密文狀態(tài),使得數(shù)據(jù)在密文狀態(tài)下能夠進(jìn)行查詢(xún),保證了查詢(xún)?nèi)^(guò)程的密態(tài)傳輸,零泄露數(shù)據(jù)隱私,適用于密文數(shù)據(jù)庫(kù)、云搜索等需要高安全性的數(shù)據(jù)查詢(xún)場(chǎng)景。
32、2、本發(fā)明使用索引的方式構(gòu)造查詢(xún)密文,也大大提高了加解密速度。
33、3、本發(fā)明在數(shù)據(jù)查詢(xún)過(guò)程中,使用數(shù)據(jù)庫(kù)中數(shù)據(jù)提取查詢(xún)密文的計(jì)算,大大降低了密文計(jì)算過(guò)程中的計(jì)算量,顯著提高數(shù)據(jù)處理的效率,減少了系統(tǒng)的計(jì)算資源消耗。
34、本發(fā)明的其它特征和優(yōu)點(diǎn)將在隨后的說(shuō)明書(shū)中闡述,并且,部分地從說(shuō)明書(shū)中變得顯而易見(jiàn),或者通過(guò)實(shí)施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點(diǎn)可通過(guò)在所寫(xiě)的說(shuō)明書(shū)以及附圖中所特別指出的結(jié)構(gòu)來(lái)實(shí)現(xiàn)和獲得。
35、下面通過(guò)附圖和實(shí)施例,對(duì)本發(fā)明的技術(shù)方案做進(jìn)一步的詳細(xì)描述。
1.一種零隱私泄露密文數(shù)據(jù)查詢(xún)方法,其特征在于,該方法包括以下步驟:
2.根據(jù)權(quán)利要求1所述的一種零隱私泄露密文數(shù)據(jù)查詢(xún)方法,其特征在于,s1中,所述鍵值對(duì)形式為:
3.根據(jù)權(quán)利要求2所述的一種零隱私泄露密文數(shù)據(jù)查詢(xún)方法,其特征在于,s2中,所述公共參數(shù)包括:
4.根據(jù)權(quán)利要求3所述的一種零隱私泄露密文數(shù)據(jù)查詢(xún)方法,其特征在于,s3中,密鑰,其中。
5.根據(jù)權(quán)利要求4所述的一種零隱私泄露密文數(shù)據(jù)查詢(xún)方法,其特征在于,s4中,用戶(hù)端將待查詢(xún)的數(shù)據(jù)分解為單個(gè)整數(shù)組成字符串,表示字符串d的長(zhǎng)度,是字符總數(shù),使用字符串d作為索引,生成查詢(xún)密文c中1的密文,其他位置為0的密文,其中和分別表示使用密鑰w對(duì)1和0使用同態(tài)加密生成的密文,為組成查詢(xún)密文c的單位密文。
6.根據(jù)權(quán)利要求5所述的一種零隱私泄露密文數(shù)據(jù)查詢(xún)方法,其特征在于,s6中,服務(wù)器獲取到密文c后,計(jì)算模塊調(diào)用數(shù)據(jù)庫(kù),使用鍵值對(duì)中的key進(jìn)行匹配,使用value計(jì)算查詢(xún)結(jié)果的返回;具體流程包括:
7.一種零隱私泄露密文數(shù)據(jù)查詢(xún)系統(tǒng),其特征在于,應(yīng)用時(shí)執(zhí)行如權(quán)利要求1-6中任一項(xiàng)所述的一種零隱私泄露密文數(shù)據(jù)查詢(xún)方法,進(jìn)行密文數(shù)據(jù)查詢(xún),該系統(tǒng)包括:用戶(hù)端和服務(wù)器端,所述用戶(hù)端和服務(wù)器端通過(guò)網(wǎng)絡(luò)連接,其中:
8.一種電子設(shè)備,其特征在于,包括處理器和存儲(chǔ)器,所述存儲(chǔ)器存儲(chǔ)有能夠被所述處理器執(zhí)行的機(jī)器可執(zhí)行指令,所述處理器執(zhí)行所述機(jī)器可執(zhí)行指令以實(shí)現(xiàn)能夠執(zhí)行如權(quán)利要求1-6中任一項(xiàng)所述的一種零隱私泄露密文數(shù)據(jù)查詢(xún)方法。
9.一種存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算設(shè)備可讀的一個(gè)或多個(gè)程序,其特征在于:所述一個(gè)或多個(gè)程序包括指令,所述指令當(dāng)由計(jì)算設(shè)備執(zhí)行時(shí),使得所述計(jì)算設(shè)備執(zhí)行如權(quán)利要求1至6中任一項(xiàng)所述的一種零隱私泄露密文數(shù)據(jù)查詢(xún)方法。