CN109617667B - 一种针对aes算法线性部分的高效掩码防护方法 - Google Patents

一种针对aes算法线性部分的高效掩码防护方法 Download PDF

Info

Publication number
CN109617667B
CN109617667B CN201811300731.2A CN201811300731A CN109617667B CN 109617667 B CN109617667 B CN 109617667B CN 201811300731 A CN201811300731 A CN 201811300731A CN 109617667 B CN109617667 B CN 109617667B
Authority
CN
China
Prior art keywords
matrix
mask
aes
column
algorithm
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811300731.2A
Other languages
English (en)
Other versions
CN109617667A (zh
Inventor
周永彬
明经典
张倩
李慧中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Information Engineering of CAS
Original Assignee
Institute of Information Engineering of CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Information Engineering of CAS filed Critical Institute of Information Engineering of CAS
Publication of CN109617667A publication Critical patent/CN109617667A/zh
Application granted granted Critical
Publication of CN109617667B publication Critical patent/CN109617667B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Respiratory Apparatuses And Protective Means (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种针对AES算法线性部分的高效掩码防护方法。本方法为:1)生成掩码矩阵M′、M;然后利用M对待保护的中间值矩阵Q进行保护,即Q⊕M;2)对Q⊕M进行非线性运算,结果记为S;利用M’对S进行保护,即S⊕M′;3)对S⊕M′进行行移位变换,得到矩阵S';4)利用S'对AES加密算法进行列混淆运算,得到矩阵T;5)更新M,进行正常的轮密钥加,更新前后的掩码矩阵M均为斜线上的掩码相同;6)重复步骤2)~5)多轮;当执行到最后一轮的线性运算时,只进行行移位变换和正常的轮密钥加,然后将变换后的S'与M’异或后作为AES的运算结果输出。

Description

