论文部分内容阅读
旁路攻击是指利用密码算法实现中运算泄露的信息,如执行时间、功耗、电磁辐射等,来恢复其中秘密信息的密码分析方法。得益于强大的攻击效果,旁路攻击从上世纪90年代末期开始逐渐成为硬件安全的重要威胁之一。作为旁路攻击的一种常用手段,功耗分析是指利用密码电路泄露的功耗信息进行分析的一种方法。其优势在于旁路信息采集过程不影响密码电路的运行、易于实现且攻击效果好,也是目前旁路攻击检测的主要手段之一。近年来,功耗分析和其防护技术引起了国内外从事密码和微电子的研究者们的关注,并成为密码分析和密码工程领域发展最为迅速的方向之一。随着芯片工艺的发展与功耗信息采集设备的更新换代,当前功耗分析和其防护技术面临如下问题:1)由于密码算法实现的多样性,常用功耗分析方法在新的实现方式中变得不再适用,需要改进已有的分析方法,或提出一些新的方法;2)由于密码设备安全需求的增长、功耗信息采集精确度的提高和分析方法的多样化,功耗防护技术需要进一步加强。为了解决这两个问题,本文提出了基于岭回归的建模攻击方法和非模板的DPA方法,并且提出了布尔矩阵掩码防护方案。模板攻击作为功耗分析的一种,首先利用一个已知密钥的密码电路建立相应的功耗泄露模型,然后利用这个功耗泄露模型对待测电路进行攻击。对于纳米级工艺(65nm以下)下的密码设备,更小的制程使得泄露的功耗信息变得更加复杂,大大降低了常用的建模方法的效率。基于统计学习中的岭回归技术,本文提出了岭回归建模方法,岭回归建模方法可以有效地针对纳米级工艺下密码电路的非线性泄露进行建模,并且能很好地处理建模电路与待测电路之间存在一定差异的情况,使得建模过程更具有鲁棒性。同时,考虑到计算的时间复杂度,本文提出了一个基于预计算查找表的岭回归建模快速实现方法。本文在理论上对岭回归建模进行了分析,研究结果表明了,岭回归建模在处理非线性泄露时,比常用的建模方法效率更高。而基于仿真和FPGA的实验结果都验证了岭回归建模优于已知的常用建模方法,并且更具有鲁棒性。在很多的场景中,攻击者(测试者)往往不具有建模设备,此时常用的功耗分析方法都会借助于一些电路相关的泄露假设(即功耗模型,如汉明重量、汉明距离等)进行分析。在纳米级工艺下,由于功耗泄露情况变得更加复杂,典型的功耗模型往往不能很好地反映真实的泄露情况。而本文把岭回归建模推广到不具有建模设备的情况下,从而提出了岭回归差分功耗分析方法。这种新的攻击方法不需借助任何功耗模型,在理论上适用于任何泄露场景,克服了传统差分功耗分析依赖于功耗模型选择的问题。在理论分析中,本文阐述了新方法的通用性与实用性。同时,仿真实验和基于FPGA的实验结果都表明了,新方法的优势随着功耗泄露复杂性的提高而更加突出。掩码是抵抗旁路分析(尤其功耗分析)最有效的技术之一。研究与实践表明,作为典型且最常用的掩码方案,布尔掩码在低噪声、高阶泄露的情况下存在安全问题。而高安全掩码则与之相反,在低噪声、高阶泄露的情况下,这类掩码仍可具有安全性。但是,目前已有的高安全掩码方案只能有效地防护部分特定的分组密码算法。基于上述问题,本文提出了一种新型的高安全掩码方案,其优势在于可以高效地防护大部分的分组密码算法,特别是目前非常有前景的、基于Bitslice型S盒构造的分组密码算法。本文给出了新型掩码的安全性证明,并分析了该掩码在低噪声、高阶泄露情况下的安全性,结果表明其泄露远远小于常用的布尔掩码。同时,本文在效率上比较了布尔掩码和新型掩码的实现代价,结果说明了新型掩码方案在适用性、安全性以及效率上的平衡更好。针对现实中的密码应用——Yubi Key,本文进行了功耗分析实践。对于Yubi Key的攻击,本文给出了Yubi Key触发与功耗采集实施的方案,并根据Yubi Key的认证协议设计了恢复密钥的攻击流程。