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

面向云端數(shù)據(jù)發(fā)布保護(hù)安全及隱私的頻度測(cè)定方法和系統(tǒng)與流程

文檔序號(hào):12135321閱讀:363來(lái)源:國(guó)知局
面向云端數(shù)據(jù)發(fā)布保護(hù)安全及隱私的頻度測(cè)定方法和系統(tǒng)與流程

本發(fā)明涉及隱私保護(hù)相關(guān)研究領(lǐng)域,特別是涉及一種面向云端數(shù)據(jù)發(fā)布保護(hù)安全及隱私的頻度測(cè)定方法和系統(tǒng)。



背景技術(shù):

在信息共享的時(shí)代,隱私保護(hù)和信息安全成為IT界的一個(gè)重要研究領(lǐng)域。信息安全要求防止未經(jīng)授權(quán)的數(shù)據(jù)披露,而隱私保護(hù)旨在避免所披露數(shù)據(jù)被用于從中推理個(gè)人的敏感信息。

隨著大數(shù)據(jù)時(shí)代的到來(lái),越來(lái)越多的人利用云計(jì)算技術(shù)在云端存儲(chǔ)數(shù)據(jù)和執(zhí)行計(jì)算處理任務(wù),隱私保護(hù)面臨很多新挑戰(zhàn)。在云端數(shù)據(jù)存儲(chǔ)過(guò)程中存在泄漏隱私的危險(xiǎn),除此之外,隱私保護(hù)處理過(guò)程本身也可能受到攻擊,這無(wú)疑增加了隱私泄露的風(fēng)險(xiǎn)和規(guī)避風(fēng)險(xiǎn)的難度。

運(yùn)用密碼學(xué)的技術(shù)來(lái)解決云端數(shù)據(jù)的安全問(wèn)題是一個(gè)很好的選擇,將數(shù)據(jù)進(jìn)行加密之后上傳至云端存儲(chǔ),就不存在隱私泄露的危險(xiǎn)性。但是云端加密數(shù)據(jù)存在難以運(yùn)算的問(wèn)題。幸運(yùn)的是全同態(tài)加密技術(shù)為解決新挑戰(zhàn)提供了可能性。全同態(tài)加密是一種可以直接對(duì)加密狀態(tài)下的密文數(shù)據(jù)進(jìn)行操作的技術(shù)。早在1978年Rivest等人就提出同態(tài)加密的概念,其中,公鑰密碼算法RSA是乘法同態(tài)加密方案,Paillier算法是加法同態(tài)加密方案,但此后一直停滯不前。在2009年Gentry構(gòu)造出第一個(gè)全同態(tài)加密方案之后,有了迅速發(fā)展,出現(xiàn)很多成果,包括:基于ideal lattice的全同態(tài)加密方案,Dijk等基于integer的方案,Gentry等基于LWE(Learning With Error)的方案,Lyubaskevsky等基于RLWE(Ring LWE)的方案,Brakerski等基于GLWE(Generalized LWE)的方案。但是這些方案大多基于理論,需要繼續(xù)研究高效率的實(shí)用方案。

利用全同態(tài)加密技術(shù)能夠?qū)⑿枰M(jìn)行隱私保護(hù)處理的數(shù)據(jù)進(jìn)行加密處理,再利用云計(jì)算進(jìn)行密文數(shù)據(jù)運(yùn)算處理,得到符合隱私保護(hù)要求的密文數(shù)據(jù)。利用全同態(tài)加密技術(shù)既能保護(hù)數(shù)據(jù)內(nèi)容安全又能保護(hù)數(shù)據(jù)處理過(guò)程安全。

在云端進(jìn)行數(shù)據(jù)隱私保護(hù)處理時(shí)往往需要統(tǒng)計(jì)數(shù)據(jù)記錄中的頻度,本發(fā)明結(jié)合同態(tài)加密技術(shù),面向云端數(shù)據(jù)發(fā)布過(guò)程中需要保護(hù)數(shù)據(jù)安全及隱私的目的,提出一種同態(tài)密文下的數(shù)據(jù)記錄頻度測(cè)定方法和系統(tǒng),用于隱私保護(hù)處理。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明的目的在于針對(duì)現(xiàn)有技術(shù)的不足,提供一種面向云端數(shù)據(jù)發(fā)布保護(hù)安全及隱私的頻度測(cè)定方法和系統(tǒng)。

