集成电路中罕见向量序列激活型硬件木马的无损检出方法

文档序号:5946536阅读:121来源:国知局
专利名称:集成电路中罕见向量序列激活型硬件木马的无损检出方法
技术领域
本发明属于集成电路检测技术领域,具体涉及集成电路中恶意电路模块检出的方
法。

背景技术
集成电路应用于几乎所有现代化设备控制系统。集成电路的重要应用涉及到国家安全、军事、航空航天电子、决策、通信、交通、金融等重要应用领域的所有关键设备。硬件木马是ー种植入微电子系统的恶意电路模块,通过改变原有系统功能以达到监控、直至打击对手或潜在对手的目的。对系统而言它本身是冗余的,与微电子系统的正常功能无关,或者可以说是完全不应该存在,它存在的全部目的都是恶意的。硬件木马极为隐蔽、难以发现,只在特定时机才被以特定的方法激活,而在未被激活的情况下系统将表现得完全正常,但是硬件木马一旦被激活其危害通常却极为巨大。硬件木马很可能已经成为国家打击对手的具体手段。由于半导体制造需要巨额的投资,致使越来越多的时候对集成电路获取依赖于对外采购或代エ方式。由于集成电路设计方法的改变,參与集成电路设计制造的人员和环节也越来越多,致使植入硬件木马的可能也越来越大。硬件木马一旦被植入系统,就无法像对软件木马ー样查杀继而得到ー个健康的系统,而是不得不通过重新设计、更换硬件才能将木马从系统中清除,此时已经对应用系统产生了巨大影响。硬件木马的激活一定是可控的,并且在潜伏状态下对电路性能影响极小,可以被正常的电路參数的离散所掩盖,因此检测硬件木马最重要的方法是激活木马,使其对电路特性产生巨大影响便于检出。激活方法则必然是在电路正常工作情况下可以向电路传送信息的形式。

发明内容
本发明目的是提供ー种集成电路中罕见向量序列激活型硬件木马的无损检出方法,使被植入硬件木马的集成电路在进入应用前被检出,避免微电子系统受到硬件木马的威胁,保证重要系统安全。本发明提供的集成电路中罕见向量序列激活型硬件木马的无损检出方法的具体步骤是I)为集成电路提供相应测试环境,包括电源供给和监测、输入激励和输出监测;2)根据集成电路的正常工作向量序列产生罕见向量序列集;所述的罕见向量序列产生方法是,首先设定罕见向量序列的长度,所设定长度的向量序列全排列构成向量序列全集、将集成电路正常工作时可能接收到的向量序列排除之后,剰余的向量序列构成的即为罕见向量序列全集;3)以第2)步产生的罕见向量序列激励集成电路,测试集成电路的特性參数和功能作用是否异常;所述的特性參数主要指功耗和延迟的变化;4)如果特性參数和功能异常,则判定集成电路中含有硬件木马(且硬件木马被激活或相邻路径被选通),记录破坏方式,反之则集成电路安全。本发明的优点和积极效果本发明提供的集成电路中罕见向量序列激活型硬件木马的无损检出方法,可以使被植入硬件木马的集成电路在进入应用前被检出,避免微电子系统受到硬件木马的威胁,保证重要系统安全。


