密码算法不运行也会有泄露

一颗小胡椒2022-01-26 05:08:02

背景介绍

CMOS电路已经占据IC市场40余年,它可以持续占据市场这么久的一个重要的原因是它的闲置功耗比较低。当CMOS电路中的逻辑门不翻转,即保持当前状态的时候会有漏电流出现,此时CMOS门会产生静态能量消耗。对于逻辑门来说不同的输入产生的漏电流大小不同,会导致密码运算的中间值与静态能量消耗有关。

2021年,CHES会议上Thorben Moos和Amir Moradi讨论了对静态能量泄露的防护并利用PRESENT-80密码算法进行实验。目前常用的软硬件密码算法的防护方法有:HVT(高电压阈值)、RSIS(随机开始索引)、SDRL(平行双轨逻辑)、QuadSeal(四对称平行算法)和Threshold Implement(门限实现)。他们又提出了一种自己的方法用于防止静态能量攻击——ELB(逻辑消耗平衡)[1]。

 不同防护方法介绍

低电压阈值的逻辑门反转速度比较快,所以经常用在比较重要的电路中,能量消耗较大。在对时间限制要求不高时,高电压阈值的逻辑门可以被用在任何电路中,能量消耗较小。HVT就是利用能量消耗小导致的低信噪比来降低相关性来进行静态能量防护。

在侧信道防御技术中,改变密码算法的执行路径是一个常用的方法,RSIS是随机选择16个S-box字节替换的起点。作者设计的硬件电路结构如图1所示,正常的硬件电路比特置换部分接收输入布线,而作者设计的电路需要先接收一个4比特的随机开始的选择逻辑电路,来决定哪些字节应该被反转。

图1. 加入RSIS防护的PRESENT-80硬件密码电路实现方案

平衡能量消耗也是侧信道防护技术中常用的手段,QuadSeal每次计算S(state⊕key)、S(state⊕key*)、S(state*⊕key)和S(state*⊕key*)(其中*运算为二进制表示下去反运算)来平衡汉明距离和汉明重量。这种方法可以很好的减少寄存器泄露,对于组合电路实现的密码算法有一定的防护作用。

SDRL思想非常简单,为了降低输入向量和逻辑门之间的相关性,每个逻辑门都变成双份,并且有着相反的逻辑输入值,如下图2所示。

图2. 平行双轨逻辑INV、NOR和D触发器

作者提出的ELB与SDRL想法相近,并且可以克服SDRL不能完全平衡泄露电流的问题。作者的想法是使得每一个门都能接收到所有可能的逻辑输入,从而设计出能量平衡的逻辑门。在作者后续的实验中,他们采用的逻辑门示例如图3中的 NOR和图4 中的D触发器所示。

图3. 功耗平衡NOR门

图4. 利用ELB实现的NOR门组成的功耗平衡的D触发器

在动态能量攻击下,门限掩码可以很好的防止高阶泄露,并且对于静态能量攻击者也需要大量的观测才能得到有用的信息。对于PRESENT-80的S-box的代数最高阶为3,所以需要至少4 shares才能保证一阶安全。如果直接这样实现会导致芯片面积过大。所以论文作者把S-box分解成函数F和函数G,这两个函数的代数阶都是2,这样只需要3 shares的门限实现,实现的架构如图5所示。并且,门限掩码方案可以和上面几种保护措施一起实现。

图5. 串行PRESENT-80的门限实现

实验设置

论文作者使用的密码芯片如图6所示,他们的实验测量装置如图7所示。

图6. 组合电路实现的ASIC原型

图7. 实际实验中的装置

由于实验中温度会影响结果,所以他们利用一个温控箱进行温度的设置,具体设置如图7(a)所示,图7(b)可以测量电流大小并且可以给芯片供电,测量静电流的步骤为:

①FPGA(图7(c)板中最左边的模块)板子停止时钟,让PRESENT-80加密算法停止在第一轮,此时它产生一个触发信号给SMU。

②SMU接收到触发信号后等待20ms,在这20ms里测量电流,并将测量结果保存在内部缓存里,SMU睡眠等待下一次触发。

③时钟信号继续,PRESENT-80算法结束运算。

实验结果

论文作者采用的泄露分析方法是fixed vs fixed方法进行t-test,在20℃,0.9V下进行的泄露评估。其中HVT法效果最差,QuadSeal法和ELB法在卡方检测中无泄露。但只有论文中提出里的ELB法在t检验和卡方检验中没有泄露。由此,可以看出来他们设计的ELB组合电路可以有效地对抗静态能量攻击。

结论

目前大多数侧信道攻防的研究人员关注重点都在动态能量泄露,而静态能量也泄露着敏感的密码运算的中间值,所以对于静态能量的防护十分必要。常用的防护方法主要有加掩码和平衡功耗两种手段。作者通过分析和实验对文中提到的几种防护方法进行了评估,提出了一种基于能量消耗平衡的防护方法并结合门限掩码大幅度降低泄露。

参考资料

[1] Moos, Thorben, and Amir Moradi. "Countermeasures against Static Power Attacks:–Comparing Exhaustive Logic Balancing and Other Protection Schemes in 28 nm CMOS–." IACR Transactions on Cryptographic Hardware and Embedded Systems (2021): 780-805.

密码算法
本作品采用《CC 协议》,转载必须注明作者和本文链接
对静态能量攻击的防护
五种分组密码算法
2023-12-11 08:59:36
五种分组密码算法
现在,俄罗斯的密码学研究已经被公认具有一流水平。· 安全性较高,抗各种攻击手段,包括差分攻击、线性攻击等。在俄罗斯国内,VKO 算法已被广泛应用于国家机密信息的保护和加密处理中。该算法是俄罗斯国家信息安全标准,用于保护政府、军队、金融等机构的机密信息。MAG 算法已经成为俄罗斯国家信息安全标准,有望在该国范围内得到广泛的应用。
2021年6月25日,我国SM4分组密码算法作为国际标准ISO/IEC 18033-3:2010/AMD1:2021《信息技术 安全技术 加密算法 第3部分:分组密码 补篇1:SM4》,由国际标准化组织ISO/IEC正式发布。
4月24日,在第60次国际标准化组织、国际电工委员会第一联合技术委员会信息安全分技术委员会(ISO/IECJTC1SC27)工作组会议上,含有我国ZUC序列密码算法的ISO/IEC18033-4/AMD1《加密算法第4部分:序列算法-补篇1》获得一致通过,成为ISO/IEC国际标准,进入标准发布阶段。
环签名算法种类很多,大多数算法设计基于双线性对或大素数难分解,在安全性和运算速度方面有待提高。与基于椭圆曲线离散对数相比,双线性对的优势并不明显,因为它无法运用一样长度的密钥提供同样的安全性能。为了能够提升方案的安全性以及能够保证签名者身份的完全匿名性,基于SM2商用密码算法设计了一个新的环签名方案。利用单向函数设计签名算法,并对方案的安全性进行了严格证明,保证了新方案的正确性、安全性与隐匿性。
对AES-like算法的完整逆向框架讨论
由一汽智能网联开发院、吉林省汽车电子协会联合主办的“首批基于商用密码算法的智能网联汽车信息安全标准项目发布会暨2021智能网联汽车信息安全技术创新合作研讨会”2021年12月24日在长春举行。
2021年6月25日,我国SM4分组密码算法作为国际标准ISO/IEC 18033-3:2010/AMD1:2021《信息技术 安全技术 加密算法 第3部分:分组密码 补篇1:SM4》,由国际标准化组织ISO/IEC正式发布。
一颗小胡椒
暂无描述