当前位置: 首页 > 专利查询>中山大学专利>正文

一种基于模容错学习抗侧信道攻击的可否认公钥加密方法技术

技术编号:36949414 阅读:16 留言:0更新日期:2023-03-22 19:10
本发明专利技术涉属于密码学隐私保护技术领域,更具体地,涉及一种基于模容错学习抗侧信道攻击的可否认公钥加密方法。在本发明专利技术方法的加密算法中,加密随机数s中“0”比特位置执行的操作和加密随机数s中“1”比特位置执行的操作完全相同,这使得本发明专利技术方法在运行加密算法时产生的能量,时间消耗,或缓存访问等侧信道信息将不会泄露关于s的任何比特知识,所以,即使某一强迫攻击者使用简单能量分析攻击,时间攻击和缓存攻击等侧信道攻击手段,也无法破坏本发明专利技术方法的可否认性。此外,由于使用了基于模容错学习的公钥加密方案,本发明专利技术方法可以抵抗可能的量子计算攻击,因此本发明专利技术方法也是后量子的可否认公钥加密方法。否认公钥加密方法。

【技术实现步骤摘要】
一种基于模容错学习抗侧信道攻击的可否认公钥加密方法


[0001]本专利技术涉属于密码学隐私保护
,更具体地,涉及一种基于模容错学习抗侧信道攻击的可否认公钥加密方法。

技术介绍

[0002]可否认公钥加密是一类针对胁迫攻击者的公钥加密原语,它允许被胁迫的发送方产生“假的”(但看起来合法的)加密时的随机值,使得对已经执行了的一些加密通信,其密文可以被打开为另一条明文消息(非原始消息)。目前已有许多基于不同密码学原语的可否认公钥加密方案被提出。陈晓峰等人提出了一种基于解密可控公钥加密方案的可否认加密方法,曹艳梅等人基于双线性对提出了支持消息认证的可否认公钥加密方案,高崇志等人提出了抗选择密文攻击安全的可否认加密方案,孙龙等人提出了基于二次剩余问题和可信第三方的可否认公钥加密方案。但是,这些现有方案的安全性都是基于传统的数论困难问题,因此在未来可能的量子计算攻击下将不再安全。现有的后量子可否认公钥加密方案是刘峰豪等人提出的基于容错学习的属性加密方案,以及吴文渊等人提出的基于容错学习的发送方可否认方案和基于模容错学习的双向可否认方案。然而,以上方案都无法抵抗一些常见的侧信道攻击手段,例如简单能量分析攻击,时间攻击和缓存攻击等。因此,恶意的强迫攻击者可以对包含这些方案的应用进行侧信道分析,从而窃取数据,危害整个系统的安全性。目前还没有抗侧信道攻击的后量子可否认公钥加密方案。
[0003]侧信道攻击,是指敌手可以通过被动或主动的探测密码设备的侧信道信息(物理量),例如能量和时钟周期消耗,缓存访问命中率等,来恢复部分甚至全部密钥,从而获取系统内部秘密信息。由于密码设备或接口通常都部署在较为综合的软/硬件环境,如何检测并抵抗可能的侧信道攻击,是密码算法或协议实用化要面对的核心问题。

技术实现思路

[0004]本专利技术为克服上述现有技术中的缺陷,提供一种基于模容错学习抗侧信道攻击的可否认公钥加密方法,在一些基础侧信道攻击下依旧支持发送方可否认性,且加密公私钥和密文尺寸都较小。
[0005]为解决上述技术问题,本专利技术采用的技术方案是:一种基于模容错学习抗侧信道攻击的可否认公钥加密方法,包括以下步骤:
[0006]S1.密钥生成算法:生成基于模容错学习的公钥加密方案E的公私钥(dpk,dsk);
[0007]S2.加密算法:输入来自合法明文域的待加密消息m,首先采样一个长度为n,均匀随机的比特串s=(s1,

,s
n
)∈{0,1}
n
,将s中“1”和“0”比特所在的下标集合记为和若则重新采样;否则,使用公开的伪随机产生器选取中的元素t,接着,对所有i∈[n],执行以下操作来产生n个密文对:若s
i
=0,采样掩码消息和4个随机数r
i(3)
,以上描述中l
c

