本工作提出了一种基于跨设备深度学习的电磁(EM-X-DL)侧信道分析(SCA),与之前的工作相比,即使在信噪比(SNR)显著降低的情况下,AES-128的单次跟踪攻击准确率也能达到90%以上。通过对多个训练设备的智能选择和超参数的适当选择,提出的256类深度神经网络(DNN)可以在目标上利用PCA、LDA和FFT等预处理技术进行有效训练。在8位Atmel微控制器上运行的加密引擎。最后,利用EM-X-DL建立了一个高效的端到端SCA泄漏检测和攻击框架,证明了攻击者对<20个平均EM轨迹的高度信任。
CCS概念:安全与隐私→嵌入式系统安全;侧信道分析与对策。
附加关键词和短语:电磁侧信道攻击、跨设备攻击、深度学习、剖析攻击、端到端SCA。
1.导言
随着嵌入式设备的日益普及和物联网(IoT)的发展,这些设备的安全性已成为人们关注的主要问题。对这些设备的安全性最严重的威胁之一是侧信道分析(SCA)攻击。对这些设备安全的一些最严重的威胁是侧信道分析(SCA)攻击。通过分析有关功率[15]、时序[16]或电磁(EM)签名[2]的物理泄漏信息,可以提取加密机密。在这些侧信道攻击中,最强大的是剖面分析攻击(profiled attacks)[8],最近机器学习(ML)模型已经被证明在这种剖面分析SCA攻击场景中使用功率和EM测量是非常有效的[12,22]。
1.1动机
用于剖面分析SCA攻击的ML模型的主要局限性是它们可移植到其他目标设备。具体来说,当同一设备同时用于分析和测试时,这些模型已经被证明是有效的,但在实际的攻击中,攻击者会使用一个设备来分析,然后攻击一个单独的、相同的设备。最近在[11]、[4]中已经解决了AES-128上的功率ML SCA模型的这个可移植性问题,同时也解决了EM SCA的3类DNN攻击RSA实现[7]。然而,这些工作只考虑了高信噪比场景,随着引入降低信噪比对策[10]或低成本、低灵敏度EM探针,实际攻击必须解决低信噪比跟踪测量的现实问题。在本研究中,我们展示了一种基于深度学习的低信噪比EM签名的跨设备SCA攻击。
一个256类的DNN模型,可以使用特定微控制器的原始时域AES-128功率轨迹成功地训练(> 99%验证精度)[11],但对于低信噪比 EM SCA训练来说,即使从同一设备收集的轨迹也是徒劳的(图1(a))。图1(b)显示了使用均值差异方法[8,9]确定的一个感兴趣点(POI)在10K EM和功率轨迹上的方差。它清楚地表明,电磁轨迹的变化远远高于功率轨迹,意味着电磁信号的信噪比明显降低。事实上,当考虑到[19]中定义的侧信道SNR为,其中Q为侧信道泄漏,而N为噪声时,在比较功率和电磁测量时有很大的差异。随机选择7台设备进行功率迹线的侧信道信噪比为19.6 dB,等效EM迹线的信噪比为3.1 dB,如图2所示。请注意,单个设备的SNR在功率和EM领域都是相当的,但由于设备间的变化,增加额外的设备会大幅降低SNR。事实上,在电磁领域,大部分较低的SNR是由于设备间的变化在电磁领域比功率领域更为突出,请再看图2。因此,为了解决可移植性问题,我们需要考虑设备间的差异[24]。为了解决所有这些问题,我们利用平均化来增强SNR,分析不同的预处理技术来降低数据的维度,并开发了一种智能算法来选择训练设备集,以实现高效的分析,因为设备间变化的影响较大,需要更多的训练设备来训练一个模型。最后,我们还提出了一个端到端的EM-X-DL攻击框架,来进行EM扫描,并在看不见的目标设备上找到最佳的泄漏点。这些技术的结合使我们能够实现>90%的跨设备精度。
1.2.贡献
这项工作的具体贡献如下:
- 本工作提出了一种基于跨设备深度学习的EM SCA(EM-X-DL)在AES-128加密引擎上使用256类DNN,在低SNR场景下,用十台设备进行训练,并在不同的十台测试设备上进行测试(见第3节)。
- 分析比较了主成分分析(PCA)、线性判别分析(LDA)、快速傅里叶变换(FFT)、光谱图等不同的预处理技术对处理可移植性问题的影响,结果表明LDA是最有效的方法,可以用最少的训练时间实现最大的平均跨设备密钥预测精度,约达到了91.5%。
- 提出了一种优化选择训练设备的算法,使训练设备的数量和整体训练时间最小化(第4节,算法1)。
2.背景和相关工作
2.1 EM侧信道攻击
自功率SCA[15]问世以来,已经证实了各种各样的攻击,大致可以分为非剖析攻击,如差分/相关功率/EM分析(DPA、CPA、DEMA、CEMA)[5]、[15],以及剖析攻击,如统计模板攻击[8]和ML SCA攻击。非剖析攻击只在一个阶段对目标设备进行攻击,而剖析攻击则包括两个阶段,一个是剖析阶段,学习泄漏模式,另一个是攻击阶段,只用一些轨迹进行攻击,这两个阶段实际上是在不同的设备上操作。在剖析阶段,攻击者将从与受害者设备相同的 “剖析 “设备上收集轨迹,建立一个模型。在攻击过程中,再利用该模型从受害者设备中恢复加密机密。
2.2 ML-SCA 攻击
模板攻击已被证明[8]能够以少量的轨迹恢复密钥,使其成为最强大的侧信道攻击之一。最近,已将监督ML技术用于分析SCA[12]。在这些技术中,DNN是最成功的技术之一,它击败了许多常见的对抗措施,如掩蔽[13]和时钟抖动[6]。表1提供了有关剖析攻击的相关工作总结。到目前为止,[7]之前只有一项工作是专注于使用一个运行RSA的测试设备进行跨设备EM ML SCA攻击。需要注意的是,这种攻击需要3类DNN[7],而所提出的针对AES-128的单道(平均)EM-X-DL攻击需要256类DNN,因此跨设备的可移植性效果明显更加突出。此外,与RSA等公钥算法相比,AES测量的侧信道信噪比显著降低。
3.EM-X-DL SCA攻击
本节使用256类DNN对AES-128的单道(平均)EM-X-DL攻击进行评估。为了对DNN进行剖析,使用Chipwhisperer[21]平台,特别是CW-Lite捕获板,以及一个现成的H场传感器(10mm回转直径)和一个40dB的宽带放大器,从一组10个训练设备(8位Atmega微控制器)中收集EM轨迹。训练装置的有效选择将在后续章节中讨论。为了评估攻击,分别预留了十个不同的设备,以这十个测试设备的平均值来计算跨设备(EM-X-DL)的准确度。
3.1 EM探针选择的影响
用于收集训练和测试轨迹的EM探针对记录的侧信道EM信号有影响。考虑了两个探针,一是空间灵敏度非常高的Langer探针(直径100μm),二是空间灵敏度较低的texbox探针(直径10mm)。为了估计每个探针捕获的泄漏,使用测试矢量泄漏评估(TVLA)[3]来测量侧信道泄漏,扫描其中一个受到攻击的8位X-MEGA设备的表面。这些扫描的结果可以在图6中看到。正如预期的那样,Langer探针在很小的区域内发现了高泄漏,而较大的探针则在芯片更大的区域内检测到了泄漏。此外,较大的探针可以检测到更高的整体泄漏水平。由于X-MEGA设备运行的是AES-128的软件实施方案,侧信道泄漏不像硬件实施方案那样高度本地化,而且Langer探针的高空间灵敏度在拒绝算法噪声方面并没有提供很大的好处,因为在攻击期间并没有一个单一的寄存器作为目标。在接下来的工作中,结果将从更大的探针中显示出来,因为泄漏水平已经低于功率,而且用更大的Tekbox探针相对更高的泄漏水平可以更容易地研究各种影响–Langer探针的t值为8,而Tekbox探针的t值为22,如图6所示。
3.2 DNN架构与培训
图3显示了针对EM-X-DL攻击提出的256类全连接(FC)DNN的架构。需要注意的是,使用Chipwhisperer捕获的EM轨迹是时间同步的,因此不需要使用卷积层[14]。从运行AES-128速度为7.37MHz的8位微控制器中,每条轨迹采集3000个时间样本。
使用Tensorflow[1]实现的DNN有3000个神经元输入层,然后是3个分别为100、1024、512个神经元的隐藏层,最后是256个神经元的输出层。利用整流线性单元(Rectified Linear Unit, ReLU)激活函数,结合批量归一化和dropout实现泛化,对DNN进行训练。采用Adam优化器进行训练,初始学习率为0.005,每当连续5个训练时间段(epochs)过后,验证精度没有任何提高,则学习率减半。不同超参数的效果如图5所示。对于第一隐藏层(图5(a))来说,0.45的落差是最优化的,而对于第二隐藏层(图5(b))来说,1024个隐藏神经元可以提供最大的跨设备精度,而不会对训练设备进行过度拟合。对于接下来的所有结果,除非另有提及,DNN是用10个设备进行100个epochs的训练,批次大小为64。
现在,由于从10个训练设备收集到的原始EM轨迹(每个设备100K轨迹)被反馈给DNN分类器,虽然训练精度增加,即使经过100个epochs之后,验证精度仍然很低(< 1%)。图4(蓝色曲线)显示了平均化对同设备(测试)精度的影响。即使20×平均,时域轨迹也显示出<1%的测试精度,而使用PCA进行维度降低,同一器件的测试精度可达到99%以上。对于跨设备攻击,准确率较低,在20×平均和PCA的情况下,准确率只有90%。图9用SNR显示了这一结果,并显示了DNN在较低SNR水平下的准确率也是如此(通过降低平均值实现)。正如预期的那样,精度随着SNR的降低而降低,遵循与图4类似的模式。接下来,我们将研究来自10台训练设备的轨迹增强以及20×平均和不同的预处理策略对跨设备精度的影响。请注意,除非另有说明,跨设备精度指的是所有十个测试设备中EM-X-DL攻击的平均密钥预测精度。
3.3 带预处理的单道攻击
在上一小节中,表明平均时域电磁轨迹(100K×10个设备)不能有效地训练DNN,而PCA等降维技术在训练DNN时有明显的影响。在此,我们研究了PCA[14]、LDA[24]对时域电磁痕迹的影响,以及基于频域的处理(FFT、频谱图[23,26])对跨设备精度的影响。
3.3.1 使用PCA和LDA进行降维
PCA将输入的电磁跟踪样本转化到其主元子空间,其中个体特征使方差最大化,而LDA则通过最大限度地提高类间分离度来达到同样的效果。从图7(a,b)中可以看出,这些技术中使用的最佳特征数量远远低于原始轨迹的维度,在PCA的情况下约为250个,而在LDA的情况下仅为10个。如图8(a,b)所示,这两种技术导致的跨设备精度大致相似,为91%。然而,LDA的效率更高,因为它所需的训练时间(<10×)明显低于PCA,却达到相同的准确度。
3.3.2 利用FFT与谱图进行频域分析
在时域平均(20×)的EM痕迹上使用FFT,产生的EM-X-DL攻击准确率为91%∼(图8(b)),与PCA/LDA相似。然而,它比PCA和LDA都需要更高的训练时间,因此不是最有效的方法。谱图结合了时域和频域信息,是天然的二维信息。因此,谱图采用二维CNN[25],跨设备精度达到74.6%(图8(b))。
4.EM-X-DL SCA:训练设备的有效选择
如前面的研究[11]、[4]所示,ML SCA模型能够准确地对从未被训练过的设备收集到的痕迹进行分类的挑战,可以通过对各种设备进行训练来解决,从而使模型不会过度拟合于某一设备的特定泄漏模式。当使用电磁轨迹时,情况依然如此,然而,要获得高水平的跨设备精度,需要更多的设备,因为从图2中可以看出,电磁测量对跨设备变化更加敏感。此外,平均化显然起到了关键作用,进一步增加了所需的轨迹数量。因此,能够使用尽可能小的设备集进行训练,减少所需的轨迹数量以及DNN的训练时间是很有意义的。为此,有两点必须成立。首先,在给定数量的设备中,设备的选择必须影响到跨设备的准确性;其次,必须有一种方法来确定是否要从少量的轨迹样本中纳入一个设备进行训练。
4.1 跨设备精度差异
为了解决第一点,即子集的影响,EM-X-DL模型用六个设备的随机子集进行训练,然后对其余十四个设备进行测试。如图10所示,即使一组只有6个设备,平均跨设备精度也会有很大的差异,不同的6个设备组合的精度从10%到75%不等。这表明,有子集的训练设备可以提高准确率,而不是简单地增加更多的设备。然而,由于给定的尺寸有大量可能的子集,因此需要一种算法来选择一个这样的子集,从而获得较高的跨设备精度。这样的算法就可以让攻击者从大量的设备中快速收集测量数据,并确定一个小的设备子集来收集大量的轨迹,用于训练DNN模型。
4.2 基于双变量POI的设备选择
所提出的算法首先要识别轨迹中的两个兴趣点(POI)。这可以通过任何POI识别技术来完成,这里的POI是选择均值差最大(DOM)的时间样本。一旦找到前两个 POI,就会计算出该 POI 对的平均值μi= (μPOI1, μPOI2)在每个设备的所有轨迹上。然后,为了构建用于训练的设备子集,先任意选择一个设备,并按如下方式添加其他设备:计算出当前训练子集中所有设备的平均POI对-μtrain。然后,选择下一个设备,使||μi – μtrain||2最大化,其中i在所有尚未包含在训练子集中的设备上不断变化。这样,在每一步,将前两个平均POI与当前所选设备的平均POI距离最远的设备加入到训练集中。这种方法详见算法1。
图11显示了使用该算法选择的前三个设备的二维双变量正态分布,以及所有设备的总分布。通过这三个设备,覆盖了所有设备所跨越的大部分分布,证明了算法的成功运作。重要的是,该算法在训练过程中也提供了理想的结果,如图12所示,因为使用该算法来选择训练设备,对于任何数量的设备,都能获得更高的跨设备(EM-X-DL)精度。此外,用离当前训练集最近的设备进行训练,而不是用最远的设备进行训练,其结果是跨设备的准确率明显低于最大限度的不同设备,而且准确率也普遍低于随机选择的设备。这些结果是通过提出的256类DNN,使用20×平均和基于PCA的预处理得到的。从图12中,我们还可以看到,为了达到一定的跨设备精度,该算法与随机设备选择相比,需要减少20% 40%的训练设备。
5.电磁泄漏评估和攻击
一旦EM-X-DL SCA的DNN模型被训练出来,攻击者的主要目标是用最少的轨迹数量从一个相同但未被发现的目标设备上破解密钥。本节演示了在新设备上使用EM-X-DL模型的端到端攻击策略。通过扫描受攻击的微控制器的表面并收集各点的踪迹(见图13(a)),对踪迹进行分类并确定各点的测试精度,创建了图13(b)的热图。由于所有的训练痕迹都是从同一个位置收集的(使用测试矢量泄漏评估(TVLA)来评估芯片上的最大泄漏),正如预期的那样,这个区域的精度是最高的,然后从测量点进一步急剧下降。图13(c)显示了对同一芯片的CEMA攻击的最小踪迹披露(MTD)。将其与精度热图进行比较,可以看出ML模型可以正确地对从MTD小于250的位置收集的踪迹进行分类。
现在,在这个虚拟网格中,为了聚集到新设备上EM-X-DL攻击的最佳位置,攻击者可以用从测试设备上收集到的多个平均痕迹来查询EM-X-DL模型,并观察预测最高的密钥字节的频率是否可以和下一个密钥字节区分开来。如果存在泄漏,正确的关键字节将比其他字节更经常被预测。如果不存在泄漏,则预测将在几个键值之间进行分割。因此,第一个和第二个最常见的预测值之间的比率提供了攻击者对预测的信心的衡量。图13(d)显示了这一效应,其中显示了高泄漏位置(1,2)(左)和低泄漏位置(2,9)(右)的五个最常见的预测值。请注意,有了这个事先知道的热图,攻击者也可以把芯片分成4个象限(对于这个特定的芯片),并从最左边的象限得到正确的密钥,置信度非常高。
6.意见和结论
本工作展示了一种基于EM的跨设备深度学习(EM-X-DL)在低SNR环境下对对称密钥加密引擎(AES-128)的SCA攻击。利用256类DNN、10台训练设备的平均EM轨迹以及基于维度降低的预处理(如LDA),该模型对另一组10台测试设备的EM-X-DL单道(平均)攻击准确率达到了91.5%。表2总结了本文研究的每种不同技术的EM-X-DL攻击精度。提出了一种有效选择训练设备的算法,以加快剖析阶段的速度。最后,演示了利用电磁扫描进行的端到端攻击,表明攻击者可以利用提出的EM-X-DL模型与密钥一起检测出芯片上泄漏量最大的位置,可信度很高。
在未来的工作范围内,端到端EM-X-DL攻击可以更加通用,通过捕获整个芯片上多个位置的轨迹,而不是单个位置,来训练DNN。这将使EM-X-DL攻击更加有效和快速,因为攻击者将能够提取密钥,而无需检测芯片上最高的泄漏位置之一。
此外,研究表明,用于训练和测试的轨迹的SNR对产生的DNN的准确性有很大的影响,正如预期的那样。这鼓励了专注于降低边道信号SNR的对策的开发,如[10]。虽然这种反制措施总是可以通过收集额外的轨迹而从根本上被击败,但通过大幅降低SNR,从足够多的设备种类中收集足够多的轨迹变得不可行。
参考文献
[1] Martın Abadi et al. 2016. TensorFlow: A system for large-scale machine learning. (2016), 21.
下略
发表评论
您还未登录,请先登录。
登录