Page 433 - 《软件学报》2026年第2期
P. 433
912 软件学报 2026 年第 37 卷第 2 期
3.2.2 私有分组密码的差分能量分析测评
芯片 G 是一款智能卡芯片, 实现了对 4 字节的明文进行加密, 并返回 4 字节密文, 密钥为 8 字节. 对于芯片 G
算法中的加密过程、密钥值和防护方式的具体实现, 我们均不知. 由于私有密码算法差分能量分析方法中的
TVLA-1 方法能够有效检测明文及中间值带来的能量信息泄露, 我们使用 TVLA-1 方法检测芯片 G 的安全性.
我们使用固定明文和随机明文进行加密, 采集得到 10 000 条能量波形, 如图 30 所示, 每条波形有 30 000 个采
样点. 其中, 固定明文的值为 p = 0x375C6AB9, 随机明文的值为随机生成的 4 字节数据, 使用固定明文和随机明文
采集得到的波形数量约为 1:1. 根据波形特征和分组密码算法相关知识, 我们猜测在 120–1 120 μs 区间内算法在执
行密钥扩展, 1 120–2 160 μs 区间内算法在执行加密, 需要分析的为加密阶段.
25 *10 mV TVLA random-1
20
15
10
5
0
−5
−10
−15 *10 μs
20 40 60 80 100 120 140 160 180 200 220 240
图 30 芯片 G 能量波形
以密钥扩展结束后加密开始位置的波形片段为模板, 对采集的 10 000 条能量波形执行静态对齐, 然后进行
TVLA-1 分析, 得到的 t 值结果曲线如图 31 所示, 加密的大部分区域 t 值大于 4.5, 存在明显的信息泄露.
12 *10 Trace 0-1
11
10
9
8
7
6
5
4
3
2
1 *10 μs
0
20 40 60 80 100 120 140 160 180 200 220 240
图 31 芯片 G 的 TVLA-1 分析结果
4 总 结
近年来, 非入侵式攻击对密码芯片的安全性造成了严重威胁. 国际标准 ISO/IEC 17825:2016、国内标准 GM/T
0083-2020 中给出了非入侵式攻击检测流程与方法, 用于检测密码模块的抗非入侵式攻击能力, 但这些标准是针对
公开算法制定的, 不适用于使用私有算法的密码芯片, 存在局限性. 基于这一现状, 本文研究了黑盒条件下私有算
法密码芯片的非入侵式攻击检测方法, 提出了私有算法密码芯片非入侵式攻击检测框架. 该框架包含私有密码算
法的计时分析测试、简单能量/电磁分析测试、差分能量/电磁分析测试这 3 大部分, 无需了解密码算法中间细节,
大大扩展了密码芯片非入侵式安全的检测范围. 本文对多款密码芯片开展黑盒条件下简单能量分析测评和差分能
量分析测评实验, 实验表明, 我们的方法能够在一定程度上检测私有算法密码芯片的抗能量攻击能力. 私有算法密
码芯片非入侵式攻击检测这一方向具有广阔前景, 未来我们还会在目前研究的基础上继续探索, 尝试通过更多的
方法对私有算法密码芯片进行检测, 例如, 可以尝试结合机器学习方法进行黑盒能量分析检测等.

