Page 419 - 《软件学报》2026年第2期
P. 419
898 软件学报 2026 年第 37 卷第 2 期
度越弱, 由此构成专用二维图形界面, 以宏观展示交叉关联分析结果. 显然, 在黑白点阵中, 从左上角到右下角的对
角线始终是一条白线, 因为这表示片段与其自身的相关性. 分析者可通过该方法识别特定的算法结构, 并获得有关
执行敏感操作的位置的信息.
以 ECC 算法波形为例, 使用交叉关联的方法对该波形执行分析, 窗口长度设为 1 000 (约为 1/5 个片段长), 得
到的黑白点阵如图 5 所示, 根据黑白点阵中呈现的相关性规律, 可以识别出点加和倍点操作 (图中分别标记为 A
和 D), 从而恢复出 k 值.
开始
从被测实现中收集特定数量的
侧信道曲线
使用校准函数执行静态的或动态的
曲线对齐操作, 并且计算 SNR
信噪比是否 否
满足要求?
是
计算安全功能中的中间值
在对齐的或者预处理的
曲线上执行统计测试
是否存在 否
明显泄露?
是
测试失败 测试通过
图 4 GM/T 0083-2020 差分能量/电磁攻击测试流程 图 5 ECC 算法交叉关联分析结果
1.4 TVLA 泄露评估
在侧信道分析领域, 除简单能量分析、相关能量分析等分析方法外, 还有用于信息泄露量化评估的测试方法.
TVLA 方法是一种基于 t-test 的侧信息泄露评估方法 [6,8] , 该方法常用于敏感信息的泄露检测, 是检测密码设备潜
在物理安全风险的简单、可靠的测试方法.
TVLA 分别使用固定明文和随机明文进行加密, 用获得的波形数据进行 t-test, 根据两者统计特性的异同判断
波形中是否存在信息泄露. 一组测试包含两次实验, 实验 1 使用固定明文加密 n 1 次, 采集 n 1 条波形; 实验 2 使用
随机明文加密 n 2 次, 采集 n 2 条波形. 利用 t-test 判断波形数据的统计特性是否相同, 公式如下:
¯ X 1 − ¯ X 2
(1)
t = √
S 2 S 2
1 2
+
n 1 n 2
其中, S 2 和 S 2 为两组波形数据的方差, ¯ X 1 和 ¯ X 2 为两组数据的平均数. 若 |t| ⩽ 4.5, 就说明无明显泄露; 否则说明存
1 2
在泄露. 在 TVLA 方法 [8] 中, 使用固定明文和随机明文分别得到数目为 n 的波形集, 然后每次 n/2 组数据进行测试,
若两次测试在同一位置均有 |t| ⩽ 4.5, 则表明存在泄露.
2 私有算法密码芯片非入侵式攻击检测框架
近年来, 我国芯片市场规模逐渐扩大, 面对非入侵式攻击的威胁, 已有国际国内标准虽然给出了密码模块非入

