用于云計(jì)算的數(shù)據(jù)加解密處理方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及數(shù)據(jù)加密技術(shù)領(lǐng)域,尤其涉及一種用于云計(jì)算的數(shù)據(jù)加解密處理方法 和裝置。
【背景技術(shù)】
[0002] 隨著計(jì)算機(jī)技術(shù)、信息技術(shù)、網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,云計(jì)算已經(jīng)成為了當(dāng)前的研究 熱點(diǎn)。云計(jì)算W網(wǎng)格計(jì)算技術(shù)、點(diǎn)對(duì)點(diǎn)技術(shù)、并行計(jì)算技術(shù)、互聯(lián)網(wǎng)絡(luò)技術(shù)等多項(xiàng)技術(shù)為基 礎(chǔ),并進(jìn)行技術(shù)融合和理念升華,為用戶提供穩(wěn)定、高速、可擴(kuò)展、虛擬化的計(jì)算環(huán)境。該樣 用戶的計(jì)算將不再局限于本地或其局域網(wǎng)絡(luò)內(nèi)部,而是依賴于云端提供的虛擬化的計(jì)算服 務(wù),可W做到本地或其局域網(wǎng)絡(luò)內(nèi)部的零計(jì)算。比如:企業(yè)內(nèi)部將不再需要架設(shè)服務(wù)和數(shù)據(jù) 庫(kù)來(lái)部署財(cái)務(wù)軟件,而僅僅需要購(gòu)買(mǎi)云端虛擬的財(cái)務(wù)服務(wù)即可,通過(guò)云端虛擬服務(wù)來(lái)提供 財(cái)務(wù)數(shù)據(jù)計(jì)算使用,省去了企業(yè)前期部署購(gòu)買(mǎi)軟硬件設(shè)備和后期維護(hù)的費(fèi)用。
[0003] 在云計(jì)算使用過(guò)程中,隨之帶來(lái)的是數(shù)據(jù)的隱私性問(wèn)題。比如傳統(tǒng)的財(cái)務(wù)數(shù)據(jù)是 提交到企業(yè)內(nèi)部的網(wǎng)絡(luò)服務(wù)中進(jìn)行計(jì)算。由于數(shù)據(jù)的傳送不通過(guò)互聯(lián)網(wǎng)絡(luò),且數(shù)據(jù)的計(jì)算 和存儲(chǔ)是在企業(yè)內(nèi)部自有的設(shè)備中進(jìn)行,因此不涉及數(shù)據(jù)的隱私和泄密問(wèn)題。而在云計(jì)算 中,財(cái)務(wù)數(shù)據(jù)則需要通過(guò)互聯(lián)網(wǎng)絡(luò)傳送到云端,并在云端進(jìn)行計(jì)算和存儲(chǔ)。該樣,財(cái)務(wù)數(shù)據(jù) 可能在傳輸、計(jì)算、存儲(chǔ)過(guò)程中被其它商業(yè)競(jìng)爭(zhēng)者獲得,涉及到企業(yè)財(cái)務(wù)數(shù)據(jù)的隱私性,因 此需要對(duì)數(shù)據(jù)進(jìn)行加密處理來(lái)進(jìn)行隱私保護(hù)。
[0004] 為了滿足用戶數(shù)據(jù)隱私性要求,云端服務(wù)在對(duì)用戶提交的密文數(shù)據(jù)進(jìn)行計(jì)算處理 時(shí)不能解密,即直接對(duì)密文進(jìn)行運(yùn)算處理,且要求經(jīng)過(guò)計(jì)算處理后的密文結(jié)果,在反饋給用 戶后,用戶能通過(guò)解密計(jì)算來(lái)解出預(yù)期的處理結(jié)果。該樣傳統(tǒng)的數(shù)據(jù)加解密的方法將不再 適用。
[0005] 現(xiàn)有技術(shù)中的一種對(duì)密文進(jìn)行運(yùn)算處理的方法為:同態(tài)加密的方法,該方法在不 知道明文(不解密)的情況下能對(duì)密文進(jìn)行運(yùn)算處理,得到相應(yīng)明文處理后的加密結(jié)果。
[0006] 上述對(duì)密文進(jìn)行運(yùn)算處理的方法存在如下的問(wèn)題:計(jì)算度過(guò)于密集。需要把明文 或消息按照比特位分開(kāi),逐比特進(jìn)行加密處理計(jì)算。與傳統(tǒng)的明文或消息分塊加密計(jì)算相 比,其計(jì)算量過(guò)大,密文結(jié)果也過(guò)大。
[0007] 存在人為引入的噪聲。由于噪聲的存在,為了不影響解密結(jié)果,需要不停的去通過(guò) 復(fù)雜的重加密方法去更換密鑰來(lái)降低噪聲。
【發(fā)明內(nèi)容】
[0008] 本發(fā)明的實(shí)施例提供了一種用于云計(jì)算的數(shù)據(jù)加解密處理方法和裝置,W實(shí)現(xiàn)在 云計(jì)算中對(duì)密文進(jìn)行有效的運(yùn)算處理。
[0009] 本發(fā)明提供了如下方案:
[0010] 一種用于云計(jì)算的數(shù)據(jù)加解密處理方法,包括:
[0011] 用戶通過(guò)隨機(jī)選取的整數(shù)產(chǎn)生公開(kāi)密鑰和私有密鑰;
[0012] 所述用戶用所述公開(kāi)密鑰加密明文得到密文,將所述密文發(fā)送到云端服務(wù);
[0013] 所述云端服務(wù)利用明文處理函數(shù)和所述公開(kāi)密鑰處理所述密文,得到密文處理結(jié) 果,將所述密文處理結(jié)果發(fā)送給用戶;
[0014] 所述用戶用所述私有密鑰解密所述云端服務(wù)發(fā)送過(guò)來(lái)的密文處理結(jié)果,得到明文 處理結(jié)果。
[0015] 所述的用戶通過(guò)隨機(jī)選取的整數(shù)產(chǎn)生公開(kāi)密鑰和私有密鑰,包括:
[0016] 用戶選取整數(shù)n=P.q.S,其中P、q、S都為大素?cái)?shù);
[0017] 隨機(jī)選取整數(shù)e和山且滿足(',口'<刮")和e+ mod刮"),其中
[0018] 令(e,n)作為供加密和密文處理使用的公開(kāi)密鑰,(d,n)作為供解密使用的私有 密鑰。
[0019] 所述的用戶用所述公開(kāi)密鑰加密明文得到密文,將所述密文發(fā)送到云端服務(wù),包 括:
[0020] 所述用戶隨機(jī)選取整數(shù)r,且滿足r<n和gcd(r,n)聲1,其中g(shù)cd(r,n)為r和 n的最大公因子;
[0021] 所述用戶選取明文m,且滿足m<n,用公開(kāi)密鑰計(jì)算C=(fS?m)mo化;
[002引設(shè)叫,m2,. . .,m。為滿足加密過(guò)程的明文,C。C2,C。為叫,m2,. . .,m。對(duì)應(yīng)的密 文,(Ci,r),(C2,r),...,(C。,!")為對(duì)應(yīng)的經(jīng)過(guò)加密過(guò)程處理的密文,所述用戶把密文 (Cl,r),柏,r),. . .,(C。,r)W及公開(kāi)密鑰(e,n)發(fā)送到云端服務(wù)。
[0023] 所述的云端服務(wù)利用明文處理函數(shù)和所述公開(kāi)密鑰處理所述密文,得到密文處理 結(jié)果,將所述密文處理結(jié)果發(fā)送給用戶,包括:
[0024] 設(shè)M=f相,m2,... m。)為明文處理函數(shù),對(duì)于任意處理函數(shù)f相,m2,... m。)都可表 示成如下多項(xiàng)式形式:
[00 巧]
[002引其中ku為正整數(shù),ai,32,a。為設(shè)定的系數(shù);
[0027] 令
作為函數(shù)f相馬...m。)的分量,則有
[002引令
為求函數(shù)分量的幕次運(yùn)算,且令D= Max(di,d2,...,屯)為所有分量的最大幕次;
[0029] 令
則各分量的密文處理過(guò)程為:
[0030]
modn
[0031] 令(C,r)作為處理后的密文,云端服務(wù)把密文處理結(jié)果(C,r)返給用戶。
[0032] 所述的用戶用所述私有密鑰解密所述云端服務(wù)發(fā)送過(guò)來(lái)的密文處理結(jié)果,得到明 文處理結(jié)果,包括:
[0033] 用戶接收到云端服務(wù)發(fā)送過(guò)來(lái)的密文處理結(jié)果(C,r),用處理函數(shù)分量最大幕次 D和私有密鑰(d,n)做如下計(jì)算:
[0034] M=(C?r(D?d))modn
[003引 其中,M=f(m。m2,. . .m。);
[0036] 用戶將計(jì)算得到的(C,r)明文作為云端服務(wù)返回的明文處理結(jié)果。
[0037] -種用于云計(jì)算的數(shù)據(jù)加解密處理裝置,包括:
[0038] 密鑰產(chǎn)生模塊,用于利用用戶通過(guò)隨機(jī)選取的整數(shù)產(chǎn)生公開(kāi)密鑰和私有密鑰;
[0039] 密文產(chǎn)生和發(fā)送模塊,用于利用所述用戶用所述公開(kāi)密鑰加密明文得到密文,將 所述密文發(fā)送到云端服務(wù);
[0040] 密文處理結(jié)果產(chǎn)生和發(fā)送模塊,用于利用所述云端服務(wù)利用明文處理函數(shù)和所述 公開(kāi)密鑰處理所述密文,得到密文處理結(jié)果,將所述密文處理結(jié)果發(fā)送給用戶;
[0041] 解密處理模塊,用于利用所述用戶用所述私有密鑰解密所述云端服務(wù)發(fā)送過(guò)來(lái)的 密文處理結(jié)果,得到明文處理結(jié)果。
[0042] 所述的密鑰產(chǎn)生模塊,具體用于利用用戶選取整數(shù)n=p-q-s,其中P、 q、S都為大素?cái)?shù);隨機(jī)選取整數(shù)e和山且滿足£,.J<^/!)和Wf/sOmocUW"),其中 療(/?) = (/?_〇(^/-1)0-1).
[0043] 令(e,n)作為供加密和密文處理使用的公開(kāi)密鑰,(d,n)作為供解密使用的私有 密鑰。
[0044] 所述的密文產(chǎn)生和發(fā)送模塊,具體用于利用所述用戶隨機(jī)選取整數(shù)r,且滿足r <n和gcd(r,n)聲1,其中g(shù)cd(r,n)為r和n的最大公因子;
[0045] 所述用戶選取明文m,且滿足m<n,用公開(kāi)密鑰計(jì)算C=(fS?m)mo化;
[004引設(shè)叫,m2,. . .,m。為滿足加密過(guò)程的明文,C。C2,C。為叫,m2,. . .,m。對(duì)應(yīng)的密 文,(Ci,r),(C2,r),...,(C。,!")為對(duì)應(yīng)的經(jīng)過(guò)加密過(guò)程處理的密文,所述用戶把密文 (Cl,r),柏,r),. . .,(C。,r)W及公開(kāi)密鑰(e,n)發(fā)送到云端服務(wù)。
[0047] 所述的密文處理結(jié)果產(chǎn)生和發(fā)送模塊,具體用于設(shè)M= 為明文處 理函數(shù),對(duì)于任意處理函數(shù)f(m。m2,...m。)都可表示成如下多項(xiàng)式形式:
[0048]
[004引其中k。為正整數(shù),ai,32,a。為設(shè)定的系數(shù);
[0050] 令
作為函數(shù)f(m。m2,. . .m。)的分量,則有
[0051] 令
為求函數(shù)分量的幕次運(yùn)算,且令D= Max(di,d2,...,屯)為所有分量的最大幕次;
[0052] 令
則各分量的密文處理過(guò)程為:
[0053]
[0054] 令佑r)作為處理后的密文,云端服務(wù)把密文處理結(jié)果佑r)返給用戶。
[00巧]所述的解密處理模塊,具體用于利用所述用戶接收到云端服務(wù)發(fā)送過(guò)來(lái)的密文處 理結(jié)果(C,r),用處理函數(shù)分量最大幕次D和私有密鑰(d,n)做如下計(jì)算:
[0056]M=(C?r(D?d))modn
[0057]其中,M=f(m。m2, . . .m。);
[0058] 用戶將計(jì)算得