基于K-means聚类分析的硬件木马检测方法

2016-02-24 08:34王柏人
北京电子科技学院学报 2016年2期
关键词:木马功耗聚类

王柏人 曲 鸣

基于K-means聚类分析的硬件木马检测方法

王柏人 曲 鸣

北京电子科技学院电子与通信工程,北京 100070

为检测芯片中存在的硬件木马,利用侧信道分析技术,采集功耗信息,并利用K-means算法对待测芯片进行聚类分析。利用K-means算法实现木马检测时,准确率与功耗数据中存在的噪声以及木马面积的大小有关,实验中植入了占芯片原始模块2.39%和1.49%的两种木马,均能够很好的检测出其中电路中的木马,验证了方法的有效性。

硬件木马;侧信道分析;K-means算法

引言

随着集成电路制造的全球化进程,设计、制造的分离技术以及第三方知识产权核的广泛应用,使得芯片中存在很多安全隐患。硬件木马是一种不同于计算机软件病毒和木马的硬件漏洞,通过在芯片设计和制造的过程中植入恶意部件,使芯片增加额外的功能,或是在芯片中设置隐藏信道和后门,从而窃取芯片中的敏感信息。硬件木马以其危害大,难以检测的特点,受到了安全领域的极大关注。

近年来,对硬件木马的研究已经有了许多成果。一些研究人员提出了一种针对硬件木马的物理特点、激活方式以及特征功能的分类方法[1]。还有一些研究员通过分析硬件木马的攻击目标、植入时机和触发机制提出了不同的分类方法[2][3]。硬件木马分类的完善,促进了检测方法的发展。国际上已经出现很多类型的检测方法,包括破坏性检测[4]、芯片设计修改[5]、侧信道分析等方法。

不同于破坏性检测的高昂开销和漫长周期,侧信道分析技术以其价格低廉、检测迅速、准确性高的特性受到研究人员的关注。文献[6]中首次提出了基于功耗信息的硬件木马检测方法;文献[7]对芯片电源端的瞬态电流进行测量和区域分析,能够检测出小规模的硬件木马;文献[8]提出利用路径延迟生成指纹的方式,可以分辨出一些面积很小的硬件木马模块;文献[9]根据一种基于区域的暂态电流信号分析方法来减小工艺偏差并增大漏电流。

本文提出一种基于K-means算法的硬件木马检测方法,通过采集芯片侧信道功耗信息,分析识别样本属性,选择质心,完成聚类,从而实现硬件木马的有效检测。

1 硬件木马检测方法

1.1 功耗模型

对于一个由稳压电源供电的标准芯片,其功耗可由电流来表示:

其中,Ig为标准芯片运行时所产生的总功耗,I(f,k)表示在频率f下进行运算k的动态电流;Ipv是工艺偏差带来的电流变化;Ie表示芯片运行过程中的噪声。

而对于一个内嵌硬件木马的芯片,由于存在额外的恶意模块,会产生一定的电流变化,即

其中,It为木马芯片运行时所产生的总功耗,It(f,k)表示木马模块在频率f下进行运算k时的动态电流。式中,Ipv和Ie的值取决于芯片的型号和数据采集过程,其影响可通过对同一芯片进行多次测量取均值的方法来削减。因此,对于功耗分析而言,It(f,k)便是用于辨别芯片是否存在木马的关键。

1.2 K-means算法

聚类是根据样本属性对一组未分类的样本进行识别,并将样本按指定规则归为若干类的方法。K-means是一种广泛使用的聚类算法,其分类步骤如下:

1随机选取K个对象作为初始K个簇的质心;

2对剩余的对象,根据其与各质心的距离赋给最近的簇;

3重新计算每个簇的质心;

4重复2-3,直到准则函数收敛。

通常使用的准则函数为平方误差和函数(sum of the squared error,SSE):

其中,SSE为样本库内所有对象的平方误差和,p为样本对象,mi为簇Ci的均值。本文中讨论硬件木马检测问题,只存在木马类与标准类,故K取2。

2 硬件木马检测流程

2.1 功耗分析平台

组成芯片功耗分析平台的部件包括FPGA板、示波器、PC机和稳压电源,稳压电源提供稳定电压,示波器探头对待测芯片侧信道信息进行采集,并传输至PC端利用MATALB编写判别程序进行分析,从而实现硬件木马分类检测。一个典型的分析平台如图1所示:

2.2 检测流程

利用图1中的功耗分析平台设计基于K-means算法的硬件木马检测流程如下:

STEP1:对n个待测芯片的功耗信息进行多次采样,采样时使用相同测试向量,设置采样深度为p,采样条数为q,得到n个功耗矩阵Gp×q;

STEP2:对每个功耗矩阵取均值,进行降噪处理;

STEP3:在Matlab中编写判别程序,对全部待测芯片进行聚类;

STEP4:分析聚类结果,对木马存在性进行判断。

STEP5:优化并重复实验,直至获得理想结果。

3 实验分析与结论

3.1 实验环境

本次实验采用Altera公司的EP4CE6E22C8芯片,烧录标准AES加密算法程序,并选取部分芯片加入木马模块。通过泰克示波器DPO7104C来采集和显示芯片功耗信息,并传输至PC机端利用MATLAB进行数据处理和分析。

3.2 实验结果与分析

