一种基于人机界面与电流监测的FPGA硬件木马检测系统的制作方法

文档序号:17131656发布日期:2019-03-16 01:19阅读:213来源:国知局
一种基于人机界面与电流监测的FPGA硬件木马检测系统的制作方法

本发明设计一种基于人机界面与电流监测的现场可编程门阵列(即fpga)硬件木马检测系统,它涉及fpga芯片的制造和使用过程。它主要针对fpga芯片使用时的安全性需求,设计的一套基于人机界面与电流监测的fpga硬件木马检测系统,属于电子产品测试领域。

(二)

背景技术:

随着我国武器装备用电子元器件自主可控的国家战略需求,近年国家投入了大量经费开展了诸如fpga等核心元器件的国产研制工作,并广泛应用于航空、航天等军工型号中。由于fpga工艺的精密性和复杂性,其制造过程需要在专业的芯片制造工厂内完成。因此,fpga的研发工作一般都是由设计师完成电路的设计,然后将包含电路版图信息的文件交给芯片代工厂,必要时甚至需在其它国家加工,这使加工环节脱离安全控制,为硬件木马攻击提供了可能,也使集成电路面临硬件木马的威胁。因此,设计高可靠、高精度、自动化的fpga硬件木马检测系统具有十分重要的意义。

硬件木马作为电路中额外的结构,必然会引起与原电路不同的性能变化,在不同程度上会改变电路的参数特征。通过检测这些信号的变化,理论上可以辨识出芯片中是否被植入了硬件木马。基于旁路信号分析的硬件木马检测方法,目前比较成熟的主要有基于电流信号的检测方法和基于时序信号的监测分析。

基于电流信号的检测方法,是针对硬件木马的嵌入对硬件木马造成的功率变化进行检测分析。硬件木马也是一种功能性电路,有着设定的输入输出(激活时),电路中既然增加了多余的电路结构,就必然会造成电流的变化,通过对电流变化的分析就可以识别出芯片电路是否发生了改变、是否被植入了硬件木马。

现有测试平台大多基于市场上的fpga开发板,考虑到针对于硬件木马检测需求而言,现有开发板存在许多功能冗余,例如数模转换器和模数转换器,而这些芯片的功率受工作频率以及工艺偏差影响,对检测结果的影响较大。为准确检测fpga的侧信道功率信号,验证硬件木马检测方法的有效性,设计硬件木马检测平台。

基于人机界面与电流监测的fpga硬件木马检测系统用于fpga的自动化测试,在人机界面可设置不同工作频率,频率精度设置达到0.5mhz,符合航天产品高精度频率要求。人机界面通过jtag接口与时钟生成芯片通讯,在测试过程中,生成芯片接收到人机界面传送的时钟程序,基于外部时钟源的基准时钟频率,转化设置的工作频率,输出到测试对象中。测试对象按照时钟生成芯片输出的时钟频率工作,其全局电流被电流示波器检测并上传到人机界面。人机界面接收到测试对象在不同工作频率下的全局电流与预设的无硬件木马芯片数据进行对比,判断测试对象是否植入了硬件木马。使用过程中极大简化了操作流程,减轻了试验人员的负担。

(三)

技术实现要素:

1.目的:

本发明的目的是提供种基于人机界面与电流监测的fpga硬件木马检测系统,该系统由5v直流电源、人机界面、联合测试工作组(即jtag)模块、驱动电路、电流示波器、测试对象(fpga)、时钟生成芯片、外部时钟源组成。设计人机界面程序、时钟生成程序、全局电流处理程序,实现对fpga的批量化,高精度测试工作,在试验中通过人机界面设置不同的工作频率,实现测试对象工作频率的精确控制,利用电流示波器检测不同工作频率下测试对象的全局电流并上传至人界面,人机界面通过计算测试对象的马氏距离并与无木马的马氏距离对比,判断测试对象是否植入硬件木马,为fpga的使用提供充分的可靠性论据。

2.技术方案:

本发明提出一种基于人机界面与电流监测的fpga硬件木马检测系统,其特征在于:它是由5v直流电源、人机界面、联合测试工作组(即jtag)模块、驱动电路、电流示波器、测试对象(fpga)、时钟生成芯片、外部时钟源组成;它们相互之间的关系是:5v直流电源为驱动电路、测试对象、时钟生成芯片、外部时钟源供电;驱动电路与5v直流电源构成测试对象、时钟生成芯片和外部时钟源的供电端;外部时钟源由驱动电路驱动,产生时钟信号输入到时钟生成芯片中,作为时钟生成芯片的基准时钟;时钟生成芯片接收外部时钟源的时钟信号作为基准信号,并通过芯片改变时钟信号的频率输入到测试对象(fpga)中,作为测试对象的全局时钟;电流示波器监测测试对象的全局电流,并将电流数据上传至人机界面;人机界面具有两个功能,一是通过usb接口与jtag模块相连将设置好的芯片程序下载到芯片中以改变时钟生成芯片的输出频率,二是采集电流示波器监测到的全局电流,并对不同频率下的电流数据进行处理,判断测试对象是否被植入硬件木马。jtag模块将人机交互的程序下载到时钟生成芯片中的芯片中;