=l
c
+l
pad
,l
c
是方案E的密文域的长度,
也即l
pad
是一个固定的正整数填充值,是方案E的随机数域;令使用公开的哈希函数来计算m
i
的哈希值利用dpk和随机数r
i(4)
,使用方案E中的加密算法来加密m
i
||h
i
,此外,利用dpk和随机数r
i(3)
,使用方案E中的加密算法来加密得到另一个密文最后,令在位置i的密文对为若s
i
=1,首先判断是否有i=t,若是,则令m
i
=m;否则,随机采样掩码消息和4个随机数和4个随机数r
i(1)
,然后,使用计算接着,利用dpk和随机数r
i(1)
,使用方案E中的加密算法来加密m
i
||h
i
,得到令此外,利用dpk和随机数r
i(3)
,使用方案E中的加密算法来加密得到令在位置i的密文对为使用本可否认公钥加密方法加密消息m得到的密文为c=(c1,

,c
n
);
[0008]S3.解密算法,输入密文c=(c1,

,c
n
),首先定义一个全“0”比特串s=(s1,

,s
n
)=(0,

,0)∈{0,1}
n
,对所有i∈[n],执行以下操作来解密c:将c
i
解析为两个子密文然后,利用dsk,使用方案E中的解密算法来解密得到R,若R=

表示解密失败,则令s
i
=0;否则,计算然后,利用dsk,使用方案E中的解密算法来解密得到m
i
||h
i
,若m
i
||h
i


或则令s
i
=0;否则,令s
i
=1;最后,使用公开的伪随机产生器选取s中的一个“1”比特所在位置t;使用本可否认公钥加密方法解密密文c得到的明文为m
t

[0009]S4.伪造算法:输入原始消息m,加密消息m使用的内部随机数虚假消息执行以下操作来产生伪造的随机数:令s

=(s
′1,

,s

n
)=(s1,

,s
t
‑1,0,s
t+1
,

,s
n
),将s

中“1”比特和“0”比特所在的下标集合记为和若输出“伪造失败”并停机;否则,使用选取中的元素t

;接着,对所有i∈[n]:若令若令若i=t,随机采样令最后,输出伪造的内部随机数为
[0010]在本专利技术中,在可否认加密算法中使用了一个辅助的比特串s,根据s中n个比特的模式来产生n个密文对,其中一对是关于真实消息m的加密密文,其余n

1对是掩码密文。具体来说,在“0”比特位置,产生一个随机密文,使用基于模容错学习的公钥加密方案E来加密一个随机数,结果作为另一个密文。在“1”比特位置,使用E加密一个随机消息或真实消息,并将加密结果与一个随机数异或,结果作为一个密文,再使用E加密上述作用在异或过程的
随机数,结果作为另一个密文。此外,为了使得接收方可以成功解密,在使用E加密随机消息或真实消息时,还将同时加密消息的哈希值。
[0011]本专利技术还提供一种基于模容错学习抗侧信道攻击的可否认公钥加密系统,包括:
[0012]密钥生成模块:用于生成基于模容错学习的公钥加密方案E的公私钥(dpk,dsk);
[0013]加密模块:用于输入来自合法明文域的待加密消息m,首先采样一个长度为n,均匀随机的比特串s=(s1,

,s
n
)∈{0,1}
n...

【技术保护点】

【技术特征摘要】
1.一种基于模容错学习抗侧信道攻击的可否认公钥加密方法,其特征在于,包括以下步骤:S1.密钥生成算法:生成基于模容错学习的公钥加密方案E的公私钥(dpk,dsk);S2.加密算法:输入来自合法明文域的待加密消息m,首先采样一个长度为n,均匀随机的比特串s=(s1,

,s
n
)∈{0,1}
n
,将s中“1”和“0”比特所在的下标集合记为和若则重新采样;否则,使用公开的伪随机产生器选取中的元素t,接着,对所有i∈[n],执行以下操作来产生n个密文对:若s
i
=0,采样掩码消息和4个随机数以上描述中l
c