一种针对AES算法线性部分的高效掩码防护方法
技术领域
本发明提出了一种针对AES算法线性部分的快速掩码防护方法,该方法可对AES算法线性运算部分提供抗一阶侧信道攻击能力。软硬件设计人员可利用该方法与已有的针对非线性运算的掩码方案相结合,高效安全地实现完整AES算法,抵抗一阶侧信道攻击,保证敏感数据的安全。属于信息安全技术领域,主要用于保证加密硬件的侧信道安全。
背景技术
加密模块是保密通信、认证、电子签名等系统中必不可少的部分。随着侧信道攻击手段的愈发先进,硬件加密设备受到日益严重的侧信道攻击威胁,绝大多数密码算法的直接实现都可被侧信道攻击轻易破解,因此,保证加密模块的侧信道安全至关重要。与此同时,随着物联网应用的飞速发展,对加密模块快速高效运行的应用需求愈发强烈,因此,保证加密模块的快速运算具有十分重要的意义。综上,设计安全且快速高效的加密模块成为亟待解决的问题。
为保证算法实现的侧信道安全性,需要在实现过程中加入抗侧信道技术。在对称密码算法的众多侧信道攻击防御对策中,掩码方案由于具有理论上的可证明安全性和设备独立性,是目前研究最广泛的防御对策。掩码方案通过在运算中引入随机数,令泄漏信息与计算过程中的敏感中间值的相关性随机化,从而保护秘密信息。现有主流的掩码防护方案有ISW(Ishai-Sahai-Wagner)方案、RSM(Rotating S-boxes Masking)方案等。
然而,掩码方案通过引入随机数将每一个实现过程中的中间值x拆分为d+1个共享因子以抵抗d阶侧信道攻击,这样拆分带来实现代价的大幅提高,因此面临着难以实用化的难题。研究掩码技术的高效实现对于解决掩码实用化问题具有重要意义。然而,现有发明多关注于掩码方案的非线性运算部件(如S盒)的快速高效实现,对于掩码方案的线性运算部分(包括行移位变换ShiftRows、列混淆变换Mixcolumn)的安全性和效率研究尚未得到关注。
理想情况下,掩码方案实现的受保护AES算法代价应当尽可能地接近无保护AES算法。目前,在无保护的AES实现方面,线性部分运算效率几乎达到瓶颈。已有的关于无防护AES算法线性部分的快速实现的研究,集中在列混淆部分。列混淆变换可以写作两个矩阵的乘积形式,由一个确定的4×4矩阵与16个8-bit状态寄存器数据相乘,此处的矩阵运算是定义在GF(28)上的,可用如下公式表达。下列公式矩阵中的每个元素大小均为1字节8-bit,每个矩阵4×4个数据共计128bit,下文表示同上。
Figure GDA0002532880320000021
列混淆变换目前较好的优化方式是文献(参考Nikita Veshchikov,SylvainGuilley.Implementation flaws in the masking scheme of DPA Contest v4.IETInformation Security11(6):356-362(2017)),具体地,将每列运算的公共部分单独提出,以减少重复的运算过程。优化后列混淆变换的每一列运算过程如下(0≤i≤3):
Figure GDA0002532880320000022
Figure GDA0002532880320000023
Figure GDA0002532880320000024
Figure GDA0002532880320000025
Figure GDA0002532880320000026
此公式中的乘法和加法都是定义在GF(28)上的。
但是,目前已有的一阶掩码方案均需要至少两个共享因子,每一轮需要将这两个共享因子分别进行线性运算,导致线性运算的代价相比于无保护AES的线性部分运算代价成倍提高。
本发明提出了针对AES算法线性部分的高效掩码防护方法,同时给出了快速线性掩码防护方法与RSM防护方案相结合的完整AES高效一阶掩码防护方案。
发明内容
现有AES掩码方案的优化设计关注非线性部分,对掩码方案线性部分的安全性和实现效率未特别关注。文献“Nikita Veshchikov,Sylvain Guilley.Implementationflaws in the masking scheme of DPA Contest v4.IET Information Security 11(6):356-362(2017)”的防护方案线性部分效率仍有待提高,文献“Kai Schramm,ChristofPaar.Higher Order Masking of the AES.CT-RSA 2006:208-225”的防护方案更是在线性部分存在安全隐患。本发明提供一种针对AES线性部分的安全、高效一阶掩码防护方案,此方案可以应用在AES多种一阶掩码方案的线性部分,在不降低方案整体安全性的情况下,减少随机数的使用个数提高运行效率。
本发明的技术方案为:
一种针对AES算法线性部分的高效掩码防护方法,其中每一轮其步骤为:
1)生成4个随机8bit掩码m′0,m′1,m′2,m′3,并用这4个掩码循环排列组成4×4的掩码矩阵M′;以及生成4个随机8bit掩码m0,m1,m2,m3,并用这4个掩码循环排列组成4×4的掩码矩阵M;然后利用掩码矩阵M对一阶掩码方案中待保护的中间值矩阵Q进行保护,即生成新的中间值矩阵
Figure GDA0002532880320000031
2)对该中间值矩阵
Figure GDA0002532880320000032
进行非线性运算,输出结果记为S,并利用掩码矩阵M’对S进行保护,生成受掩码保护的矩阵
Figure GDA0002532880320000033
3)对
Figure GDA0002532880320000034
进行行移位变换,得到变换后的矩阵S′;
4)利用该矩阵S′对AES加密算法进行列混淆运算,得到矩阵T;其中,列混淆运算过程中引入一随机数r对该矩阵T中每一元素进行保护;
5)在对AES加密算法进行列混淆运算后,对掩码矩阵M进行更新,更新后的掩码矩阵M斜线上的掩码与更新前的掩码矩阵M斜线上的掩码相同,在掩码刷新之后,正常执行轮密钥加过程(此过程与其它的一阶掩码轮密钥加模块相同);
6)重复步骤2)~5)多轮;当执行到最后一轮的线性运算时,只进行步骤3)的行移位变换,然后将变换后的S′与掩码矩阵M’异或后作为AES的运算结果输出。
进一步的,更新掩码矩阵M的方法为:先将矩阵T异或新的掩码矩阵N,再去异或更新前的掩码矩阵M;其中,生成4个8bit随机数n0,n1,n2,n3并用这4个掩码循环排列组成4×4的掩码矩阵N。
进一步的,得到矩阵T的方法为:
Figure GDA0002532880320000035
Figure GDA0002532880320000036
Figure GDA0002532880320000037
Figure GDA0002532880320000038
Figure GDA0002532880320000039
其中,t4*i+j为矩阵T内第4*i+j个元素,位于矩阵T的第i行第j列;s′4*i+j为矩阵S′内第4*i+j个元素,位于矩阵S′的第i行第j列。
进一步的,r为8bit随机数。
进一步的,对列混淆运算后的AES算法进行解密时,对该AES算法解密的列混淆方法为:
Figure GDA00025328803200000310
Figure GDA00025328803200000311
Figure GDA0002532880320000041
Figure GDA0002532880320000042
Figure GDA0002532880320000043
其中,矩阵T内的每个元素t4*i+j受掩码m‘i保护。
进一步的,所述掩码矩阵
Figure GDA0002532880320000044
进一步的,所述掩码矩阵
Figure GDA0002532880320000045
方法描述:对AES的线性掩码防护方法
1.掩码生成;
一阶掩码方案中,所有敏感中间值被拆分成两个共享因子,敌手只有获取一个共享因子的能力,因此无法恢复中间值。具体地,生成4个随机8-bit掩码m0,m1,m2,m3,并用这4个掩码循环排列组成4×4的掩码矩阵M。然后利用掩码矩阵M对中间值矩阵Q(Q表示原16字节中间值)进行保护,生成新的中间值矩阵
Figure GDA0002532880320000046
此过程可用如下公式表达:
Figure GDA0002532880320000047
生成4个随机8-bit掩码m′0,m′1,m′2,m′3,并用这4个掩码循环排列组成4×4的掩码矩阵M′;然后将中间值矩阵
Figure GDA0002532880320000048
输入S盒进行运算(即进行非线性运算),输出结果记为S,从而得到两个共享因子share:掩码矩阵M’和受掩码保护的矩阵
Figure GDA0002532880320000049
本方案的非线性运算需保持新的掩码矩阵M′在矩阵的对角线上掩码相同这一特性。S盒输出结果为:
Figure GDA00025328803200000410
之后的线性操作,仅处理
Figure GDA00025328803200000411
一个共享因子即可,因此运算效率得到提升。
2.受保护的行移位模块设计;
线性运算首先是行移位运算,目的是将矩阵的第i行循环左移i-1个字节。具体如下:
Figure GDA0002532880320000051
因此,原有线性运算部分需要将两个共享因子M′和
Figure GDA0002532880320000052
均进行行移位。而在我们提出的掩码方案中,只需要对
Figure GDA0002532880320000053
进行行移位变换即可,令变换后的矩阵为S′,其结果可表示如下:
Figure GDA0002532880320000054
将输出结果S′输入到受保护的列混淆模块中。
3.受保护的列混淆模块设计;
基于原列混淆算法,我们提出了优化的受保护列混淆模块设计方案。和上文背景技术部分对列混淆算法描述方式类似,此处引入随机数r对受保护的列混淆模块输出的每个值t4*i+j计算过程中的值进行保护,将上一步的S′作为输入,得出t4*i+j,i、j取值为0~3,仅给出每一列的列混淆运算过程,第i列的列混淆算法如下(0≤i≤3):
Figure GDA0002532880320000055
Figure GDA0002532880320000056
Figure GDA0002532880320000057
Figure GDA0002532880320000058
Figure GDA0002532880320000059
其中,s′为行移位部分的输出结果,r为新生成的8-bit随机数,tmp仅存储计算过程值,矩阵T表示输出结果。在各数据互相异或后,相同的掩码会被相互抵消。而新生成的随机数r可对这些中间值提供保护,确保列混淆运算的安全性。而在每个ti计算过程中,计算到
Figure GDA00025328803200000510
后,随机数r带来的影响已被抵消掉,计算可知矩阵T内的每个元素,如第4*i+j个元素t4*i+j仍受掩码m′i保护。
AES解密算法的优化方案设计与加密类似,区别在于AES解密的列混淆部分,与之相乘的矩阵不同。优化的解密部分列混淆算法如下:
Figure GDA00025328803200000511
Figure GDA0002532880320000061
Figure GDA0002532880320000062
Figure GDA0002532880320000063
Figure GDA0002532880320000064
4.掩码刷新模块设计;
列混淆结束后,对下一轮输入数据提供保护的掩码必须仍具有M的特性,即斜线上的掩码相同,才能让下一轮能够同样正确地执行此线性算法,才能令AES算法得到正确的输出结果。因此,需要执行掩码刷新操作,将原有的掩码替换为新的掩码。新生成的掩码用N表示,其内部元素同样按照M中的排列方式构造,即只需新生成4个8-bit随机数n0,n1,n2,n3
Figure GDA0002532880320000065
在掩码刷新时,必须先将T异或新的掩码N,再去异或原掩码。否则原掩码mi会被抵消掉,使得计算中间值未受到保护。由于矩阵T中每一列原掩码相同,因此同样每列单独执行刷新过程,第i列的刷新操作如下:
Figure GDA0002532880320000066
Figure GDA0002532880320000067
Figure GDA0002532880320000068
Figure GDA0002532880320000069
AES其他模块(S盒操作和轮密钥加操作)与其他一阶掩码方案相同即可。
按照上述步骤进行AES的多轮(AES128为10轮、AES192为12轮、AES256为14轮)运算,直到最后一轮。最后一轮的线性运算,只需要进行行移位变换即可,没有列混淆操作。因此,最后一轮只需要将引入的掩码消去,不需要引入新的掩码,然后将变换后的S′与掩码矩阵M’异或后作为AES的运算结果输出,即可得到正确的输出值。
与现有技术相比,本发明的积极效果为:
首先创新性地提出了一种AES算法的快速线性掩码防护方法,该方法给出了掩码方案线性部分的快速高效运算方案,在使用较少随机数和运算代价的同时依然具有一阶侧信道分析防御能力;其次,本发明给出了快速线性掩码防护方法与RSM防护方案相结合的完整AES高效一阶侧信道安全实现方案,该方案可以抵抗一阶侧信道攻击,保证敏感数据的安全,较原始RSM方案的线性部分实现效率提升20%。
附图说明
图1为原始的Mixcolumn计算图;
图2为改进后AES快速线性掩码防护方法。
具体实施方式
下面基于本发明的具体方案,结合图2,对AES的线性掩码防护方法进行软硬件实现的具体描述。此处用share1和share2表示一阶掩码方案的两个共享因子,用Q表示每轮S盒输入前的中间值。
一、输入初始掩码M后,两个共享因子share1和share2为:
Figure GDA0002532880320000071
Figure GDA0002532880320000072
二、经过非线性变换部分(S盒)后:
这里的非线性部分的掩码方案选取的时文献“Shivam Bhasin,Nicolas Bruneau,Jean-Luc Danger,Sylvain Guilley,Zakaria Najm.Analysis and Improvements of theDPA Contest v4Implementation.SPACE 2014:201-218”中提出的改进版RSM方案,输出的掩码改变,但是仍保持斜向的掩码相同这一特性,用M′表示经过S盒后的掩码,输出的结果为:
Figure GDA0002532880320000073
Figure GDA0002532880320000074
三、经过行移位变换后
Figure GDA0002532880320000075
作为行移位的输入,经过行移位变换之后,输出矩阵S′,即为共享因子share1;用M1表示经过行移位变换后的掩码矩阵,作为共享因子share2。两个共享因子变为如下公式:
Figure GDA0002532880320000081
Figure GDA0002532880320000082
四、经过受保护的列混淆变换之后
将第三步中的S′作为列混淆变换的输入,输出t4*i+j,计算方法是发明内容中相应的公式,经过受保护的列混淆变换后,掩码M1保持不变。两个共享因子变为如下公式:
Figure GDA0002532880320000083
Figure GDA0002532880320000084
share1中的每个元素t4*i+j都受到M1中相应位置元素的保护。
五、在掩码刷新中
对share1和share2同时异或新生成的掩码N和原掩码M1,完成对掩码的刷新操作,即:
Figure GDA0002532880320000085
Figure GDA0002532880320000086
计算得出
Figure GDA0002532880320000087
Figure GDA0002532880320000088
在掩码刷新之后,正常执行轮密钥加过程(此过程与其它的一阶掩码轮密钥加模块相同)。
之后每轮从步骤二开始循环,进行AES的多轮运算,直到最后一轮。最后一轮的线性运算,只需要进行行移位变换即可。在之后,只需要将引入的掩码消去,不需要引入新的掩码,然后将变换后的S′与掩码矩阵M’异或后作为AES的运算结果输出,即可得到正确的输出值。

