[發明專利]基于二元截斷多項式環的無噪音全同態公鑰加密方法有效
| 申請號: | 201710602150.3 | 申請日: | 2017-07-21 |
| 公開(公告)號: | CN107317669B | 公開(公告)日: | 2019-11-26 |
| 發明(設計)人: | 王保倉;周立國 | 申請(專利權)人: | 西安電子科技大學 |
| 主分類號: | H04L9/00 | 分類號: | H04L9/00;H04L9/08 |
| 代理公司: | 61205 陜西電子工業專利中心 | 代理人: | 韋全生;王品華<國際申請>=<國際公布> |
| 地址: | 710071 陜*** | 國省代碼: | 陜西;61 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 二元 截斷 多項式 噪音 同態 加密 方法 | ||
1.一種基于二元截斷多項式環的無噪音全同態公鑰加密方法,包括如下步驟:
(1)參數設置:用戶根據自身安全需求設置安全參數k,并定義明文空間M={0,1}k-1為所有k-1比特長整數的集合,其中,k≥1024;
(2)用戶獲取解密私鑰sk、加密公鑰pkE和密文同態計算公鑰pkH,并構造二元截斷多項式環實現步驟為:
(2.1)用戶在安全參數k的控制下,隨機生成兩個k比特長的大素數p和q,并計算RSA模數N,N=pq,再分別構造模p意義下的剩余類環模q意義下的剩余類環和模N意義下的剩余類環
(2.2)用戶在剩余類環中均勻且隨機選取兩個整數a和b,并與大素數p一起構成解密私鑰sk=(a,b,p);
(2.3)用戶在剩余類環中均勻且隨機選取17個整數al、bl和aij,l=1,2,3,4,i,j=0,1,2,并由這些整數構造三個二元多項式f1(x,y)、f2(x,y)和f3(x,y):
f1(x,y)=x3+a1xy+a2x+a3y+a4,
f2(x,y)=y3+b1xy+b2x+b3y+b4,
(2.4)用戶采用三個二元多項式f1(x,y)、f2(x,y)和f3(x,y),分別計算三個含有公共根(a,b)的二元多項式g1(x,y)、g2(x,y)和g3(x,y):
g1(x,y)≡f1(x,y)-f1(a,b)≡x3+a1xy+a2x+a3y+a′4(mod p),
g2(x,y)≡f2(x,y)-f2(a,b)≡y3+b1xy+b2x+b3y+b′4(mod p),
其中,a′4、b′4和a′00分別為二元多項式g1(x,y)、g2(x,y)和g3(x,y)的常數項;
(2.5)用戶在剩余類環中均勻且隨機選取17個整數cl、dl和cij,l=1,2,3,4,i,j=0,1,2,并由這些整數構造三個二元多項式h1(x,y)、h2(x,y)和h3(x,y):
h1(x,y)=x3+c1xy+c2x+c3y+c4,
h2(x,y)=y3+d1xy+d2x+d3y+d4,
(2.6)用戶利用中國剩余定理,獲取三個定義在剩余類環上且含有公共根(a,b)的二元多項式F1(x,y)、F2(x,y)和F3(x,y):
F1(x,y)=x3+e1xy+e2x+e3y+e4,
F2(x,y)=y3+z1xy+z2x+z3y+z4,
其中,el、zl和eij分別為二元多項式F1(x,y)、F2(x,y)和F3(x,y)的系數,且l=1,2,3,4,i,j=0,1,2;
(2.7)由二元多項式F1(x,y)、F2(x,y)、F3(x,y)和RSA模數N,構造加密公鑰pkE=(N,F1(x,y),F2(x,y),F3(x,y)),同時由二元多項式F1(x,y)、F2(x,y)和RSA模數N,構造密文同態計算公鑰pkH=(N,F1(x,y),F2(x,y));
(2.8)用戶采用二元多項式F1(x,y)和F2(x,y),構造元素為關于變量x,y次數不超過2、系數屬于剩余類環最多含有9項的二元多項式的二元截斷多項式環其中,模N的剩余類環上的二元多項式環為
(3)用戶對明文進行概率加密,實現步驟為:
(3.1)用戶根據需求選擇t條明文Mt∈M,并均勻且隨機選取t個概率加密參數其中,t≥2;
(3.2)用戶采用概率加密參數rt和加密公鑰pkE,分別對t條明文Mt進行概率加密:用戶計算并采用二元多項式F1(x,y)、F2(x,y)和RSA模數N對計算結果取模,得到t個屬于二元截斷多項式環的二元多項式Ct(x,y),并將其作為t條明文Mt對應的密文;
(4)用戶對密文Ct(x,y)進行解密:用戶采用解密私鑰sk,對各明文Mt對應的密文Ct(x,y)分別進行解密,得到t條密文Ct(x,y)對應的不同明文Mt;
(5)云服務器對密文進行同態計算:
(5.1)云服務器根據用戶需求,從t條密文Ct(x,y)中選擇明文M1、M2、M′1和M′2對應的密文C1(x,y)、C2(x,y)、C′1(x,y)和C′2(x,y),其中,明文M1、M2、M′1和M′2相同或不同;
(5.2)云服務器采用密文同態計算公鑰pkH,對密文C1(x,y)和C2(x,y)進行同態加法計算:云服務器計算C1(x,y)+C2(x,y),并采用二元多項式F1(x,y)、F2(x,y)和RSA模數N對計算結果取模,得到屬于二元截斷多項式環的二元多項式C+(x,y),并將其作為密文C1(x,y)和C2(x,y)的加法同態密文;
(5.3)云服務器采用密文同態計算公鑰pkH,對密文C′1(x,y)和C′2(x,y)進行同態加法計算:云服務器計算C′1(x,y)C′2(x,y),并采用二元多項式F1(x,y)、F2(x,y)和RSA模數N對計算結果取模,得到屬于二元截斷多項式環的二元多項式C×(x,y),并將其作為密文C′1(x,y)和C′2(x,y)的乘法同態密文;
(6)用戶對同態密文進行解密:
(6.1)用戶采用解密私鑰sk,對密文C1(x,y)和C2(x,y)對應的加法同態密文C+(x,y)進行解密,得到加法同態密文C+(x,y)對應的明文M+=M1+M2,其中,解密公式為:
M+≡C+(a,b)(mod p);
(6.2)用戶采用解密私鑰sk,對密文C′1(x,y)和C′2(x,y)對應的乘法同態密文C×(x,y)進行解密,得到乘法同態密文C×(x,y)對應的明文M×=M′1M′2,其中,解密公式為:
M×≡C×(a,b)(mod p)。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于西安電子科技大學,未經西安電子科技大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710602150.3/1.html,轉載請聲明來源鉆瓜專利網。





