一种基于格的加密方法与流程

文档序号:19182728发布日期:2019-11-20 01:10阅读:来源:国知局

技术特征:

1.一种基于格的密钥生成方法,其步骤包括:

1)选取公共参数:包括选取正整数p、q、m、n、k和d;其中1<p<q且p与q互素,d<q;选取整系数多项式f(x),并令环rq=zq[x]/f(x),环rp=zp[x]/f(x);zq为剩余类环,选取环rq上的分布χ、χ′;选取中的任意可逆矩阵d,并记其在中的逆为d-1

2)生成一矩阵一秘密方阵和一错误矩阵其中,秘密方阵s′的各分量从环rq上的分布χ中抽取,错误矩阵e0的各分量从环rq上的分布χ′中抽取;

3)计算然后将s作为私钥,公钥为(b,a)。

2.一种基于格的加密方法,其步骤包括:

1)选取公共参数:包括选取正整数p、q、m、n、k和d;其中1<p<q且p与q互素,d<q;选取整系数多项式f(x),并令环rq=zq[x]/f(x),环rp=zp[x]/f(x);zq为剩余类环,选取环rq上的分布χ、χ′;选取中的任意可逆矩阵d,并记其在中的逆为d-1

2)生成一矩阵一秘密方阵和一错误矩阵其中,秘密方阵s′的各分量从环rq上的分布χ中抽取,错误矩阵e0的各分量从环rq上的分布χ′中抽取;

3)计算然后将s作为私钥,公钥为(b,a);

4)对于待加密的消息发送方生成一随机矩阵错误矩阵和错误矩阵其中,矩阵v的各分量从环rq上的分布χ中抽取,错误矩阵e1和错误矩阵e2各分量从环rq上的分布χ′中抽取;

5)发送方利用接收方公钥计算以及计算

6)发送方对矩阵c的各分量多项式的各系数对d求余数,将得到的余数多项式矩阵记为rem(c),并令w=rem(c)·d-1modp;然后计算得到

7)发送方对矩阵c的各分量多项式的各系数对d求商,将得到的商多项式矩阵记为c2=quo(c);然后输出密文(c1,c2)。

3.如权利要求1或2所述的方法,其特征在于,χ、χ′为离散高斯分布或者中心二项分布。

4.如权利要求1或2所述的方法,其特征在于,m=n=k=1。

5.如权利要求1或2所述的方法,其特征在于,对于剩余类环zq,当q为正偶数时选取作为zq的代表元,当q为正奇数时选取作为zq的代表元;对于剩余类环zp,当p为正偶数时选取作为zp的代表元,当p为正奇数时选取作为zp的代表元。

6.如权利要求2所述的方法,其特征在于,p(e1s-ve0-e2+ms′-ws′)+rem(c)-wd+md的各分量多项式的各系数以设定概率均落在区间里;设定概率越高,解密正确概率越高。

7.一种与权利要求2所述加密方法对应的解密方法,其步骤包括:

1)接收方对于收到的密文(c1,c2),通过计算c3=d·c2,对c2进行解压缩;

2)接收方利用自己的私钥s,计算m′=(c1s-c3modq)modp;

3)接收方输出恢复的明文m′·d-1modp。

8.一种基于格的加密系统,其特征在于,包括密钥生成单元、加密单元和解密单元;其中,

密钥生成单元,用于选取公共参数,包括选取正整数p、q、m、n、k和d;其中1<p<q且p与q互素,d<q;选取整系数多项式f(x),并令环rq=zq[x]/f(x),环rp=zp[x]/f(x);zq为剩余类环,选取环rq上的分布χ、χ′;选取中的任意可逆矩阵d,并记其在中的逆为d-1;然后生成一矩阵一秘密方阵和一错误矩阵其中,秘密方阵s′的各分量从环rq上的分布χ中抽取,错误矩阵e0的各分量从环rq上的分布χ′中抽取;然后计算将s作为私钥,公钥为(b,a);

加密单元,用于对于待加密的消息m,生成一随机矩阵错误矩阵和错误矩阵其中,矩阵v的各分量从环rq上的分布χ中抽取,错误矩阵e1和错误矩阵e2各分量从环rq上的分布χ′中抽取;然后利用公钥计算然后对矩阵c的各分量多项式的各系数对d求余数,将得到的余数多项式矩阵记为rem(c),并令w=rem(c)·d-1modp,计算得到然后对矩阵c的各分量多项式的各系数对d求商,将得到的商多项式矩阵记为c2=quo(c);然后输出密文(c1,c2);

解密单元,用于对于收到的密文(c1,c2),通过计算c3=d·c2,对c2进行解压缩;然后利用自己的私钥s,计算m′=(c1s-c3modq)modp,输出恢复的明文m′·d-1modp。

9.如权利要求8所述的系统,其特征在于,对于剩余类环zq,当q为正偶数时选取作为zq的代表元,当q为正奇数时选取作为zq的代表元;对于剩余类环zp,当p为正偶数时选取作为zp的代表元,当p为正奇数时选取作为zp的代表元。

10.如权利要求8所述的系统,其特征在于,χ、χ′为离散高斯分布或者中心二项分布;m=n=k=1;多项式p(e1s-ve0-e2+ms′-ws′)+rem(c)-wd+md的各系数以设定概率均落在区间里,设定概率越高,解密正确概率越高。


技术总结
本发明公开了一种基于格的加密方法,其步骤包括:1)生成私钥S,公钥为(B,A);2)发送方利用接收方公钥计算C0=VA+pE1以及计算C=VB+pE2;3)发送方对矩阵C的各分量多项式的各系数对d求余数,将得到的余数多项式矩阵记为rem(C),并令W=rem(C)·D‑1mod p;然后计算得到C1=C0+M‑W;4)发送方对矩阵C的各分量多项式的各系数对d求商,将得到的商多项式矩阵记为C2=quo(C);然后输出密文(C1,C2)。本发明以低位隐藏密文,可以和其它技术结合起来使用,再达到高低位同时隐藏的目的;同时,由于引入了密文压缩的技术,也降低了通信的带宽需求。

技术研发人员:潘彦斌;谢天元;刘珍;李昊宇;朱熠铭;杨照民
受保护的技术使用者:中国科学院数学与系统科学研究院
技术研发日:2019.07.31
技术公布日:2019.11.19
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1