CN111224770B - 一种基于门限技术的抗侧信道与故障攻击的综合防护方法 - Google Patents

一种基于门限技术的抗侧信道与故障攻击的综合防护方法 Download PDF

Info

Publication number
CN111224770B
CN111224770B CN201911359164.2A CN201911359164A CN111224770B CN 111224770 B CN111224770 B CN 111224770B CN 201911359164 A CN201911359164 A CN 201911359164A CN 111224770 B CN111224770 B CN 111224770B
Authority
CN
China
Prior art keywords
threshold
encryption
original
shares
implementation
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
CN201911359164.2A
Other languages
English (en)
Other versions
CN111224770A (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 Software of CAS
Research Institute of Southern Power Grid Co Ltd
Original Assignee
Institute of Software of CAS
Research Institute of Southern Power Grid Co Ltd
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 Software of CAS, Research Institute of Southern Power Grid Co Ltd filed Critical Institute of Software of CAS
Priority to CN201911359164.2A priority Critical patent/CN111224770B/zh
Publication of CN111224770A publication Critical patent/CN111224770A/zh
Application granted granted Critical
Publication of CN111224770B publication Critical patent/CN111224770B/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/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/002Countermeasures against attacks on cryptographic mechanisms
    • 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/004Countermeasures against attacks on cryptographic mechanisms for fault attacks
    • 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/12Details relating to cryptographic hardware or logic circuitry
    • 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/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/122Hardware reduction or efficient architectures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种基于门限技术的抗侧信道与故障攻击的综合防护方法,其包括以下步骤:根据侧信道攻击的阶数d,构造分组密码算法的d阶门限实现,作为原始门限实现;为分组密码算法构造与原始门限实现完全相同的d阶门限实现,作为冗余门限实现;以相同的明文为加密输入,同步执行原始门限实现和冗余门限实现的加密流程,在加密流程中执行交换操作,交换原始门限实现和冗余门限实现的部分份额;当所有加密流程和交换操作结束后,输出原始门限实现的密文,作为防护加密的密文。本方法优化组合了门限实现和基于数据交换的防护,使分组密码可同时抵抗多种侧信道攻击和故障攻击,并具有较小的防护开销。

Description

一种基于门限技术的抗侧信道与故障攻击的综合防护方法
技术领域
本发明涉及信息安全分组密码分析和防护领域,特别涉及一种基于门限技术的抗侧信道攻击和故障攻击的综合防护方法。
背景技术
对称密码是通信双方共享同一个秘密密钥的密码体制。其中分组密码算法是一类广泛使用的对称密码。分组密码算法的常见结构有Feistel结构、SP结构等,算法中密码变换函数的设计通常遵循混淆和扩散的安全性原则,并通过多轮迭代操作使其能够抵抗现有的所有理论分析方法,例如差分分析、线性分析、积分攻击和插值攻击等。分组密码算法具有运行速度快、易于标准化和便于软硬件实现的特点,适用于各种嵌入式系统实现。随着物联网的高速发展,分组密码的实现载体和应用场景日趋多元化,这使得实现安全成为分组密码分析的研究热点。
侧信道攻击是一类常见的密码实现分析方法。它的可行性在于密码算法需要以密码芯片、嵌入式密码模块等为载体实现。这些芯片、模块在执行密码运算的过程中会泄漏与加密中间值或加密操作相关的物理侧信息,如加密时长、能量消耗、电磁辐射等。在了解侧信息对加密信息的依赖关系的情况下,攻击者可通过采集、解析物理信息,从中恢复出秘密中间值或密钥。由于加密过程中泄漏的侧信息种类繁多,侧信道分析方法多样且复杂度明显低于传统密码分析方法,侧信道攻击对密码实现的安全性造成很大的威胁。实验表明,几乎所有未添加防护措施的密码实现都无法抵抗侧信道攻击。
相关能量攻击是侧信道攻击的经典方法之一。攻击者首先变换明文输入,采集整个密码模块在多次加密中能耗信息;然后根据已知的明文(密文)和猜测的密钥,构造假设加密中间值和假设能量消耗;最后计算假设能量消耗与电路实际能耗的相关性,从而区分出相关性最大的密钥猜测。探测攻击是一种更细致的侧信道攻击,攻击者可直接使用探针探测芯片电路信号线上的具体电平,从而直接得到加密中间值的数值信息用于密钥恢复。从可行性的角度考虑,探测攻击通常限定敌手不能在短时间内,如一个时钟周期内,移动探针所在的信号线的位置。
侧信道攻击的阶数d反映了攻击所考虑的信号的个数。d阶相关能量攻击通常联合d个不同时刻的能耗采样点,以构造出“新”的实测能耗用于相关性计算。d阶探测攻击是指攻击者同时探测d根信号线上的信息,用于密钥恢复。
故障攻击是另一类常见的密码实现分析方法。它的可行性在于密码芯片、嵌入式密码模块等密码实现的正常运行依赖于稳定且适合的供电、时钟、温度等环境因素。当攻击者可以改变环境因素使其超过某阈值,即可引发加密故障。故障加密过程中泄漏的额外信息,如故障密文、故障参数等均可用于密钥恢复。由于产生故障的方式多样,故障类型丰富,密钥恢复方法灵活且复杂度明显低于传统密码分析方法,故障攻击对密码实现的应用造成很大的威胁。实验表明,几乎所有未添加防护措施的密码实现都无法抵抗故障攻击。
差分故障攻击是故障攻击中最常用的方法之一。针对分组密码算法的差分故障攻击(Differential Fault Analysis,DFA)是1997年由Biham和Shamir首次提出的。其攻击前提为敌手可以使用相同的密钥对相同明文分别进行两次加密,一次为正确加密,输出正确密文,另一次在加密过程中注入故障,为故障加密,输出故障密文。攻击者在了解故障注入目标和故障注入模型的情况下对正确和故障密文组合进行差分分析,恢复故障传播过程中涉及的密钥,因此被称为差分故障分析。由攻击流程可知差分故障攻击是一种依赖于故障密文具体数值的攻击方法,类似的攻击还有不可能差分故障攻击、积分故障攻击、代数故障攻击等。
故障敏感度攻击是一种不依赖于故障密文具体数值的攻击方法。该攻击以故障注入参数作为注入目标中间值的侧信息,根据故障是否注入成功、密文是否出错等指示信息来推测注入目标中间值的具体数值。类似的不依赖故障密文具体数值的攻击方法还有无效故障攻击。该攻击以故障模型的不均匀程度作为注入目标中间值分布特征的侧信息。
考虑到侧信道攻击和故障攻击对密码模块的安全威胁,各国密码产品测评机构均要求高等级密码模块中应包含针对侧信道攻击和故障攻击的防护措施。学术界和工业界已提出一系列具体的防护方法。
门限实现是一种抵抗侧信道攻击的防护技术,由Nikova等人于2006年首次提出。已有文献证明,针对分组密码的d阶门限实现可抵抗d阶差分能量攻击和d阶探测攻击。下面以密码运算f(x)=y为例,介绍d阶门限实现的防护思路。首先,添加Sx-1个随机数,将待加密的输入x划分为Sx个取值均匀的输入份额(x1,x2,…,xSx-1,xSx),与原输入x满足异或相等关系,
Figure BDA0002336716540000021
其次,将运算f(x)拆分成Sy个份额运算fi(Xi),其中i=1,…,Sy,Xi为{x1,x2,…,xSx-1,xSx}的子集。运算拆分满足正确性、非完备性和均匀性三个特征。其中,正确性指所有份额运算的结果与原运算结果满足异或相等关系,
Figure BDA0002336716540000022
d阶非完备性是指任意d个份额运算都至少与1个输入份额无关;均匀性是指对于任意输入x而言,当输入份额取值均匀时,则运算结束后各输出份额的取值也满足一定范围内的均匀分布。最后,若f(x)是密码算法的最后一个运算,则将f(x)所有份额运算结果的异或值作为加密结果输出;否则,若f(x)=y运算后级联其他运算z=g(y),则将f(x)份额运算结果作为g(y)份额运算的输入份额。此外,门限实现要求在级联的两个非线性密码运算之间添加寄存器暂存第一个非线性运算的结果,以阻断电路毛刺积累对非完备性的影响。门限实现所需的份额个数Sx和Sy由防护阶数和密码运算的代数次数共同决定。当防护阶数为d,代数次数t为时,总存在Sx≥dt+1,
Figure BDA0002336716540000031
的门限实现。设密码运算y=f(x’)的代数次数为2,图1给出了该运算1阶门限实现的拆分示意。其中,份额个数Sx=Sy=3,(r1,r2)为两个均匀独立的随机数,
Figure BDA0002336716540000032
为3个输入份额,(f1,f2,f3)为3个份额运算,(y1,y2,y3)为份额运算的结果。份额运算f1与输入份额x1无关,份额运算f2与输入份额x2无关,份额运算f3与输入份额x3无关。3个份额运算的结果被暂存入寄存器Reg1,Reg2和Reg3中。
在密码算法的d阶门限实现中,输入拆分的均匀性和运算拆分的d阶非完备性保证了密码算法对d阶探测攻击的抵抗能力。输入拆分的均匀性和运算拆分的均匀性使得电路的整体能耗特征无法反映运算中间值的数值特征,从而使差分能量攻击失效。此外,考虑到故障敏感度攻击的中间值恢复思路与侧信道攻击类似,因此门限实现同样可用于抵抗故障敏感度攻击。
在抗故障攻击方面,Joye等人在2007年提出了一种基于数据交换的防护方法。该防护要求密码算法使用相同的明文进行两次完全相同的加密,其中一个称为原始加密,另一个称为冗余加密。在加密过程中,定期交换原始加密中间值和冗余加密中间值的部分数值,并最终输出原始加密的运算结果作为最终的密文。图2给出了基于数据交换的防护示例,其中交换操作发生在分组密码算法的两个加密操作之间,这里用加密操作1和加密操作2标识。图中的小方框表示加密操作1执行完毕后生成的中间值字节,原始加密中间值和冗余加密中间值均由8个字节构成,交换操作改变了其中后4个字节的对应位置,使得加密操作2的输入发生变化。当故障注入在原始加密中间值或冗余加密中间值上时,交换操作使故障的传播路径发生变化,并最终使输出的故障加密结果与无防护情况下故障密文不同。因为输出的故障加密结果无法反映完整的故障密文信息,所以当字节交换位置未知时,该防护可在一定程度上增大差分故障攻击的难度。但考虑到该防护并没有对故障中间值或故障运算结果引入随机性,因此当字节交换位置已知时,敌手可推断出新的故障传播路径,进而设计出新的密钥恢复方法。此时,该防护仍可被差分故障攻击攻破。
为同时抵抗侧信道攻击和故障攻击,学术界通过组合多种单一性防护原理,提出一系列综合防护方法。例如,Schneider等人提出的PARTI综合防护是故障检错码防护和侧信道掩码防护的优化组合。Cnudde等人提出的改进的Priviate Circuit II防护是门限实现防护原理和故障数据自毁原理的优化组合。虽然这些防护方法在理论上可以使分组密码同时抵抗故障攻击和侧信道攻击,但是部分方法的构造原理复杂,电路实现开销和随机数开销都很大。
发明内容
本发明的目的是提出适用于分组密码算法的抗侧信道攻击和故障攻击的综合防护方法。该方法所能抵抗的侧信道攻击至少包括相关能量攻击和探测攻击,侧信道攻击的阶数为d。该方法所能抵抗的故障攻击至少包括差分故障攻击和故障敏感度攻击。该综合防护方法以抗侧信道攻击的d阶门限实现为基础,优化组合基于数据交换的故障防护,通过交换门限实现的部分份额保证分组密码对侧信道攻击和故障攻击的抵抗能力。
本发明为实现上述目的,提出了一种基于门限技术的抗侧信道攻击与故障攻击的综合防护方法,其包括以下步骤:
1)根据侧信道攻击的阶数d,构造分组密码算法的d阶门限实现,作为原始门限实现;
2)为分组密码算法构造与原始门限实现完全相同的d阶门限实现,作为冗余门限实现;
3)以相同的明文为加密输入,同步执行原始门限实现和冗余门限实现的加密流程,在特定时刻交换原始门限实现和冗余门限实现的部分份额;
4)当所有加密流程和交换操作结束后,输出原始门限实现的密文作为防护加密的密文。
优选地,步骤1)中,分组密码的d阶门限实现将加密输入、加密中间值和加密结果均划分为s个份额,s≥d+1。记原始门限实现的加密输入为x,原始门限实现的加密输入的份额为{x1,…,xs}。其中s-1个份额由s-1个随机数生成,另一个份额依据等式
Figure BDA0002336716540000041
生成。在原始门限实现中,密码运算y=f(x)的份额运算为yi=fi(Xi),Xi为{x1,…,xs}的子集,i=1,2,…,s。
优选地,对于抵抗d阶侧信道攻击,任意的d个份额函数与每一个原始输入的至少一个输入份额独立。
优选地,步骤2)中,冗余门限实现与原始门限实现的份额划分方法相同,份额标号方法相同(即同样划分为s个份额,且使用相同的份额标号),使用的随机数相同。记冗余门限实现的加密输入为x’,冗余门限实现的加密输入的份额为{x′1,…,x′s}。当原始门限实现和冗余门限实现的加密输入相同时,即x=x’时,有xi=x’i,i=1,2,…,s。在冗余门限实现中,密码运算y′=f(x’)的份额运算为y′i=fi(X′i),X′i为{x′1,…,x′s}的子集,i=1,2,…,s。y′i=fi(X′i)与原始门限实现中的份额运算yi=fi(Xi)完全相同。
优先地,步骤3)中,在原始门限实现和冗余门限实现的加密过程中,交换操作满足如下设置:
在分组密码加密流程中,任意两组存在级联关系的非线性运算之间和最后一组非线性运算之后均需执行交换操作。交换操作的对象为加密中间值的e个份额,e的取值范围为(0,d]∪[s-d,s)。被交换的份额的标号在原始门限实现和冗余门限实现中对应相同。被交换的份额的位宽与所述分组密码算法的分组宽度相同。被交换的份额的标号需要在每次加密前随机秘密选取,同一次加密中所有交换操作所选取的份额标号可完全相同或各不相同。
记y=f(x)为原始门限实现中的非线性运算,y=f(x’)为冗余门限实现中的非线性运算,被交换的e个份额的标号为{index(1),index(2),…,index(e)},且满足当1≤i≤e时,1≤index(i)≤s,当i≠j时,index(i)≠index(j)。交换操作后,原始门限实现加密中间值的份额集合变为{y1,…,ys}-{yindex(1),…,yindex(e)}+{y′index(1),…,y′index(e)},并用于后续的原始门限实现运算;冗余门限实现加密中间值的份额集合变为{y′1,…,y′s}-{y′index(1),…,y′index(e)}+{yindex(1),…,yindex(e)},并用于后续的冗余门限实现运算。
优选地,步骤4)中,当所有加密流程和交换操作结束后,通过异或运算整合原始门限实现的加密结果的所有份额,构成防护加密的密文并输出。若非线性运算y=f(x)为原始门限实现的最后一个加密操作,非线性运算y=f(x’)为原始门限实现的最后一个加密操作,则交换操作后,防护加密的密文输出为
Figure BDA0002336716540000051
和现有技术相比,本发明具有如下优势:
1.不同于现有的只能抵抗少数几种攻击的防护方法,本发明的综合防护方法使分组密码算法可同时抵抗相关能量攻击、探测攻击等多种侧信道攻击,以及差分故障攻击、故障敏感度攻击等多种故障攻击;
2.本发明的综合防护方法不仅将门限实现作为侧信道攻击的防护元件,而且将门限实现中均匀的中间值份额作为故障防护的随机性来源,因此增加了输出的故障密文的随机性。与Joye等人所提出的基于数据交换的防护相比,本发明的综合防护对差分故障攻击的抵抗能力更强;
3.本发明的综合防护方法的构造非常简单,与其他综合防护方法中的故障防护元件相比,份额交换操作所引入的电路实现开销较小;
4.本发明的综合防护方法将门限实现中均匀的中间值份额作为故障防护的随机性来源,因此节约了综合防护所需的随机数开销。与其他综合防护方法相比,本发明的综合防护所需的随机数更少。
附图说明
图1是代数次数为2的密码运算y=f(x)的1阶门限实现的拆分示意图;
图2是基于数据交换的防护示意图;
图3是抗故障攻击和1阶侧信道攻击的LED算法综合防护示意图;
图4是本发明方法的流程图。
具体实施方式
下面结合附图和一个实施例对本发明做进一步详细的说明,但不以任何方式限制本发明的范围。
在本实施例中,以LED算法作为被防护的分组密码算法,设综合防护可抵抗1阶侧信道攻击。
LED分组密码算法的分组长度为64比特,迭代轮数为32或48。轮迭代操作由轮常量加、S盒、行移位和列混淆等运算构成,每4轮之间执行一次轮密钥加运算,在加密开始和结束时同样执行轮密钥加运算。上述运算中仅S盒为非线性运算,其他运算均为线性运算。LED算法S盒的输入输出均为4比特,代数次数为3,可拆分为两个代数次数为2的非线性操作G和F级联的形式。因此,为抗1阶侧信道攻击,LED算法的1阶门限实现可基于3个份额构造。综合防护中每次交换操作以交换1个份额为例进行说明。
抗故障攻击和1阶侧信道攻击的LED算法综合防护如图3所示,由以下部分构成:
1)原始门限实现将加密输入、加密中间值和加密结果均划分为3个份额。其中,线性运算(如轮常量加、行移位、列混淆和轮密钥加)的每1个份额函数(轮常量加i、行移位i、列混淆i和轮密钥加i,i=1,2,3)只以1个输入份额为输入,非线性运算(如G和F)的每1个份额函数(Gi和Fi,i=1,2,3)最多以2个输入份额为输入。非线性运算份额函数Gi和Fi之间添加寄存器
Figure BDA0002336716540000061
i=1,2,3。Fi与下一轮迭代的Gi之间添加寄存器
Figure BDA0002336716540000062
i=1,2,3。因为轮密钥加运算并非每轮迭代都要执行,所以在图3中用虚线标识。因为行移位运算在硬件中可通改变电路连线实现,所以在图3中未做标识。
2)冗余门限实现与原始门限实现的份额划分方法相同,份额标号方法相同,使用的随机数相同。为了与原始门限实现做区分,在冗余门限实现中非线性运算份额函数Gi和Fi之间的寄存器记为
Figure BDA0002336716540000063
Fi与下一轮迭代的Gi之间的寄存器记为
Figure BDA0002336716540000064
i=1,2,3。
3)以相同的明文为加密输入,同步执行原始门限实现和冗余门限实现的加密流程。在非线性运算之间交换原始门限实现和冗余门限实现加密中间值的1个份额。具体交换时刻为份额函数Gi和Fi运算之间,以及Fi与下一轮迭代的Gi之间,i=1,2,3。被交换的份额的位宽与所述分组密码算法的分组宽度相同,为64位。被交换的份额的标号在每次加密前随机秘密选取。以交换第3个份额为例,通过将原始门限实现中本应存入寄存器
Figure BDA0002336716540000071
(或
Figure BDA0002336716540000072
)的中间值份额存入寄存器
Figure BDA0002336716540000073
(或
Figure BDA0002336716540000074
),将原始门限实现中本应存入寄存器
Figure BDA0002336716540000075
(或
Figure BDA0002336716540000076
)的中间值份额存入寄存器
Figure BDA0002336716540000077
(或
Figure BDA0002336716540000078
),即可实现对第3个份额的交换操作。
4)当所有加密流程和交换操作结束后,通过异或运算整合原始门限实现的加密结果的所有份额,构成防护加密的密文并输出。
由上述构造可知,原始和冗余加密过程都采用了门限实现,因此密码综合防护中所有加密运算均继承了门限实现对侧信道分析的抵抗能力。采用1阶门限实现的LED综合防护可抵抗针对加密操作的1阶探测攻击和差分能量攻击。
交换操作所针对的份额的集合是门限实现输出分量的子集,所以交换份额的取值也满足均匀分布。对于不同的加密中间值,分量交换操作的平均能量消耗稳定,无法用于差分能量攻击。此外,被交换的1个分量满足非完备性特征,可抵抗1阶探测攻击。综上,采用1阶门限实现的LED综合防护可抵抗针对交换操作的侧信道攻击。
在抗故障攻击方面,首先,因为故障敏感度攻击与侧信道攻击思路类似,所以LED综合防护同样可抵抗故障敏感度攻击。其次,在差分故障攻击场景下,注入在原始(或冗余)加密一个中间值份额上的故障经过非线性运算后可能会传入两个输出分量,门限实现的均匀性特征使故障在两个输出分量上的表达具有随机性。交换操作后,若两个分量被分别引入原始和冗余加密,则相当于对原始加密和冗余加密分别注入不同的随机故障。随着加密和分量交换操作的交替执行,故障传播路径上的故障数值将趋于均匀随机。最终,输出的故障密文也一定范围内均匀随机,这使得敌手无法利用这样的密文实施差分故障攻击。
以上实施例仅用以说明本发明的技术方案而非对其进行限制,本领域的普通技术人员可以对本发明的技术方案进行修改或者等同替换,本发明的保护范围以权利要求所述为准。