Claims (7)

1.一种针对AES算法线性部分的高效掩码防护方法,其特征在于,每一轮的步骤为:
1)生成4个随机8bit掩码m′0,m′1,m′2,m′3,并用这4个掩码循环排列组成4×4的掩码矩阵M′;以及生成4个随机8bit掩码m0,m1,m2,m3,并用这4个掩码循环排列组成4×4的掩码矩阵M;然后利用掩码矩阵M对一阶掩码方案中待保护的中间值矩阵Q进行保护,即生成新的中间值矩阵
Figure FDA0002550360270000011
2)对该中间值矩阵
Figure FDA0002550360270000012
进行非线性运算,输出结果记为S,并利用掩码矩阵M’对S进行保护,生成受掩码保护的矩阵
Figure FDA0002550360270000013
3)对
Figure FDA0002550360270000014
进行行移位变换,得到变换后的矩阵S';
4)利用该矩阵S'对AES加密算法进行列混淆运算,得到矩阵T;其中,列混淆运算过程中引入一随机数r对该矩阵T中每一元素进行保护;
5)在对AES加密算法进行列混淆运算后,对掩码矩阵M进行更新,更新后的掩码矩阵M斜线上的掩码与更新前的掩码矩阵M斜线上的掩码相同,在掩码刷新之后,正常执行轮密钥加过程;
6)重复步骤2)~5)多轮;当执行到最后一轮的线性运算时,只进行步骤3)的行移位变换和轮密钥加操作,然后将变换后的S'与掩码矩阵M’异或后作为AES的运算结果输出。
2.如权利要求1所述的方法,其特征在于,更新掩码矩阵M的方法为:先将矩阵T异或新的掩码矩阵N,再去异或更新前的掩码矩阵M;其中,生成4个8bit随机掩码n0,n1,n2,n3并用这4个掩码循环排列组成4×4的掩码矩阵N。
3.如权利要求1所述的方法,其特征在于,得到矩阵T的方法为:
Figure FDA0002550360270000015
Figure FDA0002550360270000016
Figure FDA0002550360270000017
Figure FDA0002550360270000018
Figure FDA0002550360270000019
其中,t4*i+j为矩阵T内第4*i+j个元素,位于矩阵T的第i行第j列;s′4*i+j为矩阵S′内第4*i+j个元素,位于矩阵S′的第i行第j列。
4.如权利要求1或3所述的方法,其特征在于,r为8bit随机数。
5.如权利要求3所述的方法,其特征在于,对列混淆运算后的AES算法进行解密时,对该AES算法解密的列混淆方法为:
Figure FDA0002550360270000021
Figure FDA0002550360270000022
Figure FDA0002550360270000023
Figure FDA0002550360270000024
Figure FDA0002550360270000025
其中,矩阵T内的每个元素t4*i+j受掩码m‘i保护。
6.如权利要求1所述的方法,其特征在于,所述掩码矩阵
Figure FDA0002550360270000026
7.如权利要求1所述的方法,其特征在于,所述掩码矩阵
Figure FDA0002550360270000027
CN201811300731.2A 2018-09-17 2018-11-02 一种针对aes算法线性部分的高效掩码防护方法 Active CN109617667B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN2018110808982 2018-09-17
CN201811080898 2018-09-17

