中文

Rosita++:从密码学代码中自动消除高阶泄露

密码学与安全 2021-09-27 v1

摘要

侧信道攻击对密码实现的安全性构成重大威胁,尤其对于处于敌手物理控制下的小型设备。尽管存在若干抵御侧信道攻击的策略,这些策略常因CPU深处数值间非预期的相互作用而在实践中失效。为检测并防护侧信道攻击,近期已有若干自动化工具被提出;其共同局限之一是仅支持一阶泄露。本工作中,我们提出首个用于检测并消除密码实现中高阶泄露的自动化工具。Rosita++提出基于统计与软件的工具有以实现高性能的高阶泄露检测。随后其利用Rosita(Shelton等人,NDSS 2021)的代码重写引擎消除所检测到的泄露。为实用起见,我们针对二阶与三阶泄露评估Rosita++,但我们的框架并不限于这些阶数。我们以两个密码PRESENT与Xoodoo的三共享实现,以及二阶布尔到算术掩码(包括SHA-2、ChaCha与Blake在内的许多密码原语掩码实现的核心构建块)来评估Rosita++的二阶泄露。我们展示了有效的二阶泄露消除,性能开销分别为Xoodoo 36%、PRESENT 189%、布尔到算术掩码29%。对于三阶分析,我们以对应典型四共享处理的四共享合成示例评估Rosita++的三阶泄露。Rosita++正确识别了该泄露并应用了代码修复。

关键词

引用

@article{arxiv.2109.11741,
  title  = {Rosita++: Automatic Higher-Order Leakage Elimination from Cryptographic Code},
  author = {Madura A. Shelton and Łukasz Chmielewski and Niels Samwel and Markus Wagner and Lejla Batina and Yuval Yarom},
  journal= {arXiv preprint arXiv:2109.11741},
  year   = {2021}
}