一种基于格的高效紧凑加密方法技术

技术编号:30425026 阅读:20 留言:0更新日期:2021-10-24 16:56
一种基于格的高效紧凑加密方法。记解密者公钥为Y1=Compress1(AX1+E1),私钥为X1,Compress1( )、Decompress1( )与Compress2( )、Decompress2( )分别为两组压缩与解压缩函数,Con( )和Rec( )为双方的共识算法,待加密的消息为K2。加密者发送的密文由两部分构成,一部分是Y2=Compress2(A

【技术实现步骤摘要】
一种基于格的高效紧凑加密方法


[0001]本专利技术涉及密码技术,尤其涉及基于格的后量子加密方法。

技术介绍

[0002]IBM的工程师们预测在未来的二十年内,量子计算机必将被大规模应用。一旦量子计算机被大规模制造出来,大多数基于离散对数、椭圆曲线离散对数或者大整数分解的公钥密码系统都将会被攻破。因此无论我们是否能够准确预测量子计算时代的到来时间,我们都需要将目前的信息安全系统提升到抗量子级别。
[0003]格密码是目前对抗量子攻击的主要数学方法之一。在密码学中,和其他古典的格困难问题(例如SVP和CVP)相比,LWE(Learning With Error) 问题已经被证明有更加全面的功能。
[0004]对于正连续数σ>0与x∈R,定义高斯函数令表示上的一维离散高斯分布,由概率密度函数决定。令表示在上的n维球面离散高斯分布,其中每个坐标都独立于给定正整数n和q,它们都是安全参数λ中的多项式中的参数,并给定整数向量和一个定义在上的概率分布χ,随机均匀选择噪音e

χ,令A
q,x,χ
是上的分布,并输出噪音分布χ通常被认为是离散高斯概率分布但是也可以采用其他的分布。
[0005]在判定型LWE假设中,对足够大的安全参数λ,概率多项式时间算法无法以不可忽略的概率来区分A
q,s,χ
和上的均匀分布。即使敌手看到多项式多个样本,且秘密向量x是从χ
n
随机选取的,这也是成立的。
[0006]MLWE问题是LWE问题的变体。来自MLWE分布的样本形式为其中为环,为m阶分圆多项式,l和h为矩阵样本的维度,从环中随机选取计算得到Y
i
=A
i
X+E
i
,所有样本使用相同的和相同或不同的其中,i用于标记次数,与分别为两个分布,分布参数记为η1与η2,分布可相同也可不同。MLWE问题是从多项式个来自MLWE分布的样本中恢复X。具体地,对于敌手A,定义
[0007][0008]如果没有最多运行t时间的算法A的优势大于ε,我们称(t,∈)-MLWE
h,l,η
困难性假设成立。
[0009]基于MLWE的困难性,可构造公钥加密机制。一个公钥加密机制可由算法构成的三
元组PKE=(Gen,Enc,Dec)来给出,对于任意的κ∈N,有
[0010]1)Gen:密钥生成算法,是一个概率多项式时间算法,输入1
κ
并输出一对字符串(pk,sk),(pk,sk)分别被称为公钥和私钥,该过程可以写作(pk,sk)

Gen(1
κ
)。
[0011]2)Enc:加密算法,是一个概率多项式时间算法,其从明文空间MSP 取公钥消息M,并从随机数空间随机选取r,并产生密文C∈{0,1}
*
,该过程记为C

Enc
pk
(M;r)。
[0012]3)Dec:解密算法,是一个确定性的多项式时间算法,输入密钥sk和密文C∈{0,1}
*
,并返回消息M∈MSP。
[0013]如果对任意的κ∈N,每对(pk,sk)都由Gen(1
κ
)生成,且每个M∈MSP,都有E[max
M∈MSP
Pr[Dec
sk
(Enc
pk
(M))≠M]]≤δ,则说该PKE机制是δ正确的。
[0014]一个密钥封装机制KEM=(Cen,Encaps,Decaps)包括了三种算法。输入安全参数κ,密钥生成算法Gen输出密钥对(pk,sk),pk也定义了一个有限的密钥空间κ。而封装算法Encaps在输入pk时输出二元组(K,C),其中C是密钥K的一个封装,而K则包含在密钥空间κ中。确定的解封装算法Decaps在输入sk和一个密钥封装C后,输出密钥K=Decaps(sk,C)∈κ,或符号

以表示C不是一个有效的密钥封装。
[0015]如果Pr[Decaps(sk,C)≠K|(pk,sk)

Gen(1
κ
);(K,C)

Encaps(pk)]≤δ,那么我们称KEM是δ正确的。

技术实现思路

[0016]一种基于格的高效紧凑加密方法,其中,一个字符串或者值α都表示二进制的值,|α|表示α二进制的长度;对于任意实数x,表示小于等于x的最大整数,表示大于等于x的最小整数,对于任意的正整数a和b,用lcm(a,b)表示a和b的最小公倍数;对于任意的并且i<j,用[i,j]表示整数集合{i,i+1,...,j-1,j};对于任意的正整数t,令表示表示中的元素默认表示为[0,t-1],但有时会明确表示为会明确表示为表示群中二进制长度为n的元素集合;
[0017]如果S是一个有限集合,那么|S|表示它的基数,并且x

