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

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

A comprehensive protection method against side channel and fault attack based on threshold technology

【技术实现步骤摘要】
一种基于门限技术的抗侧信道与故障攻击的综合防护方法
本专利技术涉及信息安全分组密码分析和防护领域,特别涉及一种基于门限技术的抗侧信道攻击和故障攻击的综合防护方法。
技术介绍
对称密码是通信双方共享同一个秘密密钥的密码体制。其中分组密码算法是一类广泛使用的对称密码。分组密码算法的常见结构有Feistel结构、SP结构等,算法中密码变换函数的设计通常遵循混淆和扩散的安全性原则,并通过多轮迭代操作使其能够抵抗现有的所有理论分析方法,例如差分分析、线性分析、积分攻击和插值攻击等。分组密码算法具有运行速度快、易于标准化和便于软硬件实现的特点,适用于各种嵌入式系统实现。随着物联网的高速发展,分组密码的实现载体和应用场景日趋多元化,这使得实现安全成为分组密码分析的研究热点。侧信道攻击是一类常见的密码实现分析方法。它的可行性在于密码算法需要以密码芯片、嵌入式密码模块等为载体实现。这些芯片、模块在执行密码运算的过程中会泄漏与加密中间值或加密操作相关的物理侧信息,如加密时长、能量消耗、电磁辐射等。在了解侧信息对加密信息的依赖关系的情况下,攻击者可通过采集、解析物理信息,从中恢复出秘密中间值或密钥。由于加密过程中泄漏的侧信息种类繁多,侧信道分析方法多样且复杂度明显低于传统密码分析方法,侧信道攻击对密码实现的安全性造成很大的威胁。实验表明,几乎所有未添加防护措施的密码实现都无法抵抗侧信道攻击。相关能量攻击是侧信道攻击的经典方法之一。攻击者首先变换明文输入,采集整个密码模块在多次加密中能耗信息;然后根据已知的明文(密文)和猜测的密钥,构造假设加密中间值和假设能量消耗;最后计算假设能量消耗与电路实际能耗的相关性,从而区分出相关性最大的密钥猜测。探测攻击是一种更细致的侧信道攻击,攻击者可直接使用探针探测芯片电路信号线上的具体电平,从而直接得到加密中间值的数值信息用于密钥恢复。从可行性的角度考虑,探测攻击通常限定敌手不能在短时间内,如一个时钟周期内,移动探针所在的信号线的位置。侧信道攻击的阶数d反映了攻击所考虑的信号的个数。d阶相关能量攻击通常联合d个不同时刻的能耗采样点,以构造出“新”的实测能耗用于相关性计算。d阶探测攻击是指攻击者同时探测d根信号线上的信息,用于密钥恢复。故障攻击是另一类常见的密码实现分析方法。它的可行性在于密码芯片、嵌入式密码模块等密码实现的正常运行依赖于稳定且适合的供电、时钟、温度等环境因素。当攻击者可以改变环境因素使其超过某阈值,即可引发加密故障。故障加密过程中泄漏的额外信息,如故障密文、故障参数等均可用于密钥恢复。由于产生故障的方式多样,故障类型丰富,密钥恢复方法灵活且复杂度明显低于传统密码分析方法,故障攻击对密码实现的应用造成很大的威胁。实验表明,几乎所有未添加防护措施的密码实现都无法抵抗故障攻击。差分故障攻击是故障攻击中最常用的方法之一。针对分组密码算法的差分故障攻击(DifferentialFaultAnalysis,DFA)是1997年由Biham和Shamir首次提出的。其攻击前提为敌手可以使用相同的密钥对相同明文分别进行两次加密,一次为正确加密,输出正确密文,另一次在加密过程中注入故障,为故障加密,输出故障密文。攻击者在了解故障注入目标和故障注入模型的情况下对正确和故障密文组合进行差分分析,恢复故障传播过程中涉及的密钥,因此被称为差分故障分析。由攻击流程可知差分故障攻击是一种依赖于故障密文具体数值的攻击方法,类似的攻击还有不可能差分故障攻击、积分故障攻击、代数故障攻击等。故障敏感度攻击是一种不依赖于故障密文具体数值的攻击方法。该攻击以故障注入参数作为注入目标中间值的侧信息,根据故障是否注入成功、密文是否出错等指示信息来推测注入目标中间值的具体数值。类似的不依赖故障密文具体数值的攻击方法还有无效故障攻击。该攻击以故障模型的不均匀程度作为注入目标中间值分布特征的侧信息。考虑到侧信道攻击和故障攻击对密码模块的安全威胁,各国密码产品测评机构均要求高等级密码模块中应包含针对侧信道攻击和故障攻击的防护措施。学术界和工业界已提出一系列具体的防护方法。门限实现是一种抵抗侧信道攻击的防护技术,由Nikova等人于2006年首次提出。已有文献证明,针对分组密码的d阶门限实现可抵抗d阶差分能量攻击和d阶探测攻击。下面以密码运算f(x)=y为例,介绍d阶门限实现的防护思路。首先,添加Sx-1个随机数,将待加密的输入x划分为Sx个取值均匀的输入份额(x1,x2,…,xSx-1,xSx),与原输入x满足异或相等关系,其次,将运算f(x)拆分成Sy个份额运算fi(Xi),其中i=1,…,Sy,Xi为{x1,x2,…,xSx-1,xSx}的子集。运算拆分满足正确性、非完备性和均匀性三个特征。其中,正确性指所有份额运算的结果与原运算结果满足异或相等关系,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,的门限实现。设密码运算y′=f(x’)的代数次数为2,图1给出了该运算1阶门限实现的拆分示意。其中,份额个数Sx=Sy=3,(r1,r2)为两个均匀独立的随机数,为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个字本文档来自技高网...