Publications (2)

Publication Number Publication Date
CN109617667A CN109617667A (zh) 2019-04-12
CN109617667B true CN109617667B (zh) 2020-09-29

Family

ID=66001818

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811300731.2A Active CN109617667B (zh) 2018-09-17 2018-11-02 一种针对aes算法线性部分的高效掩码防护方法

Country Status (1)

Country Link
CN (1) CN109617667B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110071794B (zh) * 2019-04-28 2022-06-07 苏州国芯科技股份有限公司 一种基于aes算法的信息加密方法、系统及相关组件
CN111385290A (zh) * 2020-03-02 2020-07-07 杭州电子科技大学 一种基于fpga的抗dpa攻击的aes加密方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106059746A (zh) * 2016-07-22 2016-10-26 武汉大学 一种抗任意阶侧信道攻击的掩码防护方法及系统
CN107070630A (zh) * 2017-01-17 2017-08-18 中国科学院信息工程研究所 一种aes算法的快速安全硬件结构
CN107872317A (zh) * 2016-09-28 2018-04-03 北京同方微电子有限公司 一种用于aes密钥扩展的随机掩码方法及其装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2967322B1 (fr) * 2010-11-08 2012-12-28 Morpho Protection contre les ecoutes passives
US9281941B2 (en) * 2012-02-17 2016-03-08 International Business Machines Corporation Homomorphic evaluation including key switching, modulus switching, and dynamic noise management
US9143325B2 (en) * 2012-12-14 2015-09-22 Microsoft Technology Licensing, Llc Masking with shared random bits
US9485088B2 (en) * 2014-10-31 2016-11-01 Combined Conditional Access Development And Support, Llc Systems and methods for dynamic data masking

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106059746A (zh) * 2016-07-22 2016-10-26 武汉大学 一种抗任意阶侧信道攻击的掩码防护方法及系统
CN107872317A (zh) * 2016-09-28 2018-04-03 北京同方微电子有限公司 一种用于aes密钥扩展的随机掩码方法及其装置
CN107070630A (zh) * 2017-01-17 2017-08-18 中国科学院信息工程研究所 一种aes算法的快速安全硬件结构

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
《Combined Fault and Side-Channel Attacks on the AES Key Schedule》;Alexandre Venelli;《2012 Workshop on Fault Diagnosis and Tolerance in Cryptography》;20120909;全文 *
《同阶掩码防护的设计实现安全性研究》;李延斌;《计算机学报》;20170519;全文 *