S表示均匀随机的从S中取一个元素;对于两个集合我们定义 A+B={a+b|a∈A,b∈B};对于一个加法群(G,+),元素x∈G并且子集 x+S表示将S中每一个元素都和x相加结果的集合;对于一个集合S,用 u(S)表示S的一个均匀分布;对于任意的R中的离散随机变量X, Supp(X)={x∈R|Pr[X=x]>0};
[0018]如果D表示一个概率分布,那么x

D表示根据D选择一个元素并赋值给x;如果α既不是一个算法也不是一个集合,那么x

α就表示简单的赋值操作;如果A是一个概率算法,那么A(x1,x2,...;r)表示将x1,x2,...作为输入, r为随机种子A的运算结果;我们用y

A(x1,x2,...;r)表示随机选取r并令y为 A(x1,x2,...;r)的实验;用Pr[R1;...;R
n
:E]表示事件E在一连串有序的随机过程 R1,...,R
n
之后发生的概率;如果对于任意的c>0,对于所有的λ>λ
c
,都存在一个λ
c
使得f(λ)<1/λ
c
,那么函数f(λ)是可忽略的;定义环其中,为m阶分圆多项式;R
q
中的元素为N维多项式,其形式为a0+a1x1+a2x2+...+
a
N-1
x
N-1
,其中N是一个正整数;正整数l和h为矩阵样本的维度,表示h
×
l维的矩阵,每个元素为环R
q
上的N维多项式;对于输入是向量的函数,其运算是对向量的每一维分别处理计算;
[0019]MLWE分布中的样本形式为MLWE问题是从多项式个来自MLWE分布的样本中恢复秘密值X;具体地,从环中随机选取计算得到Y
i
=A
i
X+E
i
,所有样本使用相同的和相同或不同的其中,正整数i用于标本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于格的高效紧凑加密方法,其中,一个字符串或者值α都表示二进制的值,|α|表示α二进制的长度;对于任意实数x,表示小于等于x的最大整数,表示大于等于x的最小整数,对于任意的正整数a和b,用lcm(a,b)表示a和b的最小公倍数;对于任意的并且i<j,用[i,j]表示整数集合{i,i+1,...,j-1,j};对于任意的正整数t,令表示表示中的元素默认表示为[0,t-1],但有时会明确表示为会明确表示为表示群中二进制长度为n的元素集合;如果S是一个有限集合,那么|S|表示它的基数,并且x

S表示均匀随机的从S中取一个元素;对于两个集合我们定义A+B={a+b|a∈A,b∈B};对于一个加法群(G,+),元素x∈G并且子集x+S表示将S中每一个元素都和x相加结果的集合;对于一个集合S,用u(S)表示S的一个均匀分布;对于任意的R中的离散随机变量X,Supp(X)={x∈R|Pr[X=x]>0};如果D表示一个概率分布,那么x

D表示根据D选择一个元素并赋值给x;如果α既不是一个算法也不是一个集合,那么x

α就表示简单的赋值操作;如果A是一个概率算法,那么A(x1,x2,...;r)表示将x1,x2,...作为输入,r为随机种子A的运算结果;我们用y

A(x1,x2,...;r)表示随机选取r并令y为A(x1,x2,...;r)的实验;用Pr[R1;...;R
n
:E]表示事件E在一连串有序的随机过程R1,...,R
n
之后发生的概率;如果对于任意的c>0,对于所有的λ>λ
c
,都存在一个λ
c
使得f(λ)<1/λ
c
,那么函数f(λ)是可忽略的;定义环其中,为m阶分圆多项式;R
q
中的元素为N维多项式,其形式为a0+a1x1+a2x2+

+a
N-1
x
N-1
,其中N是一个正整数;正整数l和h为矩阵样本的维度,表示h
×
l维的矩阵,每个元素为环R
q
上的N维多项式;对于输入是向量的函数,其运算是对向量的每一维分别处理计算;MLWE分布中的样本形式为MLWE问题是从多项式个来自MLWE分布的样本中恢复秘密值X;具体地,从环中随机选取计算得到Y
i
=A
i
X+E
i
,所有样本使用相同的和相同或不同的其中,正整数i用于标记次数,与分别为两个概率分布,分布参数记为η1与η2,分布可相同也可不同;对于敌手A定义如果没有最多运行τ时间且优势大于ε的算法A,我们称(τ,∈)-MLWE
h,l,η
困难性假设成立;其中,τ是关于N的多项式,ε是关于N的可忽略函数;一个非对称共识算法AKC=(params,Con,Rec),其中参数定义如下:1)params=(q,m,g,d,aux)表示系统参数,且都为正整数,aux表示由(q,m,g,d)确定的辅助信息,其值可能为空;除非特别说明,本发明方法中的m=2
或4;2)V

