CN102904716A - 一种抗侧信道攻击的对策方法 - Google Patents

一种抗侧信道攻击的对策方法 Download PDF

Info

Publication number
CN102904716A
CN102904716A CN2012103240718A CN201210324071A CN102904716A CN 102904716 A CN102904716 A CN 102904716A CN 2012103240718 A CN2012103240718 A CN 2012103240718A CN 201210324071 A CN201210324071 A CN 201210324071A CN 102904716 A CN102904716 A CN 102904716A
Authority
CN
China
Prior art keywords
function
adr
circleplus
variable
mip
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.)
Pending
Application number
CN2012103240718A
Other languages
English (en)
Inventor
J-S·科龙
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.)
Crocus Technology SA
Original Assignee
Crocus Technology SA
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 Crocus Technology SA filed Critical Crocus Technology SA
Publication of CN102904716A publication Critical patent/CN102904716A/zh
Pending legal-status Critical Current

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/002Countermeasures against attacks on cryptographic mechanisms
    • H04L9/003Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
    • 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
    • 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
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/04Masking or blinding
    • H04L2209/046Masking or blinding of operations, operands or results of the operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/08Randomization, e.g. dummy operations or using noise

Abstract

本发明涉及一种抗侧信道攻击的对策方法。根据本发明,提供了一种抗侧信道攻击的对策方法,该方法包括执行分组密码算法来屏蔽中间变量,其中分组密码算法包括一个或多个非线性函数,其特征在于使用适当匹配函数来实施至少一个非线性函数。

Description