Also Published As

Publication number Publication date
CN109617667A (zh) 2019-04-12

Similar Documents

Publication Publication Date Title
US9954676B2 (en) Protecting a white-box implementation against attacks
US10097342B2 (en) Encoding values by pseudo-random mask
US8971526B2 (en) Method of counter-measuring against side-channel attacks
EP2924677B1 (en) Splitting s-boxes in a white-box implementation to resist attacks
US20120170739A1 (en) Method of diversification of a round function of an encryption algorithm
US9455833B2 (en) Behavioral fingerprint in a white-box implementation
US8504845B2 (en) Protecting states of a cryptographic process using group automorphisms
AU2011292312B2 (en) Apparatus and method for block cipher process for insecure environments
US8605894B2 (en) Cryptographic process execution protecting an input value against attacks
EP3169017B1 (en) Split-and-merge approach to protect against dfa attacks
US9485226B2 (en) Method for including an implicit integrity or authenticity check into a white-box implementation
US8675866B2 (en) Multiplicative splits to protect cipher keys
US9363244B2 (en) Realizing authorization via incorrect functional behavior of a white-box implementation
CN111555862A (zh) 基于掩码保护的随机冗余轮函数的白盒aes实现方法
US9641337B2 (en) Interface compatible approach for gluing white-box implementation to surrounding program
CN109617667B (zh) 一种针对aes算法线性部分的高效掩码防护方法
EP2940917B1 (en) Behavioral fingerprint in a white-box implementation
EP3413509B1 (en) Cmac computation using white-box implementations with external encodings
KR102327771B1 (ko) 테이블 기반 구현에서의 차수 2 이상의 dca 공격에 대응하는 방법
CN116192364A (zh) 抗侧信道的aes白盒加密方法及相关设备
US10341089B2 (en) High-speed AES with transformed keys
EP2940677A1 (en) Method for including an implicit integrity or authenticity check into a white-box implementation
EP2940919B1 (en) Realizing authorization via incorrect functional behavior of a white-box implementation
EP2940918B1 (en) Interface compatible approach for gluing white-box implementation to surrounding program
CN114640439A (zh) 一种针对高级加密标准aes算法的掩码防护方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant