一种AES&SM4可重构掩码S盒硬件电路制造技术

技术编号:30967821 阅读:28 留言:0更新日期:2021-11-25 20:41
本发明专利技术公开了一种AES&SM4可重构掩码S盒硬件电路,包括掩码预处理单元、前仿射和掩码修正单元、带掩码乘法逆单元以及后仿射和掩码修正单元;本方案实现了AES和SM4的S盒在标准基下基于复合域GF((((2)2)2)2)的可重构设计;S盒采用掩码技术,采取了掩码预处理、分段修正掩码技术,保证输出不改变掩码值的情况下具备侧信道防御能力。本方案的可重构S盒具备小面积、低延时、抗攻击的优点。抗攻击的优点。抗攻击的优点。

【技术实现步骤摘要】
一种AES&SM4可重构掩码S盒硬件电路


[0001]本专利技术涉及信息安全
,特别涉及一种AES&SM4可重构掩码S盒硬件电路。

技术介绍

[0002]目前,我国高度重视信息安全领域,尤其在近年来加大硬件安全方面的投入。为了解决我国商业密码问题,国家密码局认定SM4算法为我国对称分组加密商用密码算法,对标国际上的分组对称密码算法——AES。
[0003]但在某些领域,需要同时兼容多种算法以及标准,比如既需要满足国际标准又需要满足国家密码局标准,这就需要同时实现AES和SM4算法,但单独实现两种算法,将会造成硬件面积、资源开销过大,性能低下。AES和SM4都属于分组对称密码算法,有其相同之处,比如S盒都是基于有限域GF(2^8),这就为两者S盒的可重构提供了理论依据。
[0004]而对于硬件加密算法,侧信道分析逐渐成为威胁安全芯片安全性的主要攻击手段,而S盒作为对称密钥算法流程中的唯一非线性部分,成为了对称密码算法中侧信道攻击的重点对象,因此实现S盒的侧信道防护十分必要。但是侧信道防护会陡然增加硬件电路资源、面积开销,因此需要从设计上减少硬件的开销。

技术实现思路

[0005]本专利技术的目的是提供一种基于掩码技术可抗侧信道攻击的AES&SM4可重构掩码S盒硬件电路,用以克服上述现有技术中存在的问题。
[0006]为了实现上述任务,本专利技术采用以下技术方案:
[0007]一种AES&SM4可重构掩码S盒硬件电路,包括掩码预处理单元、前仿射和掩码修正单元、带掩码乘法逆单元以及后仿射和掩码修正单元,其中:
[0008]掩码预处理单元包括一个选择器MUX和两个异或门,其中选择器MUX的输入端输入8比特掩码M,然后对M进行判断:如果M为0则输出M

=M+1,否则保持;得到选择器输出的修正掩码M

后,再分别经过所述两个异或门与掩码M、S盒的输入进行异,输出为
[0009]前仿射和掩码修正单元包括两个选择器MUX、两个前仿射电路和两个独立异或门;其中第一个选择器根据加密模式,对掩码预处理单元的输出去执行对应的前仿射电路,得到需要的8比特输出;第二个选择器同样根据加密模式,对掩码预处理单元的修正掩码M

输出对应的掩码修正8比特数据,再将该结果跟修正掩码M

进行第一次异或,然后跟第一个选择器中的8比特输出进行异或,输出为其中X
A
表示经过仿射后的8比特输出;
[0010]带掩码乘法逆单元包括三个GF(28)有限域乘法电路一个GF(28)有限域乘法逆电路和三个异或门;其中前仿射和掩码修正单元的输出先跟掩码预处理单元修正后的掩码M

进行一次GF(28)有限域乘法得到同时两个修正后的掩码M

也进
行一次GF(28)有限域乘法得到M
’2,再将这个有限域乘法的输出结果进行异或操作得到然后将异或后的结果进行一次GF(28)有限域乘法逆得到再将有限域乘法逆的输出结果有限域乘法逆的输出结果跟8比特的1进行异或操作得到最后将异或后的结果异或后的结果跟修正掩码M

再进行一次GF(28)有限域乘法,输出为
[0011]后仿射和掩码修正单元包括两个选择器MUX、两个后仿射电路和两个独立异或门;其中第一个选择器根据加密模式,对带掩码乘法逆单元的输出去执行对应的后仿射电路,得到需要的8比特输出;第二个选择器同样根据加密模式,对修正掩码M