待待测芯片进行功耗采样,设置采样深度为2000,通过多条功耗取均值来进行数据优化,并从中随机抽取400条作为待测样本,进行K-means聚类分析。

3.2.1 干扰对聚类结果的影响

为验证数据中存在的噪声等干扰对聚类结果的影响,设置两组实验进行对比,图2(a)中为12条功耗数据进行降噪处理时的K-means聚类结果,图2(b)为30条功耗数据进行降噪的聚类结果。其中,芯片中所植入的木马占芯片原始模块的2.39%。

可以看出,用12条功耗数据进行降噪处理时,聚类结果与实际类存在一定的差异;而用30条功耗数据进行降噪处理时,聚类结果与实际类一致。表1中给出了两种降噪条件下的判别结果,其中,误判为标准芯片判为木马芯片的比例,漏判为木马芯片判为标准芯片的比例。

表1 降噪与判别结果

实验结果表明,在干扰降低到较低水平时,K-means算法可以对全部待测芯片进行准确聚类。

3.2.2 木马面积对聚类结果的影响

为验证木马面积对聚类结果的影响,同样设置两组实验,图3中给出了占芯片原始模块的2.39%的木马1和1.49%的木马2的聚类分析结果,两组数据均采用12条功耗数据均值降噪处理。

可以看出,木马较大时,聚类分析的准确较高。这是由于木马越大,对芯片功耗信息的干扰就越大,就越容易区分。表2给出了两种情况下的判别结果。

表2 木马与判别结果

4 结束语

本文利用K-means算法对待测芯片的功耗信息进行聚类分析,聚类分析的结果与样本数据中的干扰以及木马面积的大小有关。经过降噪处理后,可以对400个待测样本数据实现准确聚类。利用K-means算法进行硬件木马检测,优点在于速度快,准确率高,但也存在需要选择K值的缺点,当芯片中植入多种硬件木马时,无法确定K值,会对判别结果造成影响。今后,将尝试其他聚类方法在硬件木马领域的应用。

[1]Wang X,Tehranipoor M,Plusquellic J.Detecting malicious inclusions in secure hardware:Challenges and solutions[C]// IEEE International Workshop on Hardware-Oriented Security and Trust.IEEE,2008:15-19.

[2]Chakraborty R S,Narasimhan S,Bhunia S.Hardware Trojan:Threats and emerging solutions[C]//High Level Design Validation and Test Workshop,2009.HLDVT 2009.IEEE International.IEEE,2009:166-171.

[3]Rajendran J,Gavas E,Jimenez J,et al.Towardsa comprehensive and systematic classification ofhardware Trojans[C]// IEEE International Symposium on Circuits and Systems.IEEE,2010:1871-1874.

[4]Kash J A,Tsang J C,Knebel D R.Method and apparatus for reverse engineering integrated circuits by monitoring optical emission:US,US6496022[P].2002.

[5]Chakraborty R S,Paul S,Bhunia S.Ondemand transparency for improving hardware Trojan detectability[C]//IEEE International Workshop on Hardware-Oriented Security and Trust.IEEE Computer Society,2008:48-50.

[6]Wang X,Salmani H,Tehranipoor M,et al.Hardware Trojan Detection and Isolation Using CurrentIntegration and Localized Current Analysis[C]//IEEE International Symposium on Defect and Fault Tolerance of VlsiSystems. IEEE Computer Society,2008:87-95.

[7]Rad R M,Wang X,Tehranipoor M,et al.Power supply signal calibration techniques for improving detection resolution to hardware Trojans[C]// Computer-Aided Design,2008.ICCAD 2008.IEEE/ACM International Conference on.IEEE,2008: 632-639.

[8]Jin Y,Makris Y.Hardware Trojan detection using path delay fingerprint[C]//IEEE International Workshop on Hardware-Oriented Security and Trust.IEEE,2008:51-57.

[9]Rad R M,Wang X,Tehranipoor M,et al.Power supply signal calibration techniques for improving detection resolution to hardware Trojans[C]// Computer-Aided Design,2008.ICCAD 2008.IEEE/ACM International Conference on.IEEE,2008: 632-639.

Hardware Trojan Detection Based on K-means Algorithm

Wang Boren Qu Ming
Beijing Electronic Science and Technology Institute,Beijing 100070,China

In order to detect the hardware Trojan in the integrated circuits,the K-means algorithm based on the side-channel analysis was used to classify the chip under tested.Detected the hardware Trojan by the K-means algorithm,the accuracy was related to the noise and the size of Trojan.Experimental results showed that the hardware Trojan occupied about 1.49%and 2.39%of the original module could be precise recognition,and verified the validity of the method.

Hardware Trojan;Side-channel analysis;K-means Algorithm

TP309.5

A

1672-464X(2016)2-84-04

(责任编辑:张卷美)

中央高校基本科研业务费专项资金(2014GCYY04)

** 作者简介:王柏人,男,硕士研究生,研究方向为芯片安全;曲鸣,女,硕士研究生,研究方向为通信安全。

猜你喜欢
木马功耗聚类
一种傅里叶域海量数据高速谱聚类方法
基于任务映射的暗硅芯片功耗预算方法
骑木马
一种改进K-means聚类的近邻传播最大最小距离算法
小木马
改进K均值聚类算法
揭开GPU功耗的面纱
基于Spark平台的K-means聚类算法改进及并行化实现
小木马
环保之功,从主板做起