本發(fā)明的目的是通過(guò)以下技術(shù)方案來(lái)實(shí)現(xiàn)的:一種面向云端數(shù)據(jù)發(fā)布保護(hù)安全及隱私的頻度測(cè)定方法,包括如下步驟:

S1、數(shù)據(jù)庫(kù)擁有者用同態(tài)密鑰生成算法FHE.KeyGen生成公鑰pk和私鑰sk;設(shè)置頻度閾值k,并將-k的補(bǔ)碼的加密形式cc_thd上傳至云端服務(wù)器;將用公鑰pk加密的數(shù)據(jù)庫(kù)外包到云端服務(wù)器;將公鑰pk上傳至云端服務(wù)器保存;

S2、客戶(hù)端從云端獲取公鑰pk,用公鑰pk加密需要查詢(xún)頻度的記錄R得到密文RC,將RC上傳至云端服務(wù)器;

S3、云端服務(wù)器執(zhí)行同態(tài)運(yùn)算查詢(xún)加密的記錄RC在密文數(shù)據(jù)庫(kù)中的頻度密文csup;并在同態(tài)下進(jìn)行閾值判定,得到判定結(jié)果cresult;將cresult和csup發(fā)送至代理服務(wù)器;

S4、代理服務(wù)器用私鑰sk對(duì)cresult解密得到明文m,代表頻度判定結(jié)果;依據(jù)頻度判定結(jié)果m和csup解密結(jié)果向云端服務(wù)器發(fā)送信息sup;

S5、云端服務(wù)器將代理服務(wù)器返回的信息sup發(fā)送給客戶(hù)端。

進(jìn)一步地,所述步驟S1中的數(shù)據(jù)庫(kù)擁有者生成公鑰pk和私鑰sk,并將私鑰sk共享給代理服務(wù)器。

進(jìn)一步地,所述步驟S3中執(zhí)行同態(tài)運(yùn)算查詢(xún)RC在密文數(shù)據(jù)庫(kù)中的頻度密文csup具體操作如下:

首先,云端服務(wù)器將記錄RC與密文數(shù)據(jù)表中共l條密文記錄分別做同態(tài)運(yùn)算,得到l個(gè)密文cc1,cc2,…,ccl,具體操作如下:云端服務(wù)器將記錄RC=[rc1,rc2,…,rcn]與密文數(shù)據(jù)庫(kù)中第i條密文記錄Ri=[ci1,ci2,…,cin]所對(duì)應(yīng)密文位rcj和cij做同態(tài)加法運(yùn)算,得到n個(gè)密文位c’ij=FHE.Add(pk,rcj,cij),j∈{1,2,…,n},i∈{1,2,…,l};再將n個(gè)密文位c’i1,c’i2,…,c’in分別與1的密文c_m1=FHE.Enc(pk,1)做同態(tài)加法運(yùn)算,得到n個(gè)新的密文位caddij=FHE.Add(pk,c’ij,c_m1),i∈{1,2,…,n};然后,將n個(gè)密文位caddi1,caddi2,…,caddin做同態(tài)乘法運(yùn)算,得到密文cci=FHE.Mult(pk,caddi1,caddi2,…,caddin),i∈{1,2,…,l};

接著,通過(guò)同態(tài)加法FHE.Add運(yùn)算和同態(tài)乘法FHE.Mult運(yùn)算將密文cc1,cc2,…,ccl累加起來(lái),得到記錄R的頻度密文csup,csup=[csN,…,cs2,cs1]為N個(gè)密文位,

進(jìn)一步地,所述步驟S3中的在同態(tài)下進(jìn)行閾值判定,得到判定結(jié)果cresult的具體操作為:云端服務(wù)器將csup=[csN,…,cs2,cs1]與cc_thd=FHE.Enc(pk,-k)=[cthdN+1,cthdN,…,cthd1]做如下同態(tài)運(yùn)算:首先,令c_carry0=FHE.Enc(pk,0),然后對(duì)i取1直至N,將第i-1位進(jìn)位密文c_carryi-1和csup的第i位密文位csi和cc_thd的第i位密文位cthdi進(jìn)行同態(tài)加法和同態(tài)乘法運(yùn)算得到進(jìn)位密文c_carryi=FHE.Add(pk,FHE.Mult(pk,cthdi,c_carryi-1),FHE.Mult(pk,csi,FHE.Add(pk,cthdi,c_carryi-1)));將最高進(jìn)位密文c_carryN與cc_thd的最高密文位cthdN+1=FHE.Enc(pk,1)做同態(tài)加法運(yùn)算,得到密文cresult=FHE.Add(pk,c_carryN,cthdN+1)。