=l
c
+l
pad
,l
c
是方案E的密文域的长度,也即l
pad
是一个固定的正整数填充值,是方案E的随机数域;令使用公开的哈希函数来计算m
i
的哈希值利用dpk和随机数使用方案E中的加密算法来加密m
i
||h
i
,此外,利用dpk和随机数使用方案E中的加密算法来加密得到另一个密文最后,令在位置i的密文对为若s
i
=1,首先判断是否有i=t,若是,则令m
i
=m;否则,随机采样掩码消息和4个随机数和4个随机数然后,使用计算接着,利用dpk和随机数使用方案E中的加密算法来加密m
i
||h
i
,得到令此外,利用dpk和随机数使用方案E中的加密算法来加密得到令在位置i的密文对为使用本可否认公钥加密方法加密消息m得到的密文为c=(c1,

,c
n
);S3.解密算法,输入密文c=(c1,

,c
n
),首先定义一个全“0”比特串s=(s1,

,s
n
)=(0,

,0)∈{0,1}
n
,对所有i∈[n],执行以下操作来解密c:将c
i
解析为两个子密文然后,利用dsk,使用方案E中的解密算法来解密得到R,若R=

表示解密失败,则令s
i
=0;否则,计算然后,利用dsk,使用方案E中的解密算法来解密得到m
i
||h
i
,若m
i
||h
i


或则令s
i
=0;否则,令s
i
=1;最后,使用公开的伪随机产生器选取s中的一个“1”比特所在位置t;使用本可否认公钥加密方法解密密文c得到的明文为m
t
;S4.伪造算法:输入原始消息m,加密消息m使用的内部随机数虚假消息执行以下操作来产生伪造的随机数:令s

=(s
′1,

,s

n
)=(s1,

,s
t
‑1,0,s
t+1


,s
n
),将s

中“1”比特和“0”比特所在的下标集合记为和若输出“伪造失败”并停机;否则,使用选取中的元素t

;接着,对所有i∈[n]:若令若令若i=t,随机采样
令最后,输出伪造的内部随机数为2.根据权利要求1所述的基于模容错学习抗侧信道攻击的可否认公钥加密方法,其特征在于,步骤S1具体包括:随机采样和两个多项式向量将秘密值s嵌入到模容错学习问题中,得到伪随机多项式向量t:=As+e;压缩t得到t的部分高位比特t:=Com
q
(t,d
t
);输出加密公钥dpk:=(A,t),解密私钥dsk:=s。3.根据权利要求2所述的基于模容错学习抗侧信道攻击的可否认公钥加密方法,其特征在于,步骤S2具体包括:输入消息和加密公钥dpk,按如下步骤执行:S21.解压缩t:=Decom
q
(t,d
t
),随机采样s=(s1,

,s
n
)

{0,1}
n
,若重新采样;S22.计算接着,对所有i∈[n],随机采样进一步判断,若i=t,令m
i
:=m,否则,随机采样S23.对所有i∈[n],继续执行以下分支步骤:若令计算计算为了加密将划分为其中对j∈[4],由此计算由此计算对于计算计算经过以上操作,加密得到的密文为最后,令S24.若计算计算令为了加密同样将划分为其中对j∈[4],由此计算由此计算对于计算计算最后,令4.根据权利要求3所述的基于模容错学习抗侧信道攻击的可否认公钥加密方法,其特
征在于,步骤S3具体包括:输入密文c=(c1,

,c
n
)和解密私钥dsk,按如下步骤执行:S31.令s=(s1,

,s
n
)
←0n
,对所有i∈[n],执行以下步骤:将c
i
解析为其中对所有j∈[2,6],计算以及然后,重新赋值令接着,计算以及最后计算最后计算若重新赋值s
i
=1;S32.计算输出解密结果为m
t
。5.根据权利要求4所述的基于模容错学习抗侧信道攻击的可否认公钥加密方法,其特征在于,步骤S4具体包括:输入原消息m,随机数虚假消息按如下步骤执行:S41.令s

=(s
′1,

,s

n
)=(s1,

,s
t
‑1,0,s
t+1


,s
n
),将s

中“1”和“0”比特所在的下标集合记为和若输出“伪造失败”并停机;否则,令对所有i∈[n],继续执行以下步骤;S42.若i≠t,令若i=t,令...

【专利技术属性】
技术研发人员:张方国安致远田海博
申请(专利权)人:中山大学
类型:发明
国别省市:

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

1