一种抗侧信道攻击的对策方法
技术领域
本发明涉及一种用于分组密码的抗侧信道攻击的对策方法,尤其,但不排他地,涉及一种使用适当匹配(match-in-place)函数的对策方法。
背景技术
现今使用的许多现有加密算法,比如最广泛使用的‘高级加密标准(AES)’的加密算法易受差分功率分析(DPA)的攻击。DPA是侧信道攻击,其主要在于,首先测量当执行密码算法时微处理器的功率消耗然后执行统计分析以便恢复在用于加密的密码算法中使用的秘密密钥。一旦秘密密钥已经确定,就可能解密经加密的信息。
微处理器的电磁放射也可以被测量并利用以确定在用于加密的密码算法中使用的秘密密钥。
为保护抗DPA的秘密密钥算法的常见技术包括利用随机掩码(mask)来屏蔽(mask)每一个中间变量。然后,屏蔽的数据和随机掩码可以被独立地处理并且最终在算法结束时重新结合。试图分析微处理器在单个点处功率消耗的攻击者会获得随机值(随机数据值和随机掩码值);因此,这种屏蔽对于抵抗一阶DPA将是安全的。
屏蔽对策由用于保护给定的敏感变量的随机掩码的数量进行表征;具有d个随机掩码的屏蔽称作d阶屏蔽。d阶屏蔽只能通过(d+1)阶侧信道分析进行破解,即,需要同时处理d+1个变量的攻击。破解一种对策所需要的执行数量随着阶数d而指数地增长。因此,阶数d是良好的安全准则。然而,实际上最有效的对策是仅阶数d=1。
已示出了二阶DPA攻击来对屏蔽的数据进行解密是可能的。因此,为了获得对数据的完全安全的加密,需要更好的对策。
对策中的进一步的发展已经实现;最新的抗信道攻击的对策中的一个是具有阶数d=2的对策。
对于任何屏蔽对策来说,最主要的困难是保护算法的非线性部分;对于高级加密标准(AES)来说,算法的非线性部分实质上是SBOX函数。使用的技术包括针对每个SBOX查找在整个SBOX函数上进行迭代,利用被实施为子例程的比较算法。为每个SBOX输入调用该比较算法,可以示出该对策可以抵抗任何二阶侧信道攻击。
然而因为在执行期间需要许多操作并且在执行期间也使用许多微处理器存储器,这样的屏蔽对策效率低下。
本发明的目的是避免或减缓上述缺点的至少一些。
发明内容
根据本发明,通过一种抗侧信道攻击的对策方法来实现这些目的,该方法包括执行分组密码算法来屏蔽中间变量,其中分组密码算法包括一个或多个非线性函数,其特征在于使用适当匹配函数来实施至少一个非线性函数。
本发明的方法利用适当匹配函数来提高该方法的效率。使用适当匹配函数降低了为提供抗侧信道攻击的有效对策所需的操作的数量。另外,相比已知的方法,执行本发明的方法需要更少的存储器。
适当匹配函数可以是位随机化的(bit-randomized)适当匹配函数(MIPI(data;adr,b))。
可以将位随机化的适当匹配函数定义为:
Figure BSA00000773501700021
其中adr是存储器中的地址,data是可存储在存储器中的地址处的变量,以及b是在data变量等于在存储器中地址adr处存在的实际数据的情况下返回的值;否则返回b的补数。b也可以是位值。
下述关系可以存在:
MIP I ( data ; adr ; b ) = MIP ( data ; adr ) ⊕ b ‾
其中
Figure BSA00000773501700023
是b的补数。
至少一个非线性函数可以包括compareb函数,其可以定义为:
Figure BSA00000773501700024
其中x是compareb函数的第一输入变量,且y是compareb函数的第二输入变量,以及b是在x等于y的情况下返回的值,以便可以通过把变量x写入到存储器中的地址adr、执行位随机化的适当匹配函数以及返回MIPI(y;adrb)来实施compareb函数;所述位随机化的适当匹配函数,定义为:
非线性函数可以包括在SubByte(字节代替)操作中。非线性函数可以包括在AES算法的SubByte操作中。
分组密码算法可以进一步包括一个或多个线性函数。一个或多个线性函数的至少一个可以通过对函数的变量进行异或(XOR)来屏蔽。
分组密码算法可以是高级加密标准(AES)算法。
根据本发明的另一方面,提供了一种包括计算机程序的计算机可读介质,该计算机程序被配置为实施根据之前提到的方法任何之一的方法。
根据本发明的另一方面,提供一种从二阶屏蔽输入计算二阶屏蔽Sbox函数的方法,包括的步骤为:
(i)b←rand(1)
(ii)for a=0to2n-1 do
( a ) write ( r 1 ⊕ a ; adr )
(b)cmp←MIPl(r2;adr;b)
( c ) Rcmp ← ( S ( x ~ ⊕ a ) ⊕ s 1 ) ⊕ s 2
(iii)Return Rb
其中,b是表示对寄存器进行索引的随机位的变量,并且a是表示定义步骤(a)-(c)应被执行的次数的指数的变量,r1、r2是一对输入掩码,
Figure BSA00000773501700034
是屏蔽值,其中
Figure BSA00000773501700035
以及s1、s2是一对输出掩码,并且adr是空闲存储器地址,cmp是对寄存器进行索引的位变量并且是函数MIPI(r2;adr;b)的输出,Rcmp是微处理器的寄存器的寄存器地址。典型地,微处理器中至少两个寄存器R0和R1被使用(即,cmp可以是0或l;如果cmp=0则第一寄存器R0被索引/寻址,且如果cmp=l则第二寄存器R1被索引/寻址)。Rb是微处理器的寄存器的寄存器地址。典型地,微处理器中至少两个寄存器R0和R1被使用(即,b可以是0或1;如果b=0则寄存器R0被索引/寻址,如果b=l则寄存器R1被索引/寻址)。MIPI(r2;adr;b)是位随机化的适当匹配函数,其定义为:
Figure BSA00000773501700041
根据本发明的另一方面,提供一种包括计算机程序的计算机可读介质,该计算机程序被配置为执行在前提及的计算二阶屏蔽Sbox函数的方法。
附图说明
在通过举例给出的以及附图所说明的实施例的描述的帮助下,可以更好地理解本发明,其中:
图1示出AES加密的伪代码;
图2示出AES解密的伪代码;
图3示出表格,其包括compareb函数的原始实施和根据本发明的compareb函数的实施所需的存储器、转储(memory transfer)的数量(预处理阶段)、XOR和转储的数量(主要阶段),以及;
图4示出表格,其包括完全第二Rivain-Dottax-Rrouff(RDP2)算法实施所需的存储器、XOR的数量、转储的数量,其利用本发明的方法来实施compareb函数。
具体实施方式
将详细描述在AES加密算法中本发明方法的使用。然而,应该理解本发明方法并不限于供AES加密算法使用;本发明方法可以在任何分组密码算法中使用。
AES加密算法对字节si,j的4×4阵列起作用,称为‘状态’(state)。对于加密,AES加密算法的每个子部分(除最后子部分外)包括以下四个阶段:
1.AddRoundKey(轮密钥加):状态的每个字节与轮密钥ki.j进行异或,从密钥编排得出:
s i , j ← s i , j ⊕ k i , j
2.SubBytes:状态的每个字节使用8位S-box函数进行更新:
si,i←S(si,i)
S-box函数被定义为:
S(x)=Aff(Inv(x))
其中Aff是关于GF(2R)的仿射函数,并且
Inv(x)=x254
是关于GF(28)的逆函数(其中0→0)。
3.ShifRows(行移位):状态的字节以特定的偏移量在每一行中循环地移位;第一行保持不变。
4.MixColumns(列混淆):状态的字节被逐行修改,如下:
s I 0 , c ← ( 02 · s 0 , c ) ⊕ ( 03 · s 1 , c ) ⊕ s 2 , c ⊕ s 3 , c
s I 1 , c ← s 0 , c ⊕ ( 02 · s 1 , c ) ⊕ ( 03 · s 2 , c ) ⊕ s 3 , c
s I 2 , c ← s 0 , c ⊕ s 1 , c ⊕ ( 02 · s 2 , c ) ⊕ ( 03 · s 3 , c )
s I 3 , c ← ( 03 · s 0 , c ) ⊕ s 1 , c ⊕ s 2 , c ⊕ ( 02 · s 3 , c )
图1中给出了用于具有128位密钥的AES加密的伪代码。字阵列‘w’包含轮密钥(ki,i),其是通过密钥编排算法产生的。
对于解密,每一轮(除最后一轮)包括以下操作:
1.InvShiffRows(逆行移位):是行移位操作的逆操作(加密第3阶段)。状态的字节(在AES加密中使用的一组中间变量,如在上文第4页第18行至第5页第8行中定义的)以特定的偏移量在每一行中循环地移位;字节的第一行保持不变。
2.InvSubBytes(逆字节代替):是字节代替操作的逆操作(加密第2阶段)。逆S-box(S-1)应用于状态的每个字节,具有:
S-1(x)=Inv(Aff1(x))
3.AddRoundKey(轮密钥加):此操作等同于它自己的逆操作。
4.InvMixColumns(逆列混淆):是列混淆操作的逆操作(加密第4阶段)。状态的字节被逐列地修改,如下:
s I 0 , c ← ( 0 e · s 0 , c ) ⊕ ( 0 b · s 1 , c ) ⊕ ( 0 d · s 2 , c ) ⊕ ( 09 · s 3 , c )
s I 1 , c ← ( 09 · s 0 , c ) ⊕ ( 0 e · s 1 , c ) ⊕ ( 0 b · s 2 , c ) ⊕ ( 0 d · s 3 , c )
s I 2 , c ← ( 0 d · s 0 , c ) ⊕ ( 09 · s 1 , c ) ⊕ ( 0 e · s 2 , c ) ⊕ ( 0 b · s 3 , c )
s I 3 , c ← ( 0 b · s 0 , c ) ⊕ ( 0 d · s 1 , c ) ⊕ ( 09 · s 2 , c ) ⊕ ( 0 e · s 3 , c )
逆密码的伪代码在图2中给出。
最终,轮密钥编排(ki,j)基于下述操作:
1.SubWord(字代替):取四字节输入字并对四个字节中的每一个应用S-box(S(x))。
2.RotWord(字旋转):取字[a0;a1;a2;a3]作为输入并执行循环排列来返回[a1;a2;a3;a0]。
3.Xor with Rcon(与Rcon异或):取32位字作为输入并且将其与轮常数字阵列Rcon[i]=[(02)i-1;00;00;00]进行异或,其中轮l≤i≤10。参考[5]来获得密钥编排的完整描述。
正如在介绍中讨论的一样,屏蔽对策的原理是利用一个或多个随机掩码来屏蔽每个中间变量。在具有阶数d=2的屏蔽对策的情况下,可以使用两个掩码,其提供了总共三个份额(share)。更精确地,任何状态变量p(表示为AES中的字节)被分到三个份额(p0;p1;p2)中,其中:
p = p 0 ⊕ p 1 ⊕ p 2
其中份额p1和p2被称为掩码。
三个份额p0、p1和p2必须以通过加密算法的执行来保存在前关系的方式进行处理。注意:轮密钥的每个字节k同样地必须分到三个份额(k0;k1;k2)中使得 k = k 0 ⊕ k 1 ⊕ k 2 .
分组密码的线性部分很容易处理。当下述情况时,函数f可称为线性的:
f ( x ⊕ y ) = f ( x ) ⊕ f ( y ) 等式(1)
于是对于这种线性函数,当给出三个份额(p0;p1;p2)作为输入时,使得:
p = p 0 ⊕ p 1 ⊕ p 2
其足够分别地计算f(p0),f(p1)和f(p2),并且形成等式(1)获得:
f ( p ) = f ( p 0 ) ⊕ f ( p 1 ) ⊕ f ( p 2 )
因此,三个输出份额f(p0),f(p1)和f(p2)是输出f(p)的有效份额。对于AES加密,AddRoundKey、ShifRows和MixColumns操作是线性函数,并且因此能够以这种方式进行处理。然而,SubBytes操作(例如在AES情况中的S-box函数)是非线性的并且必须以不同方式进行处理。
为了处理非线性操作,例如在AES情况中的S-box函数,可以如下定义算法:
S:{0;l}n→{0;1}m
注意:对于AES来说n=m=8。该算法优选地包括屏蔽函数compareb,如下进行定义:
Figure BSA00000773501700066
其中x和y是compareb函数的输入变量。
从二阶屏蔽输入计算二阶屏蔽S-box函数可以如下进行:
Input(输入):屏蔽值
Figure BSA00000773501700071
其中r1;r2是一对输入掩码,以及s1;s2∈Fm 2是一对输出掩码。
Output(输出):屏蔽S-box函数输出
Figure BSA00000773501700072
1.b←rand(1)
2.for a=0 to 2n-1 do
( a ) cmp ← compare b ( r 1 ⊕ a ; r 2 )
( b ) Rcmp ← ( S ( x ~ ⊕ a ) ⊕ s 1 ) ⊕ s 2
3.Return Rb
其中
Figure BSA00000773501700075
r2是compareb函数的输入变量,于是 cmp = compare b ( r 1 ⊕ a , r 2 ) = compare b ( r 2 ; r 2 ) = b , 其根据需要给出 R b = ( S ( x ~ ⊕ r 1 ⊕ r 2 ) ⊕ s 1 ) ⊕ s 2 = S ( x ) ⊕ s 1 ⊕ s 2 .
在该特定实施例中,当执行compareb函数时应该注意。换句话说,compareb(x;y)函数优选不应该通过直接计算来实施,由于在以上算法中这将等同于计算其与
Figure BSA000007735017000713
相结合以给出二阶泄露。
现在将要描述实施compareb函数以防止对
Figure BSA000007735017000714
的任何一阶侧信道泄露的方法:
可想起将函数compareb定义为:
Figure BSA000007735017000715
实施的方法需要RAM中的2n位的表T。表T是如下进行预处理:
1.r3←{0;1}n
2 . Fori = 0 to 2 n - 1 doT [ i ] ← b ‾
3.T[r3]←b
这完成了预处理步骤。
在这个预处理步骤结束时,表T满足:
Figure BSA00000773501700081
然后compareb函数可以如下实施:
returnT [ ( x ⊕ r 3 ) ⊕ y ]
在这个情况中,在计算中的所有中间变量都独立于这防止对
Figure BSA00000773501700084
的任何一阶侧信i直泄露。
上述提到的compareb的实施在本领域是已知的。不利的是,上述提到的compareb的实施是低效的;compareb算法需要RAM的2n个位;然而,实际上,使用RAM的2n个字节会更方便,因为原本必须使用的位访问技术对于安全的实施是麻烦的。预处理需要2n+1个转储;这种预处理必须在对RDP2算法的每次调用之前完成。然后,对compareb的每次调用需要两个异或操作和一个转储。对于具有n=8的AES,从而,compareb函数在预处理期间需要RAM的256个字节和257个转储。于是,RDP2算法总共需要6·2n个异或操作,3·2n+1个转储和n+1个随机位的产生。
根据本发明的方法基于compareb函数的不同实施,特别是使用适当匹配函数的实施。
任何处理器都具有常见指令,data←read(adr)和write(data;adr),其在存储器中某地址adr处读取和写入某数据。在适当匹配技术中,处理器具有如下的工作的附加函数MIP(data;adr):
Figure BSA00000773501700085
换句话说,数据与在存储器位置adr处相匹配,并且地址adr处的值从未离开存储器。
在本发明中,提供了附加函数MlPI,其是MIP函数的位随机化版本,其如下进行定义:
优选地存在下述关系:
MIP I ( data ; adr ; b ) = MIP ( data ; adr ) ⊕ b ‾
使用MIPI函数,compareb函数可以简单地如下实施,其中adr是存储器中的空闲地址。
compareb(x;y):
1.Write(x;adr)
2.Return MIPI(y;adr;b)
一旦x已经在存储器中的地址adr被写入,根据compareb函数的需要,如果x=y,则MIPI(y,adr;b)函数返回b,否则返回
Figure BSA00000773501700091
使用MIPI函数,从二阶屏蔽输入计算二阶屏蔽S-box函数将变为如下所述:
Input(输入):屏蔽值
Figure BSA00000773501700092
一对输出掩码s1
Figure BSA00000773501700093
空闲存储器地址adr。
Output(输出):屏蔽S-box函数输出
Figure BSA00000773501700094
1.b←rand(1)
2.for a=0 to 2n-1 do
( a ) write ( r 1 ⊕ a ; adr )
(b)cmp←MIpI(r2;adr;b)
( c ) Rcmp ← ( S ( x ~ ⊕ a ) ⊕ s 1 ) ⊕ s 2
3.Return Rb
基于MIPI函数的compareb函数的实施,满足与原始compareb函数实施相同的特性;也就是说所有的中间变量都独立于
注意,随机化函数MIPI(y;adr;b)更可取。如果使用函数MIP(y;adr)作为代替(通过首先计算MIP(y;adr)然后返回M[P
Figure BSA00000773501700098
那么实施将不安全,因为中间变量MIP(y;adr)并不是独立于
Figure BSA00000773501700099
图3示出比较compareb函数的原始实施与根据本发明的compareb函数的实施的效率(即,使用MIpI函数)的表。很明显,根据本发明需要更少的操作和更少的RAM来实施compareb函数。
图4示出比较原始实施的屏蔽算法和根据本发明实施的屏蔽算法的效率(即,使用MlPI函数)的表。对于具有n=8的AES,本发明需要RAM的1个字节(而不是2n),1024个异或(而不是1536)和512个转储(而不是769)。如果异或和转储具有相同的成本,则本发明的变体比原始实施快了33%。因此,对于相同的安全等级,本发明提供需要更少RAM的更快的对策。
对于描述的本发明实施例的各种修改和变化对本领域的技术人员是显而易见的而不背离附加权利要求中所定义的本发明的范围。尽管已经结合特定的优选实施例描述了本发明,可以理解,所要求的发明不应该过度地限制于这样特定的实施例。

Claims (11)

1.一种抗侧信道攻击的对策方法,该方法包括执行分组密码算法来屏蔽中间变量,其中分组密码算法包括一个或多个非线性函数,其特征在于使用适当匹配函数来实施至少一个非线性函数。
2.根据权利要求1的方法,其中所述适当匹配函数是位随机化的适当匹配函数(MIPI(data;adr,b))。
3.根据权利要求2的方法,其中将位随机化的适当匹配函数定义为:
Figure FSA00000773501600011
其中adr是存储器中的地址,data是可存储在存储器中地址处的变量,以及b是在data变量等于在存储器中地址adr处存在的实际数据的情况下返回的值;否则返回b的补数。
4.根据权利要求3的方法,其中 MIP I ( data ; adr ; b ) = MIP ( data ; adr ) ⊕ b ‾ 其中
Figure FSA00000773501600013
是b的补数。
5.根据权利要求2的方法,其中至少一个非线性函数包括compareb函数,其定义为:
Figure FSA00000773501600014
其中x是compareb函数的第一输入变量,且y是compareb函数的第二输入变量,以及b是在x等于y的情况下返回的值,且
Figure FSA00000773501600015
是在x不等于y的情况下返回的值,以使得可以通过把变量x写入到存储器中的地址adr、执行位随机化的适当匹配函数以及返回MIPI(y,adr,b)来实施compareb函数;所述位随机化的适当匹配函数定义为:
Figure FSA00000773501600016
6.根据权利要求1的方法,其中,非线性函数包括在SubByte操作中。
7.根据权利要求1的方法,其中所述分组密码算法进一步包括一个或多个线性函数,其中所述一个或多个线性函数中的至少一个通过对函数的变量进行异或来加密。
8.根据权利要求1的方法,其中所述分组密码算法是高级加密标准(AES)算法。
9.一种包括计算机程序的计算机可读介质,该计算机程序被配置来实施根据权利要求1的方法。
10.一种从二阶屏蔽输入计算二阶屏蔽Sbox函数的方法,包括如下的步骤:
(i)b←rand(1)
(ii)for a=0 to 2n-1 do
( a ) write ( r 1 ⊕ a ; adr )
(b)cmp←MIPI(r2;adr;b)
( c ) Rcmp ← ( S ( x ~ ⊕ a ) ⊕ s 1 ) ⊕ s 2
(iii)Return Rb
其中,b是表示对寄存器进行索引的随机位的变量,并且a是表示定义步骤(a)-(c)应被执行的次数的指数的变量,r1、r2是一对输入掩码,
Figure FSA00000773501600023
是屏蔽值,其中
Figure FSA00000773501600024
并且s1、s2是一对输出掩码,且acr是空闲存储器地址,cmp是对寄存器进行索引的位变量并且是函数MIPI(r2;adr;b)的输出,且Rcmp和Rb均是微处理器的寄存器的寄存器地址,并且其中,MIPI(r2;adr;b)是位随机化的适当匹配函数,定义为:
11.一种包括计算机程序的计算机可读介质,该计算机程序被配置来执行根据权利要求10的方法。
CN2012103240718A 2011-07-26 2012-07-25 一种抗侧信道攻击的对策方法 Pending CN102904716A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP11290337 2011-07-26
EP11290337.2 2011-07-26

Publications (1)

Publication Number Publication Date
CN102904716A true CN102904716A (zh) 2013-01-30

Family

ID=47576770

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2012103240718A Pending CN102904716A (zh) 2011-07-26 2012-07-25 一种抗侧信道攻击的对策方法

Country Status (5)

Country Link
US (1) US8971526B2 (zh)
JP (1) JP5892887B2 (zh)
KR (1) KR20130012940A (zh)
CN (1) CN102904716A (zh)
RU (1) RU2586020C2 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106161005A (zh) * 2015-03-31 2016-11-23 北京南瑞智芯微电子科技有限公司 一种分组加密算法防攻击的掩码方法和装置
CN106487497A (zh) * 2015-09-02 2017-03-08 意法半导体(鲁塞)公司 对rijndael算法的dpa保护
CN108702286A (zh) * 2016-04-01 2018-10-23 英特尔公司 抗功率侧信道攻击的高级加密标准加速器处理器
CN108809622A (zh) * 2018-06-15 2018-11-13 上海科技大学 一种抗功耗侧信道攻击对策验证方法
US10243728B2 (en) 2015-09-02 2019-03-26 Stmicroelectronics (Rousset) Sas Verification of the resistance of an electronic circuit to side-channel attacks

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3012234B1 (fr) * 2013-10-23 2017-02-24 Proton World Int Nv Protection de l'execution d'un algorithme contre des attaques par canaux caches
EP2884387B1 (en) * 2013-12-13 2016-09-14 Thomson Licensing Efficient modular addition resistant to side-channel attacks
KR20150123476A (ko) * 2014-04-25 2015-11-04 한국전자통신연구원 부채널 공격 방지를 위한 대칭키 암호 알고리즘의 함수 마스킹 장치 및 그 방법
WO2016102180A1 (en) 2014-12-22 2016-06-30 Koninklijke Philips N.V. Hiding of a program execution
NL2015745B1 (en) * 2015-11-09 2017-05-26 Koninklijke Philips Nv A cryptographic device arranged to compute a target block cipher.
EP3475825B1 (en) 2016-06-23 2023-01-25 Cryptography Research, Inc. Cryptographic operations employing non-linear share encoding for protecting from external monitoring attacks
US10256973B2 (en) * 2016-09-30 2019-04-09 Intel Corporation Linear masking circuits for side-channel immunization of advanced encryption standard hardware
CN108234107B (zh) * 2016-12-21 2022-11-22 国民技术股份有限公司 一种带仿射掩码的s盒变换方法及装置
EP3367606B1 (en) * 2017-02-24 2019-09-18 Secure-IC SAS Automatic insertion of masking into an algorithm
EP3422176A1 (en) * 2017-06-28 2019-01-02 Gemalto Sa Method for securing a cryptographic process with sbox against high-order side-channel attacks
RU2738321C1 (ru) * 2018-09-20 2020-12-11 Общество с ограниченной ответственностью "Цифра" Способ криптографического преобразования и устройство для его осуществления
CN111339577B (zh) * 2020-02-12 2022-06-07 南京师范大学 一种具有优良dpa抗性s盒的构造方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101578813A (zh) * 2007-01-11 2009-11-11 皇家飞利浦电子股份有限公司 跟踪实现的拷贝
CN101938349A (zh) * 2010-10-01 2011-01-05 北京航空航天大学 一种适用于硬件实现的s盒及其电路实现方法
US20110044450A1 (en) * 2009-08-21 2011-02-24 Electronics And Telecommunications Research Institute Method and apparatus for processing f-function in seed encryption system

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7848514B2 (en) * 2004-05-24 2010-12-07 Research In Motion Limited Table masking for resistance to power analysis attacks
JP2007006184A (ja) * 2005-06-24 2007-01-11 Nippon Telegr & Teleph Corp <Ntt> 暗号処理装置及び認証アプリケーションプログラム
FR2893796B1 (fr) * 2005-11-21 2008-01-04 Atmel Corp Procede de protection par chiffrement
JP2008233683A (ja) * 2007-03-22 2008-10-02 Toshiba Corp 暗号処理装置及びプログラム
JP4962165B2 (ja) * 2007-06-22 2012-06-27 大日本印刷株式会社 暗号処理装置,暗号処理プログラム及び暗号処理方法
FR2950721B1 (fr) * 2009-09-29 2011-09-30 Thales Sa Procede d'execution d'un algorithme de protection d'un dispositif electronique par masquage affine et dispositif associe

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101578813A (zh) * 2007-01-11 2009-11-11 皇家飞利浦电子股份有限公司 跟踪实现的拷贝
US20110044450A1 (en) * 2009-08-21 2011-02-24 Electronics And Telecommunications Research Institute Method and apparatus for processing f-function in seed encryption system
CN101938349A (zh) * 2010-10-01 2011-01-05 北京航空航天大学 一种适用于硬件实现的s盒及其电路实现方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王先培 等: "新一代数据加密标准", 《计算机工程》, vol. 29, no. 3, 31 March 2003 (2003-03-31) *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106161005A (zh) * 2015-03-31 2016-11-23 北京南瑞智芯微电子科技有限公司 一种分组加密算法防攻击的掩码方法和装置
CN106487497A (zh) * 2015-09-02 2017-03-08 意法半导体(鲁塞)公司 对rijndael算法的dpa保护
US10243728B2 (en) 2015-09-02 2019-03-26 Stmicroelectronics (Rousset) Sas Verification of the resistance of an electronic circuit to side-channel attacks
CN106487497B (zh) * 2015-09-02 2020-03-10 意法半导体(鲁塞)公司 对rijndael算法的dpa保护
CN108702286A (zh) * 2016-04-01 2018-10-23 英特尔公司 抗功率侧信道攻击的高级加密标准加速器处理器
CN108809622A (zh) * 2018-06-15 2018-11-13 上海科技大学 一种抗功耗侧信道攻击对策验证方法

Also Published As

Publication number Publication date
US20130028412A1 (en) 2013-01-31
JP2013029835A (ja) 2013-02-07
US8971526B2 (en) 2015-03-03
JP5892887B2 (ja) 2016-03-23
RU2586020C2 (ru) 2016-06-10
RU2012131957A (ru) 2014-01-27
KR20130012940A (ko) 2013-02-05

Similar Documents

Publication Publication Date Title
CN102904716A (zh) 一种抗侧信道攻击的对策方法
CN101006677B (zh) 用于实施加密运算的方法和装置
US8515057B2 (en) Method and device for executing crytographic calculation
Gross et al. Ascon hardware implementations and side-channel evaluation
CN106788974A (zh) 掩码s盒、分组密钥计算单元、装置及对应的构造方法
US8428251B2 (en) System and method for stream/block cipher with internal random states
US9515820B2 (en) Protection against side channels
EP2947841A1 (en) Encryption device and method of defending against differential power analysis attack
US20090086976A1 (en) Substitution table masking for cryptographic processes
US7720225B2 (en) Table splitting for cryptographic processes
CN101729241A (zh) 抵御差分能量攻击的aes加密方法
CN103647638A (zh) 一种抵抗侧信道攻击的des掩码方法
US11700111B2 (en) Platform neutral data encryption standard (DES) cryptographic operation
CN103795527A (zh) 防止基于功耗分析攻击aes算法的软件掩码防护方案
US8619985B2 (en) Table splitting for cryptographic processes
CN104734845A (zh) 基于全加密算法伪操作的旁路攻击防护方法
CN111555862A (zh) 基于掩码保护的随机冗余轮函数的白盒aes实现方法
CN106487497A (zh) 对rijndael算法的dpa保护
CN104301095A (zh) Des轮运算方法和电路
Huang et al. Cryptanalysis and security enhancement for a chaos-based color image encryption algorithm
CN103873229B (zh) KLEIN加密AVR环境下抗timing和cache边信道攻击的快速保护方法
CN106936822B (zh) 针对sms4抗高阶旁路分析的掩码实现方法及系统
CN109617667B (zh) 一种针对aes算法线性部分的高效掩码防护方法
US20150270973A1 (en) Device and method for carrying out a cryptographic method
Gupta et al. Correlation power analysis of KASUMI and power resilience analysis of some equivalence classes of KASUMI S-boxes

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20130130