Page 458 - 《软件学报》2026年第1期
P. 458
李迪 等: 复杂应用场景下侧信道分析的可移植性研究综述 455
5.1 面向目标设备可获取标签信息的方法
在目标设备可获取标签信息的场景中, 假设攻击者能够在目标设备上获取少量轨迹标签信息, 但总体采样轨
迹数是受限的. 这种限制对应于现实中的一些特殊场景, 由于时间、资源和对策等多方面的限制, 攻击者无法收集
足够的轨迹. 一方面, 如果攻击的加密程序是整体程序的一个子程序, 或者加密程序的位置是不固定的 [78] . 在这些
情况下, 攻击者在每次采集轨迹时需要等待整个程序运行完毕, 或花费大量精力去寻找加密位置, 导致采集轨迹的
成本较高. 另一方面, 在实际应用中, 为了维护芯片的安全性, 一些设计者会在加密芯片布置控制逻辑, 其工作速度
可能被限制为固定的速度, 导致采样大量轨迹的时间成本高 [79] . 为了应对这些情况, 一系列针对小样本数据训练
的策略被提出 [80–82] , 但这些研究没有考虑建模与目标设备的差异性. 下面, 本文将介绍迁移学习技术在这类场景的
研究进展.
2020 年, Genevey-Metat 等人 [83] 将预训练的概念引入到 SCA 领域. 预训练即在已有的大规模任务或领域的数
据集上预先训练模型. 然后将这个在源任务上学到的模型参数作为初始参数, 进一步在目标任务上进行微调. 与图
像分类领域不同, SCA 领域的预训练模型并不容易获得, 除了 ASCAD 有公开预训练模型, 其他数据集尚未给出.
他们在论文定义了 3 个攻击场景.
● 场景 A0: 攻击者仅有一个克隆数据集 (与目标设备相同的数据集) 来训练一个神经网络, 然后对目标设备
分析.
● 场景 A1: 攻击者仅用一个预训练模型进行攻击, 其中预训练数据集与目标数据集在探针类型/位置、侧信道
信息以及设备芯片等方面存在差异.
● 场景 A2: 攻击者同时拥有克隆数据集和预训练模型进行攻击.
实验结果表明, 性能表现最差的攻击场景是 A1, 因为它缺乏对克隆数据集的训练. 当克隆数据集中的可用数
据量低于某一阈值时, A2 的性能将优于 A0, 这个阈值取决于实验设置 (例如探针、侧通道或设备). 总体而言, A2
表现最为优异, 它能够用非常有限的轨迹数量 (低于 10 条) 来揭示密钥. 然而, 这项工作的不足之处是作者将克隆
数据集定义为与目标设备相同的数据集, 这种假设是不现实的.
与其他工作不同, 2020 年, Thapar 等人 [56] 利用迁移学习技术减少攻击者对建模设备轨迹数的需求. 首先, 他们
使用已有的任意设备训练一个模型. 接着, 冻结该模型的预测层, 并使用建模设备的轨迹数据进行微调. 最终, 将调
整后的模型用于攻击目标设备. 由于模型提前在攻击者已有的设备中学到相关知识, 因此在建模阶段无需从头开
始训练, 而根据建模轨迹进行参数调整. 这有助于降低训练时间和对建模轨迹数量的需求. 不同环境的仿真实验结
果显示, 即使已有的设备与目标设备有着不同的底层架构, 甚至不同防护对策, 该方法仍能在这些场景实现知识迁
移. 然而, 不足之处是, 该工作只进行了仿真实验验证, 尚未在真实设备上进行性能验证.
Yu 等人 [59] 基于元迁移学习的方法提出了一种跨设备攻击方案. 该方法的整体方案分 3 个步骤: 预训练、元
迁移学习和攻击. 其中“元迁移学习”指攻击者应用元学习能够自适应学习新任务的特性对模型参数进行微调. 此
外, 作者提出了皮尔逊乘积矩相关系数的方法用于评估不同设备之间的相似性. 实验中他们在 5 个不同的微处理
器 (STM32F0-STM32F4, ATMega) 上采集了功耗与电磁轨迹. 结果显示, 在同一类型的微处理器上该方法只需要
10 条以内的轨迹数就能破解密钥. 在面对不同设备的跨设备攻击时, 该方法使用 500 以内数量的轨迹就能破解密
钥. 该方法的不足之处是依赖攻击者能够获取目标设备中足够数量的带标签信息轨迹对模型进行微调, 其中功耗
轨迹需要至少 800 条, 电磁轨迹需要至少 1 500 条, 而在实际攻击场景中, 目标设备中大量的标签信息是很难获取的.
2023 年, Paguada 等人 [54] 构造了一种基于深度学习的模块化网络. 在该方案中他们定义了一种可重用的训练
模块, 它在非目标数据集上学习轨迹之间的共同特性. 在攻击目标数据集时, 攻击者不需要重新训练模型, 而是基
于可重用模块已学习到的知识进行调整, 从而减少了攻击的成本. 在实验中, 他们以 AE 作为基础搭建模块化网络,
它包括 3 个主要部分: 编码器、解码器和分类器. 在该方案中, 首先使用编码器和解码器对建模数据集进行训练用
于提取特征, 一旦其训练好, 就会弃用解码器. 然后, 使用编码器和分类器在目标数据集上进行参数调整并评估性
能. 实验结果显示, 在面对不同数据集, 使用模块化网络能够减少搭建模型的训练时间和调整超参数的繁琐. 不足

