[发明专利]密文长度固定的多密钥全同态加密方法有效

专利信息
申请号: 202011153928.5 申请日: 2020-10-26
公开(公告)号: CN112543091B 公开(公告)日: 2022-10-14
发明(设计)人: 周潭平;刘文超;刘尧;吴旭光;车小亮;张敏情;韩益亮;杨晓元 申请(专利权)人: 中国人民武装警察部队工程大学
主分类号: H04L9/00 分类号: H04L9/00;H04L9/08;H04L9/40
代理公司: 西安智萃知识产权代理有限公司 61221 代理人: 方力平
地址: 710086 陕西省西*** 国省代码: 陕西;61
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 长度 固定 密钥 同态 加密 方法
【权利要求书】:

1.密文长度固定的多密钥全同态加密方法,其特征在于,

所述加密方法是半动态定长MKFHE方法,其具体过程是:

·HDMK.Setup(1λ):FHE.Setup(1λ)→params

·HDMK.KeyGen(params):FHE.KeyGen(params,B)→pki,ski

当所有用户都完成HDMK.KeyGen(params)程序之后,运行计算密钥生成算法;如果方案中有用户更新,则重新运行密钥生成算法;

·HDMK.EvalKeyGen(params,ski,{pk1,...,pkN})

·HDMK.Enc(pk,μ):FHE.Enc(pk,μ)→C;

·HDMK.Dec((sk1,...,skN),C):构造联合解密协议,协议分为部分解密和最终解密两个部分;

1)HDMK.PartDec(C,i,ski):用户i利用自身私钥ski=(-si,1),运行部分解密协议,保留密文的公用部分不进行运算;

2)HDMK.FinDec(p1′,...,p′N):解密者得到所有用户的中间变量后,最终解密

·通用模式使用自举过程实现同态运算;

1)该过程实现密文公钥的刷新,其中是Ci对应的自举密钥,如果Ci是单个用户的密文,则其自举密钥是对应的如果Ci是累加公钥的密文,则其自举密钥是对应的

2)该过程实现联合密文同态计算,其中是联合密文的计算密钥;

用户集合更新时,需要所有用户更新计算密钥和自举密钥。

2.根据权利要求1所述的密文长度固定的多密钥全同态加密方法,其特征在于,

对于TFHE型定长MKFHE,其具体的加密方法是:

·HDTMK.Setup(1λ)→pp=(ppLWE,ppGSW):

LWE.Setup(1λ)→ppLWE=(η,χ,α,Bks,dks,B);

GSW.Setup(1λ)→ppGSW=(N,φ,α,B,d,y),其中,B,y随机产生的公用变量;

·HDTMK.KeyGen(pp)→(pki,ski,pkBK,i,skBK,i):

LWE.KeyGen(pp)→{pki=Ai,ski=si};

RGSW.KeyGen(pp)→{pkBK,i=Zi,skBK,i=zi};

当所有用户都完成HDTMK.KeyGen(params)程序之后,运行累加计算密钥生成算法;如果方案中有用户更新,则重新运行密钥生成算法;

·

1)公钥累加:给定k个用户的公钥b1,...,bk生成累加公钥

累加自举公钥:给定k个用户的自举公钥d1,...,dk生成累加自举公钥

2)用户累加自举密钥:输入累加自举公钥LWE密文的私钥si∈Zn,输出单用户的累加自举密钥其中i∈[k],j∈[n];

3)用户累加计算密钥:输入累加公钥RGSW密文的私钥zi,令ti=:(zi,0,-zi,w-1,...,-zi,1)∈BN,生成单用户的累加转化密钥其中i∈[k];

·HDTMK.Enc(pk,μ):输入明文μ,用户公钥pk,运行LWE.Enc(pk,μ)→ct=(b,a)∈Tn+1

·HDMK.Dec((sk1,...,skk),ct):输入密文ct=(b,a)∈Tn+1,输入密钥(sk1,...,skk),返回使得最小的明文比特μ′∈{0,1};