其中,5v直流电源指220v交流电输入,5v、10a输出的开关电源s-5-10,其与驱动电路相连作为供电端;

其中,驱动电路分为两部分,一部分作为测试对象和时钟生成芯片的供电端,一部分作为外部时钟输入的供电端;该驱动电路的结构是:由两块ti公司的tps54331型dc-dc电源芯片构成,将5v电压转化成3.3v和1.2v电压,分别给时钟芯片和外部时钟输入电路供电;

其中,jtag模块是指一种基于国际标准测试协议(jtag)的接口,包含模式选择(即tms)、时钟(即tck)、数据输入(即tdi)和数据输出线(即tdo);它们相互之间的关系是:tms选择信号驱动测试访问端口控制器的状态,tck为tdi和tdo提供时钟信号作为工作频率,tdi用于向芯片输入测试程序;tdo用于接收芯片的反馈信号;

该模式选择即tms是:fpga程序下载模式;

该时钟即tck是:ise程序设定的程序下载;

该数据输入即tdi是:ise程序中的bit文件用于fpga配置;

该数据输出线即tdo是:fpga反馈的程序下载完成信号;

其中,人机界面是指包含时钟生成程序和全局电流处理程序的个人电脑;时钟生成程序通过ise编写,写入后能与时钟生成芯片中的芯片进行通讯操作,并可基于外部时钟源的基准时钟,更改时钟生成芯片的输出时钟,即测试对象的输入时钟;全局电流处理程序能与时钟生成芯片中的芯片进行通讯操作,并可采集和处理电流示波器上传的全局电流数据;

该时钟生成程序是:以外部时钟输入的时钟频率为基准频率,通过时钟生成电路对基准频率进行分频及倍频,以输出多种不同的时钟频率;

该全局电流处理程序是:计算测试数据集的马氏距离,并与预先设定好的无硬件木马马氏距离范围进行对比;

其中,电流示波器是用于监测测试对象的全局电流,选用现有产品(如型号为“dsox2002a”的是德科技公司生产的示波器);

其中,测试对象(即fpga)是指被检测的未知安全性的现场可编程门阵列(即fpga)芯片;

其中,时钟生成芯片由另一块fpga组成,用于将外部时钟源的基准时钟改为不同的时钟输入到测试对象中,以观测不同工作频率下测试对象的全局电流;

该时钟生成芯片是:xc6slx9-2tqg144c型fpga;

其中,该外部时钟源由25mhz的有源石英晶振构成,由驱动电路供电,产生精准的基准时钟到时钟生成芯片中;该有源石英晶振是:txc生产的25mhz有源石英晶振。

本发明所述的一种基于人机界面与电流监测的fpga硬件木马检测系统,该测试系统的操作实施步骤如下:

步骤一:按dc5v电源开关,系统开机运行,人机界面出现程序选择的页面;点击人机界面“自检”按钮,观察自检按键旁边的指示灯能判断时钟生成芯片、电流示波器与个人电脑是否连接,指示灯点亮表示连接正常,完成系统自查;

步骤二:程序界面“工作频率”字后面的为选择框,点击后会出现输入键盘界面,通过数字设定测试对象的工作频率,设定范围为25~100mhz,默认值为25mhz,精度为0.5mhz;

步骤三:点击“下载”,弹出“程序下载成功”提示框;点击“确定”,在界面上能看到设置的工作频率,设定好的工作频率转化为ise程序通过jtag模块下载到时钟生成芯片中,时钟生成芯片基于外部时钟源的基准时钟,向测试对象输出设置好的工作频率时钟;

步骤四:测试对象按照时钟生成芯片输出的时钟频率工作,电流示波器监测测试对象的全局电流并上传到人机界面中;

步骤五:人机界面接收到设定工作频率下测试对象的全局电流,并重复步骤二到步骤四,直至采集到m个不同频率下测试对象的全局电流,形成测试数据集;

步骤六:人机界面计算测试数据集的马氏距离,并与预先设定好的无硬件木马马氏距离范围进行对比,若测试数据集的马氏距离超出预先设定好的无硬件木马马氏距离范围,则测试芯片中被植入了硬件木马;若测试数据集的马氏距离在预先设定好的无硬件木马马氏距离范围内,则测试芯片中没有硬件木马。

其中,在步骤六中所述的“马氏距离”,其计算方式如下:

其中,z为测试对象的马氏距离,b为测试对象的数据集,m为工作频率的数量;

a为预先设置的无硬件木马的数据集,代表矩阵a的重心,的表达式如下:

其中,k为预先设置的无硬件木马数据的数量

∑是矩阵a的协方差矩阵,计算方法如下:

3.优点及功效:

本发明提出一种基于人机界面与电流监测的fpga硬件木马检测系统,该发明的优点是:

1)系统设计“自检”按钮,能对系统进行整体检查,并以指示灯变亮的形式反馈检查正常的结果,避免因为检测系统故障造成的检测失误;

2)系统内部采用fpga芯片作为时钟生成芯片,精准生成设置的时钟频率,输出给测试对象作为工作频率;多处采用2a玻璃带双铁帽无引脚插件保险管,避免操作失误引起的系统烧毁,增强了系统的安全性;

3)测试系统提供全局电流处理程序,即对采集到的不同频率下的全局电流进行马氏距离计算,并与预先设定好的无硬件木马马氏距离范围进行对比,判断测试对象是否被植入硬件木马;

本发明所提供的基于电流监测的fpga硬件木马检测系统,能很好地满足fpga的测试需求,包括极大地简化测试人员工作量、提高测试精度等方面,目前已应用于多个型号fpga的测试工作中,为验证fpga的安全性提供了有效保证。

综上所述,本发明提供的基于人机界面与电流监测的fpga硬件木马检测系统,操作简单,有系统自检设置,提供硬件木马植入信息,维护容易,使用安全可靠,具有实际推广应用价值。

(四)附图说明:

图1本发明所述测试系统结构示意图。

图2本发明所述测试系统操作流程图。

(五)具体实施方式:

本发明所描述一种基于人机界面与电流监测的fpga硬件木马检测系统,结构如图1所示,它是由5v直流电源、人机界面、联合测试工作组(即jtag)模块、驱动电路、电流示波器、测试对象(fpga)、时钟生成芯片、外部时钟源组成;它们相互之间的关系是:5v直流电源为驱动电路、测试对象、时钟生成芯片、外部时钟源供电;驱动电路与5v直流电源构成测试对象、时钟生成芯片和外部时钟源的供电端;外部时钟源由驱动电路驱动,产生时钟信号输入到时钟生成芯片中,作为时钟生成芯片的基准时钟;时钟生成芯片接收外部时钟源的时钟信号作为基准信号,并通过芯片改变时钟信号的频率输入到测试对象(fpga)中,作为测试对象的全局时钟。电流示波器监测测试对象的全局电流,并将电流数据上传至人机界面。人机界面具有两个功能,一是通过usb接口与jtag模块相连将设置好的芯片程序下载到芯片中以改变时钟生成芯片的输出频率,二是采集电流示波器监测到的全局电流,并对不同频率下的电流数据进行处理,判断测试对象是否被植入硬件木马。jtag模块将人机交互的程序下载到时钟生成芯片中的芯片中。

本案例中,电流示波器采用型号为“dsox2002a”的是德科技公司生产的示波器,时钟生成芯片和测试对象型号为xc6slx9-2tqg144c,外部时钟源为25mhz的有源石英晶振。

对本发明所述的种基于人机界面与电流监测的fpga硬件木马检测系统的操作进行详细说明。检测系统操作流程如图2所示,具体实施步骤如下:

步骤一:按dc5v电源开关,系统开机运行,人机界面出现程序选择的页面;点击人机界面“自检”按钮,观察自检按键旁边的指示灯能判断时钟生成芯片、电流示波器与个人电脑是否连接,指示灯点亮表示连接正常,完成系统自查;

步骤二:程序界面“工作频率”字后面的为选择框,点击后会出现输入键盘界面,通过数字设定测试对象的工作频率分别为25mhz、27.5mhz、30mhz、32.5mhz、35mhz、37.5mhz、40mhz、42.5mhz、45mhz、47.5mhz、50mhz、52.5mhz、55mhz、57.5mhz、60mhz、62.5mhz、65mhz、67.5mhz、70mhz、72.5mhz、75mhz、77.5mhz、80mhz;

步骤三:点击“下载”,弹出“程序下载成功”提示框;点击“确定”,在界面上能看到设置的工作频率,设定好的工作频率转化为ise程序通过jtag模块下载到时钟生成芯片中,时钟生成芯片基于外部时钟源的基准时钟,向测试对象输出设置好的工作频率时钟;

步骤四:测试对象按照时钟生成芯片输出的时钟频率工作,电流示波器监测测试对象的全局电流并上传到人机界面中;

步骤五:人机界面接收到设定工作频率下测试对象的全局电流,并重复步骤二到步骤四,直至采集到m个不同频率下测试对象的全局电流,形成测试数据集;

步骤六:人机界面计算测试数据集进行马氏距离为15.6116,并与预先设定好的无硬件木马马氏距离范围(2.7066,9.4339)进行对比,测试数据集的马氏距离超出预先设定好的无硬件木马马氏距离范围,该测试芯片中被植入了硬件木马。

综上所述,本发明提供的基于人机界面与电流监测的fpga硬件木马检测系统,操作简单,有系统自检设置,提供硬件木马植入信息,维护容易,使用安全可靠,具有实际推广应用价值。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1