Claims (8)

1.一种基于门限技术的抗侧信道与故障攻击的综合防护方法,其特征在于,包括以下步骤:
根据侧信道攻击的阶数
Figure DEST_PATH_IMAGE001
,构造分组密码算法的
Figure 130047DEST_PATH_IMAGE001
阶门限实现,作为原始门限实现;
为分组密码算法构造与原始门限实现完全相同的
Figure 312767DEST_PATH_IMAGE001
阶门限实现,作为冗余门限实现;
以相同的明文为加密输入,同步执行原始门限实现和冗余门限实现的加密流程,在加密流程中执行交换操作,交换原始门限实现和冗余门限实现的部分份额;
当所有加密流程和交换操作结束后,输出原始门限实现的密文,作为防护加密的密文;
其中,原始门限实现的份额划分方法为将加密输入、加密中间值和加密结果均划分为至少
Figure 921865DEST_PATH_IMAGE002
个份额;对于原始门限实现,将加密输入、加密中间值和加密结果划分为s个份额,s d+1,则将原始加密输入划分为s个份额,使用随机数生成其中的s-1个份额,原始输入xs-1个份额表示为{
Figure DEST_PATH_IMAGE003
,第s个份额
Figure 785916DEST_PATH_IMAGE004
由原始值和之前生成的s-1个份额异或得到,即满足
Figure DEST_PATH_IMAGE005
,其中
Figure 459342DEST_PATH_IMAGE006
表示
Figure DEST_PATH_IMAGE007
之间相互异或。
2.如权利要求1所述的方法,其特征在于,冗余门限实现与原始门限实现的份额划分方法相同,且使用的随机数相同。
3.如权利要求1所述的方法,其特征在于,在加密流程中,任意两组存在级联关系的非线性运算之间和最后一组非线性运算之后执行交换操作。
4.如权利要求1所述的方法,其特征在于,被交换的份额为加密中间值份额。
5.如权利要求4所述的方法,其特征在于,被交换的份额数e的取值范围为
Figure 78543DEST_PATH_IMAGE008
,其中s为划分的份额数。
6.如权利要求1所述的方法,其特征在于,被交换的份额的位宽与分组密码算法的分组宽度相同。
7.如权利要求1所述的方法,其特征在于,对冗余门限实现与原始门限实现的份额采用相同标号,被交换的份额的标号在原始门限实现和冗余门限实现中对应相同,该标号在每次加密前随机秘密选取,同一次加密中所有交换操作所选取的份额标号完全相同或各不相同。
8.如权利要求1所述的方法,其特征在于,当所有加密流程和交换操作结束后,通过异或运算整合原始门限实现的加密结果的所有份额。
CN201911359164.2A 2019-12-25 2019-12-25 一种基于门限技术的抗侧信道与故障攻击的综合防护方法 Active CN111224770B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911359164.2A CN111224770B (zh) 2019-12-25 2019-12-25 一种基于门限技术的抗侧信道与故障攻击的综合防护方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911359164.2A CN111224770B (zh) 2019-12-25 2019-12-25 一种基于门限技术的抗侧信道与故障攻击的综合防护方法

Publications (2)

Publication Number Publication Date
CN111224770A CN111224770A (zh) 2020-06-02
CN111224770B true CN111224770B (zh) 2021-03-30

Family

ID=70830830

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911359164.2A Active CN111224770B (zh) 2019-12-25 2019-12-25 一种基于门限技术的抗侧信道与故障攻击的综合防护方法

Country Status (1)

Country Link
CN (1) CN111224770B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112187444A (zh) * 2020-09-02 2021-01-05 中国科学院软件研究所 一种抗侧信道和故障攻击的综合防护方法
CN115270204B (zh) * 2022-09-28 2023-03-07 南方电网数字电网研究院有限公司 芯片电路信息泄露的检测方法、系统、存储介质及设备
CN116232561B (zh) * 2023-05-09 2023-08-25 杭州海康威视数字技术股份有限公司 抵抗差分故障攻击的冗余加密优化方法、装置及设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103905182A (zh) * 2014-04-25 2014-07-02 东南大学 基于动态改变中间数据存储位置的抗攻击方法及电路实现
CN103916236A (zh) * 2014-04-25 2014-07-09 东南大学 面向aes算法的抗功耗攻击方法及电路实现
CN110401627A (zh) * 2019-01-31 2019-11-01 中国科学院软件研究所 一种适用于分组密码算法感染防护的抗差分故障攻击安全性评估方法和系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103634102B (zh) * 2013-12-16 2017-11-07 国家电网公司 一种侧信道攻击和故障攻击的防护方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103905182A (zh) * 2014-04-25 2014-07-02 东南大学 基于动态改变中间数据存储位置的抗攻击方法及电路实现
CN103916236A (zh) * 2014-04-25 2014-07-09 东南大学 面向aes算法的抗功耗攻击方法及电路实现
CN110401627A (zh) * 2019-01-31 2019-11-01 中国科学院软件研究所 一种适用于分组密码算法感染防护的抗差分故障攻击安全性评估方法和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
一种SM4算法S盒的门限实现方案;李新超;《密码学报》;20181231;第5卷(第6期);第641-650页 *

Also Published As

Publication number Publication date
CN111224770A (zh) 2020-06-02

Similar Documents

Publication Publication Date Title
Gierlichs et al. Infective computation and dummy rounds: Fault protection for block ciphers without check-before-output
Fuhr et al. Fault attacks on AES with faulty ciphertexts only
Subramanian et al. Reliable hardware architectures for cryptographic block ciphers LED and HIGHT
CN111224770B (zh) 一种基于门限技术的抗侧信道与故障攻击的综合防护方法
Rivain Differential fault analysis on DES middle rounds
Saha et al. RK‐AES: An Improved Version of AES Using a New Key Generation Process with Random Keys
Khanna et al. XFC: A framework for exploitable fault characterization in block ciphers
CN110401627B (zh) 一种适用于分组密码算法感染防护的抗差分故障攻击安全性评估方法和系统
US20130129081A1 (en) Low-complexity electronic circuit protected by customized masking
Dassance et al. Combined fault and side-channel attacks on the AES key schedule
Dutertre et al. Fault round modification analysis of the advanced encryption standard
Jeong Differential fault analysis on block cipher Piccolo
Pan et al. One fault is all it needs: Breaking higher-order masking with persistent fault analysis
Joshi et al. SSFA: Subset fault analysis of ASCON-128 authenticated cipher
Salam et al. Random differential fault attacks on the lightweight authenticated encryption stream cipher grain-128AEAD
Debraize et al. Fault analysis of the stream cipher snow 3G
CN104484615B (zh) 适用于可重构阵列架构的基于空间随机化抗故障攻击方法
Zhao et al. Algebraic fault analysis on GOST for key recovery and reverse engineering
Guo et al. Provably secure concurrent error detection against differential fault analysis
Phan et al. Amplifying side-channel attacks with techniques from block cipher cryptanalysis
Guo et al. NREPO: Normal basis recomputing with permuted operands
Biryukov et al. Differential resynchronization attacks on reduced round SNOW 3G⊕
Shah et al. A new guess-and-determine attack on the A5/1 stream cipher
Potestad-Ordóńez et al. Hamming-code based fault detection design methodology for block ciphers
Karri et al. Parity-based concurrent error detection in symmetric block ciphers

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