進(jìn)一步地,所述步驟S4中根據(jù)cresult明文結(jié)果得到頻度判定結(jié)果具體操作如下:代理服務(wù)器用私鑰sk解密cresult得到明文m=FHE.Dec(sk,cresult),若m=0,說(shuō)明記錄R的頻度不低于閾值,代理服務(wù)器向云端服務(wù)器發(fā)送csup解密得到的明文sup;若m=1,判斷csup解密得到的明文sup,若sup=0說(shuō)明數(shù)據(jù)庫(kù)中沒(méi)有被查詢(xún)記錄R,向云端服務(wù)器發(fā)送sup=0;若sup≠0說(shuō)明記錄R的頻度低于閾值,記錄R的信息敏感性強(qiáng),容易泄露隱私信息,代理服務(wù)器向云端服務(wù)器發(fā)送sup=-1。

進(jìn)一步地,用云端服務(wù)器處理密文運(yùn)算得到頻度,并將頻度與頻度閾值在密文狀態(tài)下進(jìn)行比較,用代理服務(wù)器對(duì)比較結(jié)果進(jìn)行解密判定,在這一過(guò)程中不存在泄露客戶(hù)端所查詢(xún)的記錄內(nèi)容、數(shù)據(jù)庫(kù)中頻度低于閾值的敏感記錄的情況。

一種面向云端數(shù)據(jù)發(fā)布保護(hù)安全及隱私的頻度測(cè)定系統(tǒng),該系統(tǒng)包括四方:數(shù)據(jù)庫(kù)擁有者、客戶(hù)端、代理服務(wù)器、云端服務(wù)器。數(shù)據(jù)庫(kù)擁有者主要負(fù)責(zé)生成密鑰對(duì),對(duì)數(shù)據(jù)庫(kù)進(jìn)行加密外包處理,對(duì)頻度閾值負(fù)數(shù)-k的補(bǔ)碼進(jìn)行加密操作,并上傳至云端服務(wù)器,對(duì)代理服務(wù)器授權(quán)私鑰sk??蛻?hù)端主要申請(qǐng)查詢(xún)記錄R的頻度。代理服務(wù)器得到數(shù)據(jù)庫(kù)擁有者授權(quán),協(xié)助數(shù)據(jù)庫(kù)擁有者處理事務(wù),包括保存客戶(hù)端私鑰sk,解密密文;云端服務(wù)器用于存儲(chǔ)密文數(shù)據(jù)庫(kù)、對(duì)密文進(jìn)行同態(tài)運(yùn)算操作。

本發(fā)明的有益效果是:本發(fā)明結(jié)合全同態(tài)加密技術(shù),能夠在云環(huán)境下得到數(shù)據(jù)記錄的頻度密文并判定記錄的頻度是否符合隱私保護(hù)要求,同時(shí)確保整個(gè)過(guò)程不會(huì)泄露客戶(hù)端所查詢(xún)的記錄內(nèi)容、數(shù)據(jù)庫(kù)中頻度低于閾值的敏感記錄內(nèi)容,既能夠?qū)崿F(xiàn)數(shù)據(jù)的安全存儲(chǔ)又方便云端進(jìn)行保護(hù)隱私的頻度測(cè)定。

附圖說(shuō)明

圖1是本發(fā)明提供的面向云端數(shù)據(jù)發(fā)布保護(hù)安全及隱私的頻度測(cè)定方法操作流程圖;

圖2是本發(fā)明提供的面向云端數(shù)據(jù)發(fā)布保護(hù)安全及隱私的頻度測(cè)定方法和系統(tǒng)實(shí)施例示意圖;

圖3是本發(fā)明提供的面向云端數(shù)據(jù)發(fā)布保護(hù)安全及隱私的頻度測(cè)定系統(tǒng)結(jié)構(gòu)示意圖。

具體實(shí)施方式

