Skip to main content
QUICK REVIEW

[论文解读] Formal Analysis of CRT-RSA Vigilant's Countermeasure Against the BellCoRe Attack: A Pledge for Formal Methods in the Field of Implementation Security

Pablo Rauzy, Sylvain Guilley|arXiv (Cornell University)|Jan 31, 2014
Security and Verification in Computing参考文献 15被引用 4
一句话总结

该论文使用增强的符号计算工具(finja)对Vigilant的CRT-RSA抗BellCoRe故障注入攻击对策进行了形式化验证与简化。研究发现原始对策存在漏洞,但其严重性低于先前预期,因此作者在形式化证明简化后的版本仍能抵御永久性与瞬时性故障(包括清零与随机化故障)的基础上,成功消除了Coron等人修复版本中的九个模运算校验中的两个。

ABSTRACT

In our paper at PROOFS 2013, we formally studied a few known countermeasures to protect CRT-RSA against the BellCoRe fault injection attack. However, we left Vigilant's countermeasure and its alleged repaired version by Coron et al. as future work, because the arithmetical framework of our tool was not sufficiently powerful. In this paper we bridge this gap and then use the same methodology to formally study both versions of the countermeasure. We obtain surprising results, which we believe demonstrate the importance of formal analysis in the field of implementation security. Indeed, the original version of Vigilant's countermeasure is actually broken, but not as much as Coron et al. thought it was. As a consequence, the repaired version they proposed can be simplified. It can actually be simplified even further as two of the nine modular verifications happen to be unnecessary. Fortunately, we could formally prove the simplified repaired version to be resistant to the BellCoRe attack, which was considered a "challenging issue" by the authors of the countermeasure themselves.

研究动机与目标

  • 对Vigilant的CRT-RSA对策在BellCoRe故障注入攻击下的安全性进行形式化分析,该对策此前因分析工具算术能力有限而难以形式化验证。
  • 扩展finja工具,增加对复合度剩余类与离散对数性质等关键特性的高级模运算支持,以分析Vigilant方案。
  • 在包含永久性与瞬时性故障(含或不含清零)的综合故障模型下,评估Vigilant对策原始版本与修复版本的安全性。
  • 通过识别并移除冗余验证检查,在不损害安全性的前提下对修复后的对策进行简化。
  • 展示形式化方法在识别实现缺陷与实现安全、轻量级对策设计中的关键作用。

提出的方法

  • 在finja工具中增强符号计算能力,特别支持复合度剩余类中离散对数相关的模运算性质。
  • 应用扩展后的finja框架,对Vigilant原始版本及Coron等人修复后的CRT-RSA对策在BellCoRe攻击下的安全性进行形式化验证。
  • 开展完整的故障覆盖分析,建模了永久性故障(如内存中)与瞬时性故障(如总线或寄存器堆中数据传输期间)。
  • 采用包含清零故障与随机化故障的故障模型,攻击可发生在CRT-RSA计算流水线的多个位置。
  • 识别并形式化证明:修复对策中九个模运算校验中的两个是冗余的,因此可被安全移除。
  • 验证简化后对策对单故障与双故障攻击的抵抗能力,包括利用中间步骤验证不平衡性而发起的双故障攻击。

实验结果

研究问题

  • RQ1Vigilant原始CRT-RSA对策是否对BellCoRe故障注入攻击具有安全性?在综合故障模型下是否仍保持安全?
  • RQ2Coron等人修复后的Vigilant对策能否在不损害其抗故障攻击能力的前提下被进一步简化?
  • RQ3修复对策中是否存在可被形式化移除而仍保持安全性的冗余验证步骤?
  • RQ4形式化验证在多大程度上揭示了人工分析或启发式优化所遗漏的漏洞?
  • RQ5形式化方法能否在加密对策中同时实现安全加固与性能优化?

主要发现

  • 原始Vigilant对策被形式化证明对BellCoRe攻击存在漏洞,与初始假设相反,但其漏洞严重性低于先前预期。
  • Coron等人修复后的对策被形式化证明在综合故障模型下对永久性与瞬时性故障(包括清零与随机化故障)均具有安全性。
  • 修复对策中九个模运算校验的两个被形式化证明为冗余,从而可实现更简化且高效的实现。
  • 简化后的对策仍能完全抵御BellCoRe攻击,包括利用中间步骤验证不平衡性而发起的双故障攻击。
  • 形式化分析揭示:原始方案中为提升速度而引入的优化意外引入了漏洞,后由Coron等人修复,凸显了启发式开发的风险。
  • 本研究证明,形式化方法不仅有助于验证安全性,还能通过识别并移除冗余校验,实现优化。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。