【技术保护点】
1.一种基于门限技术的抗侧信道与故障攻击的综合防护方法,其特征在于,包括以下步骤:/n根据侧信道攻击的阶数d,构造分组密码算法的d阶门限实现,作为原始门限实现;/n为分组密码算法构造与原始门限实现完全相同的d阶门限实现,作为冗余门限实现;/n以相同的明文为加密输入,同步执行原始门限实现和冗余门限实现的加密流程,在加密流程中执行交换操作,交换原始门限实现和冗余门限实现的部分份额;/n当所有加密流程和交换操作结束后,输出原始门限实现的密文,作为防护加密的密文。/n

【技术特征摘要】
1.一种基于门限技术的抗侧信道与故障攻击的综合防护方法,其特征在于,包括以下步骤:
根据侧信道攻击的阶数d,构造分组密码算法的d阶门限实现,作为原始门限实现;
为分组密码算法构造与原始门限实现完全相同的d阶门限实现,作为冗余门限实现;
以相同的明文为加密输入,同步执行原始门限实现和冗余门限实现的加密流程,在加密流程中执行交换操作,交换原始门限实现和冗余门限实现的部分份额;
当所有加密流程和交换操作结束后,输出原始门限实现的密文,作为防护加密的密文。


2.如权利要求1所述的方法,其特征在于,原始门限实现的份额划分方法为将加密输入、加密中间值和加密结果均划分为至少d+1个份额。


3.如权利要求2所述的方法,其特征在于,对于原始门限实现的份额,其中一个份额由所有份额的异或关系等于加密输入生成,其他份额由与其同等数量的随机数生成。


4.如权利要求2所述的方法,其特征在于,冗余门限实现与原始门限实现的份额划分方法相同,且使用的随...

【专利技术属性】
技术研发人员:陈华冯婧怡匡晓云焦志鹏杨祎巍李昊远范丽敏
申请(专利权)人:中国科学院软件研究所南方电网科学研究院有限责任公司
类型:发明
国别省市:北京;11

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

1