AES算法加密算法中的安全隐患

参考资料:基于旁路分析的硬件木马设计实现 国防科技大学硕士学位论文
在公开加密算法中,数据变换的细节都是公开可知的,算法的安全性完全由算法密钥的安全来保证。因此,对于AES这种公开加密算法,攻击者只要在知道一定的算法实现细节情况下就可以有效地选择分析目标并进行相关性分析攻击。
(对于做硬件的,只关心加密算法在实现过程中可能发生的侧信道攻击,算法本身容易受到算法分析攻击的漏洞不做考虑,也考虑不起。)
文中提出了识别密码算法易受差分功耗攻击漏洞的方法(简言之:攻击条件,因为攻击能力有限)
设某中间变量z与部分密钥k存在数据相关且z未被随机掩码,即z=f(M,k)或z=f(C,k),且k为可穷举的;
当明文M(或密文C)和k的值确定(遍历猜测k)时,攻击者可以根据z的值将功耗样本至少划分为两个子集(每个子集只有k不同);
此时攻击者即可实施关于z且目标密钥为k的差分功耗攻击DPA。
功耗攻击的可行性:
密码算法部件所消耗的功耗与密钥之间具有相关性。这是因为当前集成电路大都采用静态CMOS单元实现,这种电路结构在工作时所消耗的功耗与其输入输出翻转状态密切相关。
简单的说,当CMOS逻辑门的输出端发生0->1(or 1-> 0)的翻转时,会产生从电源到输出端的充电电流(or 从输出端到地的放电电流);
而当CMOS的逻辑门在连续的两个时钟周期都保持相同的信号值时,则不会产生动态电流。
在宏观上这就表现为逻辑门在有信号翻转时会消耗更多的功耗,这就给芯片攻击者提供了分析依据。

这篇文章的结构:前半部分除了第一章都在介绍差分功耗攻击,做了一次攻击的实验,最后又加上了防护,使得功耗攻击失效;剩下的部分在说硬件木马是如果破除防护,从而加强了防护下的功耗攻击。

猜你喜欢

转载自www.cnblogs.com/zhanghaha-zzz/p/12027641.html