Page 446 - 《软件学报》2026年第1期
P. 446
李迪 等: 复杂应用场景下侧信道分析的可移植性研究综述 443
对于网络信息安全与用户隐私保护也更为重视. 密码算法作为搭建安全与信任协议的基础, 也在各个系统与应用
中得到了广泛应用. 这些密码算法在设计阶段会通过一系列安全性分析, 以确保其在数学上证明是安全的. 在过
去, 密码设备的安全主要取决于密码算法的数学设计, 密码算法的设计是否存在漏洞或缺陷是判断设备是否安全
的关键. 实际上, 加密设备在运行过程中与外界环境存在物理交互, 这些物理泄露往往与密码设备的中间状态值存
[1]
在相关性. 因此, 攻击者可以借助这些信息获取密钥. 1996 年, Kocher 首次利用密码设备运行过程中泄露的时间
信息对密钥进行破译. 这项研究颠覆了人们对信息安全的认知, 借助泄露物理信息分析密钥的方法也被统称为侧
[2]
信道分析 (side-channel analysis, SCA) . 后续研究表明, 大多数密码算法难以抵御 SCA 攻击, 这一现象引发了广泛
关注, 因此成为近年来密码学领域的研究热点.
根据不同类别的泄露信息, SCA 可分为计时攻击 [3] 、功耗攻击 [4] 、电磁攻击 [5] , 以及故障攻击 [6] . 其中功耗攻
击、电磁攻击, 因其在现实中容易实现且泄露信息采取方便而受到了广泛的关注. 根据是否需要建模设备可将 SCA
划分为建模类 SCA 与非建模类 SCA. 所谓建模设备是指攻击者事先拥有的一个与攻击目标设备完全相同的且具
有完全控制权的设备. 在非建模类 SCA 中, 攻击者直接截取目标设备在加密过程产生的功耗信息, 利用功耗与中
间状态操作之间存在的相关性, 通过统计分析方法破译密钥. 该类攻击主要包括简单功耗分析 (simple power analysis,
[7]
[8]
SPA) 、差分功耗攻击 (differential power analysis, DPA) 和相关系数能量分析 (correlation power analysis,
CPA) 等. 传统非建模 SCA 的主要缺点是容易受噪声和数据不足的影响, 可能导致错误猜测占据概率分布的峰
[9]
值, 这一现象也称为假峰现象 [10] .
相较于非建模类 SCA, 建模类 SCA 的攻击表现更为强大, 一旦模型构建成功, 则具有极高的攻击效率与正确
率. 建模类 SCA 的基本假设是攻击者拥有一个用于建模的设备. 在建模阶段, 攻击者收集该设备在加密过程中产
生的功耗与明文信息, 并根据设备的泄露特征构造概率分布模型. 在攻击阶段, 使用该模型进行模版匹配来破解密
钥. 它主要包括模板攻击 (template attack, TA) [11] 和随机模型攻击 (stochastic attack, SA) [12] . TA 是最受研究者关注
的一种方法, 它假设所有设备的侧信道信息都服从多维高斯分布, 而实际上许多加密设备的侧信道信息不一定能
被表示为多维高斯分布, 这使得该类分析攻击很难对此类加密设备造成威胁 [13] .
在 2011 年, 研究者正式明确研究基于人工智能的 SCA, 这些技术可视为建模类 SCA 的一种扩展 [14] . 人工智
能技术能够自动从数据中学习特征, 并能概括数据的表示, 且不需要目标设备功耗分布满足多维高斯分布, 这些属
性让其在 SCA 领域中大放异彩. 从实验部署来看, 建模类 SCA 中的建模和攻击阶段几乎等同于人工智能技术中
的训练和测试步骤. 因此, 求解密钥问题很自然地转化为人工智能技术中的分类问题. 研究人员首先从机器学习技
术开始引入, 如随机森林 (random forest, RF) [15] 、支持向量机 (support vector machine, SVM) [16] 和自组织映射 (self-
organizing map, SOM) [17] . 实验结果表明基于机器学习的侧信道分析 (machine learning-based side channel analysis,
ML-SCA) 非常强大, 特别是在训练样本有限的情况下, 但是该方法无法做到自动化特征提取, 依赖于精准的特征
工程. 在 SPACE 2016 上, 深度学习技术被正式引入 SCA 领域, Maghrebi 等人 [18] 对比了各类建模类 SCA 方法, 并
分别对无防护以及带掩码防护数据集进行了攻击测试. 实验证明了与传统 SCA 方法相比, 基于深度学习的侧信道
分析 (deep learning-based side channel analysis, DL-SCA) 是一种更强大的攻击方式, 它在各个场景的攻击性能上有
着显著优势. 在诸多深度学习方法中最著名的方法是多层感知器 (multi-layer perceptron, MLP) [19] 和卷积神经网络
(convolutional neural network, CNN) [20] , 其中基于 CNN 的方法显现出强大攻击性能, 因为它在原始轨迹中提取相
关特征方面有着出色的表现 [21] . 因此, 大量文献探索了适合 SCA 的 CNN 模型结构 [22,23] . 在 2024 年, Transformer [24]
和生成对抗网络 [25] 也被引入 SCA 领域中应用, 它们分别在处理时钟抖动 [26] 对策和特征提取方面有着显著优势.
总体而言, 相较于传统的 SCA, 深度学习方法主要有 3 大优势: 一是不需要关注泄露区间 [27] , 二是不需要手动对齐
波形 [28] , 三是可对带掩码的防护设备进行攻击 [29] . 表 1 总结了 SCA 的发展历程.
目前, 大多数建模类 SCA 只进行了理论上的验证攻击, 即假定建模设备和目标设备是完全一致的 [30] . 然而, 在
现实场景下几乎不可能确保建模与目标设备是完全一致的. 由于实验设置和现实场景之间的差距, 攻击的性能和
实用价值被高估. 可移植性问题的出现是源于建模设备与目标设备之间因采集设置、算法实现、芯片参数等外部