在介紹具體實(shí)現(xiàn)方式之前,先介紹一些全同態(tài)加密的基礎(chǔ)知識(shí)。同態(tài)加密方案包含四個(gè)概率時(shí)間多項(xiàng)式算法HE={KeyGen,Encrypt,Decrypt,Evaluate},這四個(gè)算法的作用與過(guò)程如下,λ為安全參數(shù):

KeyGen為生成方案密鑰算法。輸入安全參數(shù)λ,輸出得到公鑰pk,私鑰sk和公共評(píng)估密鑰evk,evk是運(yùn)算布爾電路所需公鑰信息。(pk,evk,sk)←HE.KeyGen(1λ)。

Encrypt是密文生成算法。輸入公鑰pk和單比特信息m∈{0,1},輸出得到一個(gè)密文c。c←HE.Encpk(m)。

Decrypt是對(duì)密文進(jìn)行解密。輸入私鑰sk和一個(gè)密文c,輸出得到信息m*∈{0,1}。m*←HE.Decsk(c)。

Evaluate是用于確保同態(tài)加密的正確性。同態(tài)加密的正確性就是將若干密文進(jìn)行同態(tài)計(jì)算得到的密文進(jìn)行解密處理之后得到的明文,與密文對(duì)應(yīng)的明文進(jìn)行相同計(jì)算所得結(jié)果是相等的。輸入評(píng)估密鑰evk,一個(gè)函數(shù)和密文輸出得到一個(gè)密文cf。對(duì)cf進(jìn)行解密處理得到的結(jié)果等于對(duì)應(yīng)明文進(jìn)行相同運(yùn)算的結(jié)果,即最主要的運(yùn)算操作是同態(tài)加法運(yùn)算HE.Add和同態(tài)乘法運(yùn)算HE.Mult。

本發(fā)明采用的是目前效率較高的基于RLWE的BGV全同態(tài)加密方案(Z.Brakerski,C.Gentry,and V.Vaikuntanathan.(leveled)fully homomorphic encryptionwithout bootstrapping.TOCT,6(3):13,2014.Preliminary version in ITCS 2012.),為了便于理解,首先將對(duì)該全同態(tài)加密的原理做出介紹。

基于GLWE的基礎(chǔ)方案GHE的構(gòu)建如下:

1、GHE.Setup(1λ,1μ,b):使用比特b∈{0,1}來(lái)決定我們是在給基于LWE方案(d=1)還是基于RLWE方案(n=1)設(shè)定參數(shù),d參數(shù)表示估計(jì)多項(xiàng)式的度。選擇一個(gè)μ比特模數(shù)q和其他參數(shù)(d=d(λ,μ,b),n=n(λ,μ,b),χ=χ(λ,μ,b))以確?;贕LWE方案的案例有著2λ的安全性以抵抗格攻擊。讓和參數(shù)params=(q,d,n,N,χ).

2、GHE.SecretKeyGen(params):選取s'←χn,得到

3、GHE.PublicKeyGen(params,sk):把私鑰作為輸入sk=s=(1,s'),s[0]=1,還有參數(shù)params。均勻生成一個(gè)矩陣一個(gè)向量e←χN和一個(gè)集合b←A's'+2e.設(shè)置A成為包含b的(n+1)列矩陣,后面部分是-A'的n列矩陣(A·s=2e)。公鑰pk=A。

4、GHE.Enc(params,pk,m):為了加密一個(gè)信息m∈R2,設(shè)置取樣輸出密文

5、GHE.Dec(params,sk,c):輸出解密信息m←[[<c,s>]q]2

無(wú)需自展的全同態(tài)加密算法實(shí)現(xiàn)如下:

第一、參數(shù)設(shè)定。本發(fā)明采用的全同態(tài)加密方案是基于多項(xiàng)式環(huán)的,多項(xiàng)式環(huán)d是2的次方冪,λ是同態(tài)加密方案的安全參數(shù),密文多項(xiàng)式系數(shù)取μ比特模數(shù)q,L是二進(jìn)制運(yùn)算電路深度,其他參數(shù)(d=d(λ,μ,b),n=n(λ,μ,b),χ=χ(λ,μ,b))以確保2λ的安全性。n=1就是設(shè)定基于RLWE的實(shí)例化。為了能夠讓全同態(tài)加密適用于全域匿名算法,設(shè)定明文空間為R2=R/2R。

第二、密鑰生成算法FHE.KeyGen。密鑰對(duì)生成如下:GHE.SecretKeyGen(params):選取s'←χn,得到私鑰GHE.PublicKeyGen(params,sk):把私鑰作為輸入sk=s=(1,s'),s[0]=1,還有參數(shù)params=(q,d,n,N,χ)。均勻生成一個(gè)矩陣一個(gè)向量e←χN和一個(gè)集合b←A's'+2e.設(shè)置A成為包含b的(n+1)列矩陣,后面部分是-A'的n列矩陣(A·s=2e)。公鑰pk=A。