输出对应的掩码修正8比特数据,然后与S盒的8比特掩码M进行异或操作,异或操作后的结果再跟第一个选择器的8比特输出进行异或,得到最终的输出。
[0012]进一步地,所述前仿射和掩码修正单元中:
[0013]AES加密时:
[0014][0015]AES解密时:
[0016][0017]SM4加解密时:
[0018][0019]其中,A2为AES的前仿射矩阵;B2为AES的仿射常量;C1为SM4的前仿射矩阵,D1为SM4的仿射常量。
[0020]进一步地,所述后仿射和掩码修正单元中:
[0021]AES加密时:
[0022][0023]AES解密时:
[0024][0025]SM4加解密时:
[0026][0027]其中,A1为AES的后仿射矩阵;B1为AES的仿射常量;C2为SM4的后仿射矩阵,D2为SM4的仿射常量,S(X)为经过S盒后的输出。
[0028]与现有技术相比,本专利技术具有以下技术特点:
[0029]1.兼顾AES加密、AES解密和SM4加解密共计三种S盒的电路结构,实现了AES和SM4的S盒可重构设计。
[0030]2.S盒采用掩码技术,并且掩码在输入端增加掩码预处理,保证了掩码不等于0,实现了对S盒输入、中间值和输出的保护,使其具备侧信道防御能力。
[0031]3.在经过S盒的过程中采取了分段修正掩码:前仿射修正、乘法掩码修正和后仿射修正,保证了S盒的最终输出不改变掩码的值。
[0032]4.采取掩码技术,对比伪操作等侧信道防御技术,有效降低了面积等硬件资源开销。
[0033]5.S盒中的乘法逆结构,采用标准基下的复合域S盒的电路结构,具有低延时、小面积、有一定抗攻击能力的优点。
附图说明
[0034]图1为本专利技术的电路结构图;
[0035]图中符号说明:M:S盒的8比特掩码;M

:M预处理的8比特输出;MUX:选择器;A1和A2:AES的后仿射矩阵和前仿射矩阵;B1和B2:AES的仿射常量;C1和C2:SM4的前仿射矩阵和后仿射矩阵;D1和D2:SM4的仿射常量;异或操作;GF(28)有限域乘法电路;Inversion in GF(28):GF(28)有限域除法/乘法逆;X
A
:输入经过仿射后的8比特输出;S(X):经过S盒后的输出。
具体实施方式
[0036]参见图1,本专利技术提供的一种AES&SM4可重构掩码S盒硬件电路,包括掩码预处理单元、前仿射和掩码修正单元、带掩码乘法逆单元、后仿射和掩码修正单元,其中:
[0037]1.掩码预处理单元
[0038]掩码预处理单元包括一个选择器MUX和两个异或门,其中选择器MUX的输入端输入S盒的8比特掩码M,然后对M进行判断:如果M为0则输出M

=M+1,否则保持;得到选择器输出的修正掩码M

后,再分别经过所述两个异或门与掩码M、S盒的输入进行异,输出为
[0039]掩码预处理单元的工作原理是:由于如果输入的掩码M为0,将起不到掩码的保护作用。对该问题,本专利技术S盒在输入端增加了掩码预处理;通过选择器判断掩码M是否为0,如果M为0,则令M

=M+1;如果M≠0,则令M

本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种AES&SM4可重构掩码S盒硬件电路,其特征在于,包括掩码预处理单元、前仿射和掩码修正单元、带掩码乘法逆单元以及后仿射和掩码修正单元,其中:掩码预处理单元包括一个选择器MUX和两个异或门,其中选择器MUX的输入端输入8比特掩码M,然后对M进行判断:如果M为0则输出M

=M+1,否则保持;得到选择器输出的修正掩码M

后,再分别经过所述两个异或门与掩码M、S盒的输入X

M进行异,输出为X

M

;前仿射和掩码修正单元包括两个选择器MUX、两个前仿射电路和两个独立异或门;其中第一个选择器根据加密模式,对掩码预处理单元的输出X

M

去执行对应的前仿射电路,得到需要的8比特输出;第二个选择器同样根据加密模式,对掩码预处理单元的修正掩码M

输出对应的掩码修正8比特数据,再将该结果跟修正掩码M

进行第一次异或,然后跟第一个选择器中的8比特输出进行异或,输出为X
A

M

;其中X
A
表示经过仿射后的8比特输出;带掩码乘法逆单元包括三个GF(28)有限域乘法电路一个GF(28)有限域乘法逆电路和三个异或门;其中前仿射和掩码修正单元的输出X
A

M

先跟掩码预处理单元修正后的掩码M

进行一次GF(28)有限域乘法得到同时两个修正后的掩码M

也进行一次GF(28)有限域乘法得到M
’2,再将这个有限域乘法的输出结果进行异或操作得到然后将异或后的结果进行一次GF(28)有限域乘法逆得到再将有限域乘法逆的输出结果的输出结果跟8比特的1进行异或操作得到最后将异或后的结果最后将异或后的结果跟修正掩码M

再进行一次GF(28)有限域乘法,输出为后仿射和掩码修正单元包括两个选择器MUX、两个后仿...

【专利技术属性】
技术研发人员:高倾健蒲金伟章涵宇詹瑞典熊晓明蔡述庭徐迎晖
申请(专利权)人:广东工业大学
类型:发明
国别省市:

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

1