预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共16页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)国家知识产权局(12)发明专利申请(10)申请公布号CN114640439A(43)申请公布日2022.06.17(21)申请号202210375689.0(22)申请日2022.04.11(71)申请人中国科学院微电子研究所地址100029北京市朝阳区北土城西路3号中国科学院微电子研究所(72)发明人姜佳怡冯燕陈岚(74)专利代理机构北京集佳知识产权代理有限公司11227专利代理师马天琪(51)Int.Cl.H04L9/06(2006.01)H04L9/00(2022.01)权利要求书2页说明书10页附图3页(54)发明名称一种针对高级加密标准AES算法的掩码防护方法及装置(57)摘要本申请实施例提供了一种针对高级加密标准AES算法的掩码防护方法及装置,包括将携带第i轮掩码的数据与密钥数据进行异或处理,复用N个乘法模块进行求逆运算和仿射变换,进行行变换,若i=10,进行掩码补偿,而后进行去掩码处理,输出经过密钥数据处理的密文,若i<10,进行列混淆之后,进行掩码补偿,得到携带掩码的第j轮数据,继续执行将携带掩码的第j轮数据与密钥数据进行异或处理的步骤,j=i+1,2≤j≤10。也就是说,在进行求逆运算时复用乘法模块,优化AES算法中的求逆运算,相较于其他防护方法中乘法模块需要的资源,本申请中乘法模块所占用的资源开销大大减小,满足降低防护方法的使用资源,降低资源开销的需求。CN114640439ACN114640439A权利要求书1/2页1.一种针对高级加密标准AES算法的掩码防护方法,其特征在于,所述方法包括:将携带掩码的第i轮数据与密钥数据进行异或处理,得到第i轮的第一结果,1≤i≤10;复用N个乘法模块对所述第i轮的第一结果进行求逆运算和仿射变换,得到第i轮的第二结果,N为整数;对所述第i轮的第二结果进行行变换,得到第i轮的第三结果;若i=10,则对所述第i轮的第三结果进行掩码补偿,而后进行去掩码处理,输出经过所述密钥数据处理的密文;若i<10,则对所述第i轮的第三结果进行列混淆之后,得到第i轮的第四结果,对所述第i轮的第四结果进行掩码补偿,得到携带掩码的第j轮数据,继续执行将携带掩码的第j轮数据与密钥数据进行异或处理的步骤,j=i+1,2≤j≤10。2.根据权利要求1所述的方法,其特征在于,所述复用N个乘法模块对所述第i轮的第一结果进行求逆运算和仿射变换,得到第i轮的第二结果包括:复用N个乘法模块在有限域GF(24)对所述第一结果进行处理,得到第一子结果;在有限域GF(22)对所述第一子结果进行求逆运算,得到第二子结果;继续复用N个乘法模块在有限域GF(24)对所述第二子结果进行处理,得到第三子结果;对所述第三子结果进行仿射变换,得到所述第二结果。3.根据权利要求2所述的方法,其特征在于,所述N为6,所述N个乘法模块包括:第一乘法模块、第二乘法模块、第三乘法模块、第四乘法模块、第五乘法模块和第六乘法模块;所述复用N个乘法模块在有限域GF(24)对所述第一结果进行处理,得到第一子结果包括:利用所述第三乘法模块、所述第五乘法模块和所述第六乘法模块在有限域GF(24)对所述第一结果进行处理,得到第一子结果;所述继续复用N个乘法模块在有限域GF(24)对所述第二子结果进行处理,得到第三子结果包括:利用所述第一乘法模块、所述第二乘法模块和所述第三乘法模块或利用所述第一乘法模块、所述第四乘法模块和所述第五乘法模块在有限域GF(24)对所述第二子结果进行处理,得到第三子结果。4.根据权利要求1‑3任意一项所述的方法,其特征在于,所述对所述第i轮的第三结果进行掩码补偿包括:将所述第10轮的第三结果和第一补偿掩码进行异或处理;所述对所述第i轮的第四结果进行掩码补偿包括:将所述第i轮的第四结果和第二补偿掩码进行异或处理。5.根据权利要求4所述的方法,其特征在于,将所述第10轮的第三结果和第一补偿掩码进行异或处理,得到第五结果;所述去掩码处理包括:将所述第五结果与目标掩码进行异或处理。6.一种针对高级加密标准AES算法的掩码防护装置,其特征在于,所述装置包括:第一处理单元,用于将携带掩码的第i轮数据与密钥数据进行异或处理,得到第i轮的第一结果,1≤i≤10;2CN114640439A权利要求书2/2页第二处理单元,用于复用N个乘法模块对所述第i轮的第一结果进行求逆运算和仿射变换,得到第i轮的第二结果,N为整数;第三处理单元,用于对所述第i轮的第二结果进行行变换,得到第i轮的第三结果;第四处理单元,用于若i=10,则对所述第i轮的第三结果进行掩码补偿,而后进行去掩码处理,输出经过所述密钥数据处理的密文;第五处理单元,用于若i<10,则对所述第i轮的第三结果进行列混淆之后,得到第i轮的第四结果,对所述第i轮的第四结果进行掩码补偿,得到携