循環(huán)j=L到0,運(yùn)行paramsj←GHE.Setup(1λ,1(j+1)·μ,b)來(lái)得到遞減模的層級(jí)從qL((L+1)·μbits)至q0(μbits).循環(huán)j=L-1至0,參數(shù)paramsj中dj的值被替換為d=dL,分布χj被替換為χ=χL

FHE.KeyGen(paramsj):循環(huán)j=L至0,如下實(shí)現(xiàn):

1、運(yùn)行sj←GHE.SecretKeyGen(paramsj)and Aj←GHE.PublicKeyGen(paramsj,sj)。

2、設(shè)置s'j是sj的張量,它的系數(shù)是在Rqj中的sj兩個(gè)系數(shù)的乘積。

3、設(shè)置s”j←BitDecomp(s'j,qj)。

4、運(yùn)行τs”j+1→sj←SwitchKeyGen(s”j,sj-1),當(dāng)j=L時(shí)省略這一步。

私鑰sk包含所有sj,公鑰pk包含所有Aj和τs”j+1→sj。

第三、加密算法FHE.Enc(params,pk,m):在R2中找到信息m,運(yùn)行GHE.Enc(AL,m)。GHE.Enc(pk,m):為了加密一個(gè)信息m∈R2,設(shè)置取樣輸出密文

第四、解密算法FHE.Dec(params,sk,c):假設(shè)密文是在sj下的,運(yùn)行GHE.Dec(sj,c)。GHE.Dec(sk,c):輸出解密信息m←[[<c,s>]q]2。

第五、同態(tài)加法FHE.Add(pk,c1,c2):輸入兩個(gè)同樣用私鑰sj加密的密文。設(shè)置c3←c1+c2mod qj。c3就是在s'j下的密文(s'j的參數(shù)包括所有sj的參數(shù),因?yàn)椴⑶襰'j的第一個(gè)系數(shù)為1),輸出c4=FHE.Refresh(c3s”j→sj-1,qj,qj-1)。

第六、同態(tài)乘法FHE.Mult(pk,c1,c2):輸入兩個(gè)同樣用私鑰sj加密的密文。首先,新的密文是在私鑰下的,是線性等式的系數(shù)向量c3,輸出c4=FHE.Refresh(c3s”j→sj-1,qj,qj-1)。

FHE.Refresh(c,τs”j→sj-1,qj,qj-1):輸入私鑰s'j下的密文,輔助信息τs”j→sj-1來(lái)幫助密鑰轉(zhuǎn)換,當(dāng)前和下一個(gè)模數(shù)為qj和qj-1,做以下工作:首先展開(kāi)c1←Powersof2(c,qj)。然后進(jìn)行模數(shù)轉(zhuǎn)化,c2←Scale(c1,qj,qj-1,2),對(duì)應(yīng)私鑰s”j和模數(shù)qj-1。再進(jìn)行密鑰轉(zhuǎn)化,輸出c3←SwitchKey(τs”j→sj-1,c2,qj-1),對(duì)應(yīng)私鑰sj-1和模數(shù)qj-1。

其中c'=Scale(c,p,q,2)為模轉(zhuǎn)化算法,p,q是兩個(gè)奇數(shù)模,c是一個(gè)整數(shù)向量,c'是一個(gè)接近(p/q)·c的整數(shù)向量并且滿(mǎn)足c'=c mod 2。將x分解成為它的比特表示方法,輸出SwitchKeyGen(s1,s2,n1,n2,q)輸入兩個(gè)私鑰和私鑰的維數(shù),模數(shù)q,私鑰s2和運(yùn)行GHE.PublicKeyGen(s2,N)得到公鑰A,生成B=A+Powesof2(s1,q),然后輸出的輔助信息τs1→s2=B實(shí)現(xiàn)交換。其中,

