Page 372 - 《软件学报》2025年第5期
P. 372
2272 软件学报 2025 年第 36 卷第 5 期
DEFAULT 密码算法的参数和加解密过程. 第 3 节提出基于代数关系的统计故障分析, 具体包括基本假设、故障
模型、S 盒分析及主要步骤. 第 4 节从故障数和时间等多个指标分析实验结果. 第 5 节总结全文.
1 相关工作
自 DEFAULT 密码于亚洲密码学年会公布以来, 研究学者对其安全性进行了深入研究 [26−28] . 设计者 Baksi 等
人 [26] 指出, DEFAULT 密码不仅可以抵御线性分析、差分分析等经典密码分析方法, 而且能够抵抗常见侧信道分
析. 2021 年, Dey 等人 [27] 针对该密码实现了差分故障攻击, 通过在最后一轮注入故障进行筛选, 利用差分关系, 将
密钥空间缩减到 2 16 . 后来, 设计者升级了密钥编排方案的构造, 将每轮运算采用相同的原始密钥, 更新为基于原始
密钥产生 4 个轮密钥, 循环参与到每轮运算中 [26] . 2022 年, Nageler 等人 [28] 在最后一轮注入半字节故障, 结合最后
6 轮的逐轮故障注入, 并建立归一化方程, 利用差分故障分析进一步降低了分析代价. 同年, Jang 等人 [30] 提出了
DEFAULT 密码的量子实现并证明其安全性. 表 1 给出了 DEFAULT 密码的现有安全性分析方法比较.
表 1 DEFAULT 密码的安全性分析对比
分析类型 基本假设 攻击轮数 首次故障注入轮 文献
线性分析 已知明文攻击 11 - [26]
不可能差分分析 选择明文攻击 7 - [26]
差分分析 选择明文攻击 8 - [26]
代数分析 选择明文攻击 8 - [26]
积分分析 选择明文攻击 12 - [26]
差分故障分析 选择明文攻击 80 倒数第1轮 [27,28]
统计故障分析 唯密文攻击 80 倒数第3轮 本文
在基于代数关系的密码分析发展历程中, 国内外学者提出了多种攻击方法, 例如代数分析、代数故障分析等,
用于检验密码的设计和实现安全性. 2003 年, Courtois 等人 [31] 首次提出了代数分析, 通过将密码表示为包含若干变
量的方程组, 并将搜集到的明文密文对代入方程求解, 进而破译了 Toyocrypt 和 LILI 等流密码. 2007 年, Courtois
等人 [32] 针对分组密码 DES 算法的组成部件分别建模为代数方程, 利用代数求解器为方程求解, 有效提升了分析效
率. 2009 年, Courtois 等人 [33] 针对流密码 Hitag2, 使用代数求解器实现了代数攻击, 可以在 6 h 内恢复完整密钥.
2013 年, Zhang 等人 [34] 针对轻量级分组密码 Piccolo 算法采用代数故障分析方法, 对加解密过程和密钥编排算法
建立代数方程, 仅需单个故障破译出全部密钥. 2014 年, Zhao 等人 [35] 仅用 8 个故障实现了针对分组密码 GOST 的
代数故障分析, 提高了攻击效率. 2017 年, Chen 等人 [21] 针对分组密码 HIGHT, 提出用一组代数方程组来表示密码
和注入故障的方法, 实现了代数故障分析. 2019 年, Le 等人 [22] 通过引入差分轨迹, 借助求解器实现了针对分组密
码 SIMON 的代数差分故障分析. 2021 年, Gruber 等人 [36] 通过注入单比特翻转故障, 实现了认证加密算法
Subterranean 2.0 的代数故障分析. 近两年, Fang 等人 [37,38] 基于 S 盒分解, 使用代数持续故障分析, 在 9 s 内破译了
分组密码 SKINNY. 2023 年, Qiu 等人 [39] 改进代数系统, 加快了求解效率, 将代数故障分析应用于 AES、Serpent
和 SPEEDY 等经典分组密码中, 拓展了代数故障分析的攻击范围. 上述分析方法均在选择明文攻击下实现, 利用
代数关系对加密过程或密钥编排算法建立代数方程, 再求解并筛选密钥.
2013 年, Fuhr 等人 [18] 首次提出了统计故障分析, 该方法利用故障注入产生的随机故障密文, 根据加密过程可
以计算部分中间状态值, 然后结合统计关系, 利用区分器对密钥进行筛选, 成功破译了 AES 分组密码. 统计故障分
析基于唯密文的基本假设, 仅要求攻击者能够截获密文即可, 对攻击者的能力要求最弱, 因此在实际中更容易实
现. 2017 年, Nozaki 等人 [40] 使用统计故障分析, 通过引入时钟故障并对最后两轮加密过程进行分析, 成功破译了
Midori 轻量级分组密码算法. 2019 年, Ramezanpour 等人 [41] 通过在最后一轮的一对 S 盒中注入故障, 实现了对
ASCON 认证加密算法的统计故障分析. 2021 年, 李玮等人 [19] 通过在倒数第 2 轮注入半字节随机故障, 实现了对轻
量级分组密码 Piccolo 的统计故障分析. 2022 年, Bagheri 等人 [25] 通过引入持续故障, 实现了对 DES 和 Camellia 等
分组密码的统计无效持久故障分析.