图I是硬件木马测试系统硬件示意图。
具体实施例方式首先为集成电路提供如附图I所示的相应测试环境,测试系统由罕见向量序列发生器、高精度电源电路、电流测量记录电路、无线收发模块和计算机组成。罕见向量序列发生器由存储器和XC6VHX565T组成,存储器中存放罕见向量,XC6VHX565T构造罕见向量序列的发生规则,并同时通过内嵌的锁相环为整个测试系统提供时钟。罕见向量序列发生器输出与集成电路输入相连,高精度电源单独为集成电路供电并由电流测量电路测量集成电路的消耗电流;然后设定测试向量序列长度,根据集成电路的正常工作码产生罕见向量序列全集;将集成电路(图中待测IC)接入测试系统;以罕见向量序列激励集成电路,测试集成电路的消耗电流是否有巨大増加,监测集成电路的延迟是否有大幅劣化,监测功能是否发生错误;如果是,则判定集成电路中含有硬件木马并记录破坏方式,反之则集成电路安全。实施例I :由于硬件木马的激活一定为故意激励,而且该种激励与系统设计者无关,不管以有线还是无线连接,都必然有很长的距离,因此激活信号通常以串行通讯方式加载。 本实施例中待测集成电路为课题组植入硬件木马的串行数据传输集成电路。该电路接收数据的传输速度为115kbps,数据为CRC校验数据,每帧数据为7数据位+4校验位,正常工作消耗电流小于20uA,误码率小于O. I %。具体测试方式为采用xi Iinx的XC6VHX565T中内嵌的锁相环实现高精度的测试系统时钟,此例中直接测试集成电路芯片,通过高精度电源(本例用安捷伦E3630A)为该集成电路单独供电,并且监测其消耗电流和输出端ロ信号。而罕见向量序列发生器用verilog硬件描述语言编写代码,用Foundation ISE完成综合并下载至XC6VHX565T构造实现,与被测集成电路分开供电。此例中待测电路接收的正常数据为CRC校验的数据,每帧数据为7数据位+4校验位,因此数据全集为2K。正常码有128个000000000000000001001100000100110
00000110101
...01111011011011111011100111111110110000000111...11111001111 111110111001111110100111111111010考虑到串行数据传输过程中可能受到干扰而产生的错误,再排除每帧中发生I位错误的数据1408个00000000001000000000100000000010000000001000...01111011010011110110010111101111101111010011...11101111010110111110101011111101001111111010因此罕见码为512个00000001001001100000000110000000011000000000...0111110000011111000000
00011111100
00111111000...111101111111111011111111
101111111111011111111111因为误码率小于O. I %,而连续两个或以上的罕见码几率则小于10_12,可以作为硬件木马的激励序列。将512个罕见码存入存储器,然后以长度3、4、5帧的连续罕见码构成罕见向量序列进行测试。000000010010000000100100000001001000000010010000000100100000001001000000010010000000100100000001001000000010010000000100100000001001001100000000011000000000110000000001100000000011000000000110000000001100000000011000000000110000000001100000000011000000000110000000...0111110000001111100000011111000000111110000001III10000001III10000001III1000000111110000001III10000001III10000001III10000001III100000111110000001III10000001III1000000111110000001III10000001III10000001III10000001111100000011111000000111110000001111100000011111000000...101111111111101111111111101111111111101111111111101111111111101111111111101111111111101111111111101111111111101111111111101111111111101111111111011111111111011111111111011111111111011111111111011111111111011111111111011111111111011111111111011111111111011111111111011111111111011111111111测试时首先将待测集成电路的功能简单的设置为将接收到的数据直接输出以用于比对,因为罕见码将会被电路过滤而不被输出,所以激励采用以下方式每ー个罕见向量序列后都加ー个正常码构成激励向量序列。 000000010010000000100100000001001101100110100000000100100000001001000000010010000000100110110011010000000010010000000100100000001001000000010010000000100110110011010001100000000011000000000110000000101100110100011000000000110000000001100000000011000000010110011010001100000000011000000000110000000001100000000011000000010110011010...01111100000011111000000111110000010110011010011111000000111110000001111100000011111000001011001101001111100000011111000000111110000001111100000011111000001011001101011111000000111110000001111100000010110011010
1111100000011111000000111110000001111100000010110011010 111110000001111100000011111000000111110000001111100000010110011010101111111111101111111111101111111111101100110101011111111111011111111111011111111111011111111111011001101010111111111110111111111110111111111110111111111110111111111110110011010
011111111111011111111111011111111111101100110100111111111110111111111110111111111110111111111111011001101001111111111101111111111101111111111101111111111101111111111110110011010先以如前向量序列激励待测集成电路,再以正常码数据与输出数据进行比较。以如前所述的罕见向量序列发生器输出激励待测集成电路的输入端ロ,在激励过程中电路的消耗电流增至超过15mA,在此种情况下无需再考察电路的功能,就可以判定该集成电路被植入了硬件木马,因而迅速消耗电源。记录发生故障时的罕见向量序列为连续3个00011111100,以更短的序列重复测试,得到连续两个该罕见码即可激活,硬件木马的危害为破坏集成电路的电源供给。实施例2:本实例中待测集成电路为课题组植入另一种硬件木马的串行数据传输集成电路。该电路接收数据的传输速度为115kbpS,正常数据为CRC校验的数据,每帧数据为7数据位+4校验位,正常工作消耗电流小于20uA,误码率小于O. I %。具体测试方式为采用xi Iinx的XC6VHX565T中内嵌的锁相环实现高精度的测试系统时钟,此例中直接测试集成电路芯片,通过高精度电源为该集成电路单独供电,并且监测其消耗电流和输出端ロ信号。而罕见向量序列激励发生电路与被测集成电路分立供电。此例中待测集成电路接收的正常数据为CRC校验的数据,每帧数据为7数据位+4校验位,因此数据全集为2K。正常码有128个,考虑到串行数据传输过程中可能受到干扰而产生的错误,再排除每帧中发生I位错误的数据,因此罕见码为512个。因为误码率小于
0.1%,而连续两个或以上的罕见码几率则小于10_12,可以作为硬件木马的激励序列。将512个罕见码存入存储器,然后以长度3帧的连续罕见码构成罕见向量序列进行测试。000000010010000000100100000001001001100000000011000000000110000000011000000000110000000001100000000110000000001100000000011000000000 011111000000111110000001111100000
111110000001111100000011111000000000111111000001111110000011111100001111110000011111100000111111000111101111111111101111111111101111111
111011111111111011111111111011111111
101111111111101111111111101111111111011111111111011111111111011111111111测试时首先将待测集成电路的功能简单的设置为将接收到的数据直接输出以用于比对,因为罕见码将会被电路过滤而不被输出,所以激励采用以下方式每ー个罕见向量序列后都加ー个正常码构成激励向量序列。
000000010010000000100100000001001100000001110011000000000110000000001100000001000000011101100000000011000000000110000000010000000111110000000001100000000011000000000100000001110111110000001111100000011111000001000001010011111000000111110000001111100000010000010100000111111000001111110000011111100100000101000011111100000111111000001111110001000001010011110111111111110111111111110111111110000110010111011111111111011111111111011111111100001100101011111111111011111111111011111111111000011001001111111111101111111111101111111111110000110010先以如前所述向量序列激励待测集成电路,再将输出与正确码相比较。以如前所述的罕见向量序列发生器输出激励待测集成电路的输入端ロ,在激励过程中电路的消耗电流一直小于20uA,但是端ロ输出被锁死,不论罕见向量序列后输入数据如何变化都一直输出0000000。记录发生故障时的罕见向量序列为连续3个00011111100,以更短的序列重复测试,得到连续3个该罕见码可激活,硬件木马的危害为破坏集成电路的正常功能。
权利要求
1.一种集成电路中罕见向量序列激活型硬件木马的无损检出方法,其特征在于经过下述步骤 1)为集成电路提供相应测试环境; 2)根据集成电路的正常工作向量序列产生罕见向量序列集; 3)以第2)步产生的罕见向量序列激励集成电路,测试集成电路的特性参数和功能是否异常;所述的特性参数主要指功耗和延迟的变化; 4)如果特性参数或功能异常,则判定集成电路中含有硬件木马并记录破坏方式,反之则集成电路安全。
2.根据权利要求I所述的方法,其特征在于罕见向量序列的产生方法是首先设定罕见向量序列的长度,所设定长度的向量序列全排列构成向量序列全集、将集成电路正常工作时可能接收到的向量序列排除之后,剩余的向量序列构成的即为罕见向量序列全集。
全文摘要
本发明涉及集成电路中罕见向量序列激活型硬件木马的无损检出方法。该方法包括为待测集成电路提供相应测试环境;为待测集成电路产生罕见向量序列;以罕见向量序列激励待测集成电路,测试待测集成电路的特性参数和功能作用是否异常,如果异常,检出被植入硬件木马的集成电路并记录破坏方式。基于本发明,可以使被植入硬件木马的集成电路在进入应用系统前被检出,避免应用系统受到硬件木马的威胁,保证重要系统中关键设备的安全。
文档编号G01R31/317GK102636743SQ20121011847
公开日2012年8月15日 申请日期2012年4月20日 优先权日2012年4月20日
发明者任立儒, 刘会刚, 张德贤, 张福海, 耿卫东 申请人:南开大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1