下面參考附圖并結(jié)合實(shí)例來(lái)詳細(xì)說(shuō)明本發(fā)明。

圖1是本發(fā)明提供的面向云端數(shù)據(jù)發(fā)布保護(hù)安全及隱私的頻度測(cè)定方法操作流程圖。如圖1所示,本發(fā)明提供的面向云端數(shù)據(jù)發(fā)布保護(hù)安全及隱私的頻度測(cè)定方法包括步驟S1-S5。

步驟S1:數(shù)據(jù)庫(kù)擁有者用密鑰生成算法FHE.KeyGen生成公鑰pk和私鑰sk,將頻度閾值額負(fù)數(shù)-k的補(bǔ)碼加密后上傳云端服務(wù)器,再將數(shù)據(jù)庫(kù)用公鑰pk加密后上傳云端服務(wù)器,同樣將公鑰pk上傳至云端服務(wù)器。

步驟S2:客戶(hù)端從云端服務(wù)器請(qǐng)求得到公鑰pk,用公鑰pk加密所需查詢(xún)頻度的記錄R,得到密文RC,將RC上傳至云端服務(wù)器。

步驟S3:云端服務(wù)器執(zhí)行同態(tài)運(yùn)算得到RC的頻度csup,通過(guò)同態(tài)運(yùn)算進(jìn)行頻度閾值判定得到cresult,將csup與cresult發(fā)送給代理服務(wù)器。

步驟S4:代理服務(wù)器解密cresult得到明文m,解密csup得到明文sup,依據(jù)m與sup判斷記錄R的頻度是否大于閾值,依據(jù)判斷設(shè)定sup并發(fā)送給云端服務(wù)器。

步驟S5:云端服務(wù)器將sup發(fā)送給客戶(hù)端。

進(jìn)一步以圖2中的實(shí)例進(jìn)行詳細(xì)說(shuō)明。圖2是本發(fā)明提供的面向云端數(shù)據(jù)發(fā)布保護(hù)安全及隱私的頻度測(cè)定方法和系統(tǒng)實(shí)施例示意圖。如圖2所示,本發(fā)明提供的面向云端數(shù)據(jù)發(fā)布保護(hù)安全及隱私的頻度測(cè)定方法包括步驟S1-S5,所提供的系統(tǒng)包括數(shù)據(jù)庫(kù)擁有者、客戶(hù)端、代理服務(wù)器、云端服務(wù)器。

具體而言,以附圖2中的包含6條記錄的數(shù)據(jù)庫(kù)為例,假設(shè)每條加密的記錄用n個(gè)密文位表示,對(duì)本發(fā)明進(jìn)行詳細(xì)敘述。

步驟S1:數(shù)據(jù)庫(kù)擁有者采用同態(tài)密鑰生成算法生成公鑰pk和私鑰sk,并將數(shù)據(jù)庫(kù)中的記錄轉(zhuǎn)化成二進(jìn)制表示之后用公鑰pk進(jìn)行加密處理,將得到的密文數(shù)據(jù)庫(kù)上傳至云端服務(wù)器,同時(shí)設(shè)置頻度閾值k為2,將其負(fù)值-k=-2補(bǔ)碼用公鑰pk進(jìn)行加密,并上傳至云端服務(wù)器。在此聲明,數(shù)據(jù)庫(kù)、記錄以及同態(tài)運(yùn)算過(guò)程中,每次加密同一明文位都產(chǎn)生不同的密文,比如附圖2中記錄R1密文形式的每個(gè)1'所代表的1的加密結(jié)果FHE.Enc(pk,1)都是互不相同的,同樣每個(gè)0'都是互不相同的。并且,數(shù)據(jù)庫(kù)擁有者也不向外界泄露設(shè)定的頻度閾值k。數(shù)據(jù)庫(kù)擁有者外包數(shù)據(jù)給云端服務(wù)器是一個(gè)不斷疊加的過(guò)程,在空閑時(shí)間完成即可。

