一种NoisyRounds 保护的白盒AES 实现及其差分故障分析 - SUN, Tao; Guo-Jun, TANG; Xin-Kai, WU; Zhen-Ning, MAO; GONG, Zheng; 孙涛; 唐国俊; 吴昕锴; 毛振宁; 龚征 (Journal of Cryptologic Research, 2020)
差分故障分析 (differential fault analysis, DFA) 是一种通过对密码算法中间状态注入错误从而获取密钥信息的侧信道攻击方法. 由Bos等人创造性的用于白盒分组密码方案并成功破解多个公开发表的白盒AES实现 . 本文基于随机冗余轮函数 (DummyRounds) 和 Chow 等人的AES 白盒实现 (以下简称Chow-WBAES), 提出一种称为 NoisyRounds 的白盒AES安全加固方案 (以下简称NoisyRounds-WBAES). 该方案通过改变Chow-WBAES的第 10 轮并在其后添加相互抵消的结构, 使得NoisyRounds-WBAES能对DFA分析产生混淆作用. 通过NoisyRounds-WBAES与Chow-WBAES实施DFA攻击的分析结果表明, 在带外部编码的情况下, NoisyRounds 与现有保护方案一样能抵抗 DFA 工具的分析. 但相应的算法的输出结果也将带上外部编码, 从而失去不同系统间的兼容性, 在不带外部编码的情况下, n组 NoisyRounds 对 DFA 分析将产生 O(n4) 的计算复杂度.