·输入密文ct=(b′,a′)∈Tn+1和自举密钥集合转化密钥集合使用如下自举过程实现同态运算:

1)云端通过生成累加密文的累加转化密钥云端通过生成累加密文的累加自举密钥其中j∈[n],HomAddk(,)是k个l位TGSW密文的同态加法算法;

对于固定的用户集,云端只需要计算一次和之后将其作为公共变量给出;

2)密文刷新:给定密文c=(b′,a′)∈Tn+1和对应的计算密钥或运行如下的同态累加算法:

2-1.输入密文c=(b′,a′)∈Tn+1,返回和以及对应的自举密钥

2-2.初始化RLWE密文其中

令对于j=1到n,运行:

(1)

(2)

...

其中选择最大电路CMux(C,d1,d0)沿用CGGI16的表达,输入一个控制TGSW密文C和两输入的RLWE密文数据d1,d0,输出RLWE的密文C*(d1-d0)+d0,*是GSW密文和BGV密文的混合同态乘法运算;

2-3.输出

3)密钥转化过程:最后一步将ACC转化为LWE密文,并运行密钥转化算法;

3-1.输入密文ACC=(c0,c1)∈T2,令b″是多项式c0中的常数项,a″是由多项式c1的系数组成的向量;输出LWE密文

3-2.令运行密钥转化算法,输出密文

·HDTMK.NAND(c1,c2):利用自举过程构造同态与非门NAND电路,HDTMK.NAND(c1,c2)=HDTMK.Boot((0,5/8)-c1-c2)。

3.根据权利要求1所述的密文长度固定的多密钥全同态加密方法,其特征在于,

对于CKKS型定长MKFHE,其具体的加密方法是:

·HDCMK.Setup(1λ):输入安全参数λ,选择一个为2的幂次的整数N,令χkeyerrenc分别为私钥、噪声和加密过程使用的R=Z[X]/(XN+1)上的分布;选择素数P,p和层数L,令密文模数ql=pl,其中1≤l≤L,随机选择输出公共参数pp=(N,χkeyerrenc,L,P,ql,a,a′);

·HDCMK.KeyGen(pp):输入公共参数,选取s←χkey,e←χerr,输出用户公钥pk为选取e′←χerr,输出用户计算公钥pkevk

当所有用户都完成HDCMK.KeyGen(pp)程序之后,运行累加计算密钥生成算法;如果方案中有用户更新,则重新运行密钥生成算法;

·

1)累加公钥:给定k个用户的公钥b1,...,bk生成CKKS型累加公钥

2)累加计算公钥:给定k个用户的计算公钥b1′,...,bk′生成CKKS型累加公钥

3)累加计算密钥部件生成:

生成用户i的密文集合刷新密钥

生成用户i生成转化密钥的部件其中es←χerr,输出

输出移位密钥共轭密钥

4)云端生成计算密钥

当系统的用户集合更新时,HDCMK系统不使用自举,而用累加的密钥转化过程实现密文对应的密钥集合的刷新,即将老集合的密文转化为新集合的密文;

·HDCMK.Enc(pk,m):c=CKKS.Encpk(m);

·HDCMK.Dec((sk1,...,skk),c):输入l层的密文c,输出m′=<c,sk1+...+skk>(modql);

当系统的用户集合更新时,HDCMK系统不使用自举,而用累加的密钥转化过程实现密文对应的密钥集合的刷新,即,将旧集合的密文转化为新集合的密文;

·输入密文c′=(b′,a′),构造对应的累加转化密钥输出

·同态运算:如果输入同态运算的密文对应的公钥不相同时,利用将其转化到相同公钥,之后再进行同态运算;

-HDCMK.Add(ct,ct′):CKKS.Add(ct,ct′)

-HDCMK.CMult(a,ct):CKKS.CMult(a,ct)

-

-

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民武装警察部队工程大学,未经中国人民武装警察部队工程大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202011153928.5/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top