步驟S2:客戶(hù)端通過(guò)向云端服務(wù)器發(fā)送查詢(xún)請(qǐng)求來(lái)得到自身想要查詢(xún)的記錄R的頻度。首先,客戶(hù)端向云端服務(wù)器請(qǐng)求公鑰pk,云端服務(wù)器將公鑰pk下傳至客戶(hù)端;其次,客戶(hù)端用公鑰pk對(duì)需要查詢(xún)頻度的記錄R={11,Female,375720}轉(zhuǎn)化成二進(jìn)制[1,1,0,0,…,1]再進(jìn)行加密處理,得到密文記錄RC=[1',1',0',0',…,1'];將RC發(fā)送給云端服務(wù)器進(jìn)行同態(tài)運(yùn)算。

步驟S3:首先,云端服務(wù)器將RC=[1',1',0',0',…,1']與密文數(shù)據(jù)庫(kù)中共6條密文記錄進(jìn)行同態(tài)運(yùn)算,得到6個(gè)密文cc1=1',cc2=0',cc3=0',cc4=0',cc5=0',cc6=1'。以RC與R2做同態(tài)計(jì)算得到cc2為例,R2=[1',0',0',1',…,1'],將RC與R2對(duì)應(yīng)的第i個(gè)密文為做同態(tài)加法運(yùn)算,得到n個(gè)密文0',1',0',1',…,0',i∈{1,2,…,n};將上述n個(gè)密文分別與1的密文1'進(jìn)行同態(tài)加法運(yùn)算,得到新的n個(gè)密文1',0',1',0',…,1';將上述n個(gè)密文位做同態(tài)乘法運(yùn)算FHE.Mult(pk,1',0',1',0',…,1')得到密文cc2=0'。同理,將RC與其他5條記錄做同態(tài)運(yùn)算即可。