Con(Σ2,K2,params),Con()为一种多项式时间算法,在输入为(Σ2,K2,params)的条件下,算法输出信号其中,其中,其中n和n

以及N为正整数,其值相等或不等;3)K1=Rec(Σ1,V,params),Rec()为一种确定性多项式算法,在输入为(Σ1,V,params)的情况下,Rec()输出的结果为其中,所述方法包括:生成加密所需的系统参数(λ,n,q,χ,AKC,l,h,t1,t2);其中,λ为安全参数,q≥2,χ为噪音分布,l和h为正整数并且为λ的多项式,表示维度大小,t1和t2为压缩函数中使用的参数,用于发送密文时减小带宽而进行的操作;公私钥生成:解密者采样得到随机种子seed

{0,1}
κ
,seed的长度是正整数κ,利用Gen输入种子seed生成矩阵A,其中,是一个伪随机生成器,将长度为κ的随机字符串映射到的矩阵A;所述解密者采样及其中,与分别为两个分布,用于采样l
×
1维的向量,其中向量的每一维元素是R
q
上的多项式,所述分布相同或不同;和/或作为私钥的一部分;所述解密者计算公钥Y1=Compress1(AX1+E1),并将Y1与seed作为公钥的一部分发送给加密者;其中,Compress1()为一种压缩函数,该压缩函数的输入输出为二者均为环R
q
上l
×
1维的向量,每一维为N维多项式但多项式每一维的系数削减t1比特,其中t1≥0是整数;加密方法:所述加密者从中选取K2作为待加密消息,并根据得到的随机种子seed,使用相同的伪随机数发生器Gen生成矩阵A=Gen(seed);所述加密者采样以及其中,与分别为两个相同或不同的分布,用于采样l
×
1维的向量,分布用于采样N维多项式,η1,η2,η3相等或不等;所述加密者计算:1)Y2=Compress2(A
T
X2+E2);其中,Compress2()为一种压缩函数,该压缩函数的输入输出为均为环R
q
上l
×
1维的向量,每一维均为N维多项式但多项式每一维的系数削减t2比特,其中t2≥0是整数;加密者使用的Compress2()与解密者使用的Compress1()函数相同或不同;2)Σ2=Decompress1(Y1)
T
·
X2+E
σ
;其中,Decompress1()为一种解压缩函数,加密者使用的Decompress1()需与解密者使用的Compress1()函数对应,该解压缩函数的输入为输出解压缩结果,二者均为环R
q
上的l
×
1维向量,与E
σ
∈R
q
相加得到Σ2∈R
q
,为N维多项式;3)V

Con(Σ2,K2,params);其中,Con()为非对称密钥共识AKC中定义的多项式算法,输入为(Σ2,K2,params),算法Con()输出所述加密者将和作为密文的一部分发送给所述解密者;
解密方法:所述解密者收到Y2与V以后,执行以下步骤:1)其中,Decompress2()为一种解压缩函数,与加密者使用的Compress2()相对应,该解压缩函数的输入输出解压缩结果,二者均为环R
q
上的l
×
1维向量,相乘得到Σ1∈R
q
,为N维多项式;2)K1=Rec(Σ1,V,params);其中,Rec()为确定性多项式算法,在输入为(Σ1,V,params)的情况下,Rec()输出的结果为Con()和Rec()有如下计算方式:对于多项式的每一个系数σ2∈Z
q
和σ1∈Z
q
和K2中的每一维系数k2∈Z
m
,1)共识方式-1:或者其中是V中对应维度的值;和/或2)共识方式-2:其中是V中对应维度的值;和/或3)共识方式-3:其中是V中对应维度的值;和/或4)共识方式-4:其中是V中对应维度的值;和/或5)共识方式-5:其中是V中对应维度的值;和/或6)共识方式-6:其中是V中对应维度的值;和/或7)共识方式-7:其中是V中对应维度的值;和/或Compress1()和/或Compress2()的计算方式为如下的Compress();Decompress1()和/或Decompress2()的计算方式为如下的Decompress();令t≥0为一个整数且t∈{t1,t2},如果t=0表示不用做压缩和解压缩;注意对于发明方法实际应用中Compress1()和/或Compress2()所采用的具体的t值可以相等对应于t1=t2,也可以不等对应于t1≠t2;对于多项式的每一个系数,记为1)压缩和解压缩方式-1:Decompress(y)=2
t
y;2)压缩和解压缩方式-2:Decompress(y)=2
t
y+2
t-1

3)压缩和解压缩方式-3:Decompress(y)=2
t
y-2
t-1
;上面三种方式,但是如果y=2
t-1
时压缩函数额外输出一个标识符,解压缩函数输入除了y还有这个标识符,此时解压缩输出2
t
y+2
t-1
或2
t
y-2
t-1

【专利技术属性】
技术研发人员:赵运磊黄兴忠
申请(专利权)人:上海扈民区块链科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1