本站小编为你精心准备了独立成分在电磁攻击中的应用参考范文,愿这些范文能点燃您思维的火花,激发您的写作灵感。欢迎深入阅读并收藏。
《电波科学学报》2015年第六期
摘要
电磁泄漏曲线的对齐与有效点的选取是信息安全的重要研究方向.针对曲线过偏移的问题,提出了一种新的曲线对齐方法——双峰式相关对齐法.在有效抑制曲线过偏移的同时,实现了曲线的精确对齐.通过独立成分分析(IndependentComponentAnalysis,ICA)方法实现了有效点的选取.通过对电磁泄露曲线求得未知的源信号,由源信号作为特征点进行分类分析.分别采用ICA、主成分分析(PrincipalComponentsAnalysis,PCA)、PCA-ICA、ICA-PCA四种方法对数据进行了降维处理.通过支持向量机(SupportVectorMachine,SVM)对降维后的数据进行分类对比,最终得出:在10~100维范围内,PCA-ICA的分类效果最佳,ICA其次,而ICA-PCA的效果最差;在100~900维的范围内,PCA与ICA-PCA分类效果随着维度的增加几乎呈直线趋势增加.
关键词
电磁泄漏;独立成分分析;降维;支持向量机;主成分分析
在电磁分析攻击中,采集设备及采集环境等对攻击的影响、针对加入掩码后的攻击和数据的预处理对电磁泄漏攻击成功率的影响等都是研究的重点.在数据的预处理中,曲线的对齐和有效点的选取是实现有效攻击的前提.ShivamBhasin等人提出了一种归一化类间方差(NormalizedInter-ClassVariance,NICV)的特征点选取方法[1],其优势在于它不需要设备或加密系统的相关知识,只需现有的明文或密文.Rechberger[2]与Gierlichs等[3]分别提出了累积均值差与T检验的方法,邓高明[4]等人则针对噪声和时间延迟采用频域求累积均值差的方法实现了有效点的选取,章季阳[5]等人通过求密钥与电磁泄漏曲线之间的相关性,通过尖峰找到有效点的位置.Archambeau[6]与Hastie[7]分别提出了采用主成分分析和Fisher线性判别分析等方法,通过降维将数据的冗余信息降低[8].在曲线对齐的问题处理中,为避免曲线受噪声及防御措施等的影响,NaofumiHOMMA[9]提到了一种相位相关法(Phase-OnlyCorrelation,POC)算法,通过求两条曲线的互相关所对应的频谱的变化尖峰,进而确定平移的多少.而StefanMangard[10]提出的最小二乘法及相关系数法为最常用的对齐方法.常用的相关系数法中,简单的通过求最大相关系数来确定偏移量的方法有可能会造成数据的过周期偏移,对此本文提出了一种双峰相关对齐的方法,抑制了数据的过度偏移,实现电磁泄漏曲线的精确对齐.在此基础上,采用主成分分析(PrincipalComponentsAnalysis,PCA)、独立成分分析(IndependentComponentAnalysis,ICA)及PCA混合ICA等算法作为特征提取方法,并对不同方法的分类效果进行了分析对比.
1理论分析
1.1电磁信息的泄露原理单片机、现场可编程门阵列(Field-Programm-ableGateArray,FPGA)等电子器件由多个逻辑电路组合而成.当逻辑电路输入的数据变化时,其实质为电压值的变化.变化电压产生的高频电流则转换为电磁波.当电磁波频率较高时,部分能量返回原电路的同时,其他的能量以电磁波的形式向空间传播[11].根据这一特性,可选用电磁探头对加密时泄漏的电磁信息进行采集.
1.2测试系统的说明电磁泄漏曲线的测试系统主要有:加密设备单片机STC89C51,型号为RF_R400-1的采集设备感应探头,EMV-Technik公司的型号为PA303的放大器.通过tekvisa实现示波器与PC机的数据传输与存储.采样频率为625MHz.采样点数为62.5万个点.
2曲线的对齐及特征提取的方法
2.1曲线的对齐方法由于示波器的触发及单片机内部程序执行的时间问题,采集到的曲线不可能实现全部精确对齐.数据的对齐与否与数据间的相关性有关.由图1可以看出,相关系数处于0.9左右的曲线在采集中实现了粗略的对齐,而相关系数处于0.6左右的曲线与基准曲线有了明显的偏移.原始相关系数的对齐方法是针对一段曲线求相关系数,并通过相关系数最大值求出平移的位置.原始相关系数对齐方法有可能得到局部的最大相关系数,导致局部得到了对齐,而整体部分未到达应有的对齐效果.针对这一点,文章提出了一种双峰相关对齐法.该法要求选取一条基准曲线,并间断地选取该曲线的两段作为双峰模式.以双峰模式为基础,选取一段预测区域,分别对其他曲线的对应区域进行相关性计算.通过设定阈值及平移范围(平移的范围限制在一个周期内),最终得到一对最佳的相关性数组,从而确定待测曲线的平移的位置.新方法的优势在于通过双峰之间相关性系数的相互遏制,找出精确的平移位置,同时平移区域的设定又避免了曲线的过度平移.
2.2PCA与ICA算法PCA算法用于数据降维,其目的是提取出差异较大的特征元素.首先数据被转换为多维的正交坐标系,根据方差贡献率的大小确定投影矩阵.原矩阵与投影矩阵相乘最终得到降维后的新矩阵.ICA算法是由J.Herault和C.Jutter等人提出的一种盲源分离方法[13],现已广泛应用于信号处理与机器学习等领域.该算法在信源信号和传输信道未知的情况下,利用信源信号间相互独立的特性,对接收信号进行处理,估计出已知信源信号.其目的是找到一组最大化的独立分量.ICA算法实现步骤如下:1)数据的中心化,使中心化后的数据均值为0.2)数据的白化,最终实现中心化和白化后的数据不相关.3)最后估计出已知信源矩阵.
3实验结果分析
3.1对齐效果双峰相关对齐法具体操作步骤如下:1)找出一条双峰模式的基准曲线,双峰长度分被为L1和L2.设定双峰的间隔为w.2)选取一段预测区域[-m+(L1+w+L2)m+(L1+w+L2)],其中m为左右移动的最大范围,m设定为小于时钟周期内对应的采样点数的值,可避免过周期偏移.3)在预测区域范围内,计算多组待测曲线与基准曲线的相关系数数组对[r1,r2],通过设定的阈值找到最佳相关系数数组对,最终确定平移量.图2为四条对齐处理后的电磁泄漏曲线片段.
3.2有效点的选取PCA和ICA这两种降维方法功能迥异,PCA以一种投影的形式从高维映射到了低维,去除了数据之间的相关性.ICA则是根据内部结构及特征对数据进行线性分解,得到的独立成分不仅能够消除多变量数据间的二阶相关信息,而且能够消除数据间的高阶相关[15].结合这两者的特性,本文对数据进行了PCA和ICA算法的混合处理.所采用的降维方法如下:PCA、ICA、PCA-ICA、ICA-PCA.在对RC4算法进行攻击分析时,由于密钥扩展部分的操作与密钥相关,因此选择这一操作的电磁泄漏进行分析,即状态S盒与密钥的置换部分.在有效点的选取中,通过求密钥与电磁泄漏曲线的相关性找到有效点,虽然攻击成功率的效果很好,但其需要在对明文和密钥等信息已知的情况下进行分析.在已知信息很少的情况下,在频域通过电磁泄漏曲线进行两两做差求和的方法,通过尖峰找到与密钥相关的有效点.PCA、ICA等四种降维方法的降维范围设定在有效点周围的一万个点附近.降维处理后的数据通过SVM进行分类,通过寻找样本的最优分类面,使得样本间的分类间隔达到最大,从而得到最佳的分类效果[16].由于RC4的密钥设置为8位,则其汉明重量有9种可能,需要构建9个二分类SVM.本文只选取9类不同的汉明重量进行分析.由图3可知:在10~100维,PCA-ICA的分类效果最佳,其次是ICA的分类效果,两者增长幅度较大,直到60维左右达到了100%,最终处于稳定状态;而PCA和ICA-PCA的分类效果随着维度的增加,增长趋势较缓,到100维时,分类成功率依旧很低.由图4可知,PCA、ICA-PCA两种降维方法在100维到900维几乎成直线上升状态,在900维的时候分别达到了96.25%、92.8333%.PCA低于100维的成功率极低,可知第一主成分、第二主成分等虽然信息含量最多,但并未提高分类效果,即不同类间的信息含量多的主成分的区分度却很低.随着维数的增加,曲线之间的区分度有了提高,从而分类成功率也随着提高了.正相反,ICA的处理在低维部分区分度已经达到了最高.
4结论
通过双峰式相关对齐法实现了电磁泄漏曲线的对齐,通过阈值的设定得到最佳的相关性系数组,避免了曲线的过度偏移,实现了数据的精确对齐.在有效点的选取方案中,将PCA、ICA及混合算法作为降维工具,实现了不同密钥的分类.在低维度的情况下ICA、PCA-ICA的区分度已达到很高的状态,分类成功率达到100%.在高维情况下,PCA、ICA-PCA的区分度逐渐增加,分类效果几乎呈直线趋势上升,到900维时,分类效果分别达到了96.25%、92.8333%.由此得出,四种降维方法中,PCA-ICA的降维处理效果最佳.
作者:甘罕 张洪欣 李静 张帆 赵新杰 贺鹏飞 单位:北京邮电大学电子工程学院 北京邮电大学 安全生产智能监控北京市重点实验室 中国信息安全测评中心 浙江大学信息与电子工程学系 北方电子设备研究所 烟台大学光电信息技术学院