然后,云端服務(wù)器對(duì)6個(gè)密文cc1=1',cc2=0',cc3=0',cc4=0',cc5=0',cc6=1'進(jìn)行累加,即可得到記錄R的頻度密文csup,具體操作如下:由于統(tǒng)計(jì)得到的最大可能頻度密文與數(shù)據(jù)庫(kù)記錄量相關(guān),頻度密文位最多為首先,設(shè)置密文csup的初始值為3位0的密文csup=[cs3,cs2,cs1]=[0',0',0'];然后,將密文csup加上第一個(gè)密文cc1=1',運(yùn)算ccarry1=FHE.Mult(pk,1',0')得到進(jìn)位ccarry1=0',運(yùn)算cs1=FHE.Add(pk,1',0')得到新的最低密文位cs1=1',然后運(yùn)算ccarryi=FHE.Mult(pk,ccarryi-1,csi),csi=FHE.Add(pk,ccarryi-1,csi),i∈{2,3},得到進(jìn)位ccarry2=0',ccarry3=0',新的密文位cs3=0',cs2=0'。于是,累加上第一個(gè)密文cc1=1'之后頻度密文csup=[cs3,cs2,cs1]=[0',0',1'],接著累加其他5個(gè)密文,最終得到頻度密文csup=[cs3,cs2,cs1]=[0',1',0']。

最后,云端服務(wù)器在得到頻度密文csup之后進(jìn)行閾值判定。閾值是數(shù)據(jù)庫(kù)擁有者設(shè)定并加密的,閾值密文cc_thd=[cthdN+1,cthdN,…,cthd1]包含N+1個(gè)密文位。本實(shí)例中cc_thd=FHE.Enc(pk,-2)=[cthd4,cthd3,cthd2,cthd1]=[1',1',1',0']。首先,令c_carry0=FHE.Enc(pk,0),然后進(jìn)行同態(tài)運(yùn)算得到進(jìn)位c_carryi=FHE.Add(pk,FHE.Mult(pk,cthdi,c_carryi-1),FHE.Mult(pk,csi,FHE.Add(pk,cthdi,c_carryi-1))),i∈{1,2,3},其中c_carry3=1';最后運(yùn)算cresult=FHE.Add(pk,cthd4,c_carry3)得到判定結(jié)果cresult=0'。云端服務(wù)器將得到的密文cresult下傳至代理服務(wù)器進(jìn)行解密。

步驟S4:代理服務(wù)器用私鑰sk解密cresult得到明文m=FHE.Dec(sk,cresult)=0,說(shuō)明記錄R={11,Female,375720}的頻度不低于閾值,代理服務(wù)器向云端服務(wù)器發(fā)送csup解密得到的明文sup=[0,1,0]=2。

步驟S5:云端服務(wù)器將sup=2發(fā)送給客戶(hù)端,客戶(hù)端就得知記錄R={11,Female,375720}的頻度為2。

同樣,如果客戶(hù)端請(qǐng)求查詢(xún)的記錄R={32,Male,375722}的頻度,就會(huì)得到cresult的解密結(jié)果m=FHE.Dec(sk,cresult)=1,csup解密結(jié)果sup=1,說(shuō)明R的頻度低于閾值并且為敏感記錄,向云端服務(wù)器發(fā)送sup=-1;如果客戶(hù)端請(qǐng)求查詢(xún)的記錄R={67,Male,375720}的頻度,就會(huì)得到cresult的解密結(jié)果m=FHE.Dec(sk,cresult)=1,csup解密結(jié)果sup=0,說(shuō)明數(shù)據(jù)庫(kù)中不存在記錄R,向云端服務(wù)器發(fā)送sup=0;

圖3是本發(fā)明提供的面向云端數(shù)據(jù)發(fā)布的保護(hù)數(shù)據(jù)安全及隱私的頻度測(cè)定系統(tǒng)結(jié)構(gòu)示意圖。如圖3所示,本發(fā)明提供的面向云端數(shù)據(jù)發(fā)布的保護(hù)數(shù)據(jù)安全及隱私的頻度測(cè)定系統(tǒng)包括數(shù)據(jù)庫(kù)擁有者、客戶(hù)端、代理服務(wù)器、云端服務(wù)器四個(gè)部分。所述數(shù)據(jù)庫(kù)擁有者連接云端服務(wù)器和代理服務(wù)器,所述客戶(hù)端代理連接數(shù)據(jù)庫(kù)擁有者和云端服務(wù)器,所述客戶(hù)端連接云端服務(wù)器。所述數(shù)據(jù)庫(kù)擁有者用于生成公鑰pk和私鑰sk,并將私鑰sk共享給代理服務(wù)器,將公鑰pk發(fā)送給云端服務(wù)器,將數(shù)據(jù)庫(kù)用公鑰pk加密之后發(fā)送給云端服務(wù)器,并設(shè)置頻度閾值k,對(duì)-k的補(bǔ)碼用公鑰pk加密后發(fā)送給云端服務(wù)器。所述客戶(hù)端向云端服務(wù)器發(fā)送使用公鑰請(qǐng)求和查詢(xún)頻度請(qǐng)求,從云端服務(wù)器得到公鑰pk之后,用公鑰pk加密需查詢(xún)頻度的記錄R,并向云端服務(wù)器發(fā)送R的密文RC。所述云端服務(wù)器執(zhí)行同態(tài)運(yùn)算,包括同態(tài)加法運(yùn)算和同態(tài)乘法運(yùn)算,得到頻度密文csup和頻度判定密文cresult并發(fā)送給代理服務(wù)器,同時(shí)將代理服務(wù)器返回的sup信息發(fā)送給客戶(hù)端。所述代理服務(wù)器用私鑰sk對(duì)密文csup和密文cresult進(jìn)行解密,并依據(jù)解密結(jié)果判定頻度與閾值關(guān)系,發(fā)送相應(yīng)sup信息給云端服務(wù)器。

綜上所述,通過(guò)本發(fā)明實(shí)例提供的面向云端數(shù)據(jù)發(fā)布保護(hù)安全及隱私的頻度測(cè)定方法和系統(tǒng),在四方參與和不泄露明文的情況下,由代理服務(wù)器對(duì)密文解密進(jìn)而執(zhí)行頻度閾值判斷,依據(jù)判斷結(jié)果向云端服務(wù)器返回頻度信息,再由云端服務(wù)器將信息返回給客戶(hù)端,而云端所有記錄以密文形式保存,即利用了云計(jì)算的高效性,又保證了記錄信息的安全性。

本發(fā)明將不會(huì)被限制于本文所示的實(shí)施例,而是要符合與本文所公開(kāi)的原理和新穎特點(diǎn)相一致的最寬的范圍。對(duì)所公開(kāi)的實(shí)施例的上述說(shuō)明,使本領(lǐng)域?qū)I(yè)技術(shù)人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對(duì)這些實(shí)施例的多種修改對(duì)本領(lǐng)域的專(zhuān)業(yè)技術(shù)人員來(lái)說(shuō)將是顯而易見(jiàn)的,本文中所定義的一般原理可以在不脫離本發(fā)明的精神或范圍的情況下,在其它實(shí)施例中實(shí)現(xiàn)。

當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1