CN104850804B - 基于电路特征分析的硬件木马检测方法 - Google Patents
基于电路特征分析的硬件木马检测方法 Download PDFInfo
- Publication number
- CN104850804B CN104850804B CN201510282294.6A CN201510282294A CN104850804B CN 104850804 B CN104850804 B CN 104850804B CN 201510282294 A CN201510282294 A CN 201510282294A CN 104850804 B CN104850804 B CN 104850804B
- Authority
- CN
- China
- Prior art keywords
- circuit
- trojan horse
- hardware trojan
- feature
- node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/76—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in application-specific integrated circuits [ASIC] or field-programmable devices, e.g. field-programmable gate arrays [FPGA] or programmable logic devices [PLD]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Mathematical Physics (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提出一种基于电路特征分析的硬件木马检测方法,包括以下步骤:输入被检测电路,并获取被检测电路的高层描述文件;根据被检测电路的高层描述文件对被检测电路中的功能模块进行识别,以判断功能模块的可信度,以及当功能模块可信时,对被检测电路进行标记;从标记后的被检测电路中提取分类特征,并与预设的硬件木马电路特征库中的每一类硬件木马的特征进行匹配,并根据匹配结果,输出分类的特征分析结果;对分类的特征分析结果进行综合分析,以得到被检测电路的可信性信息。本发明的方法能够有效提高对于硬件木马的检测速度、不同种类硬件木马的检测区分度和时序电路中硬件木马的检测效果。
Description
技术领域
本发明涉及计算机及电子信息技术领域,特别涉及一种基于电路特征分析的硬件木马检测方法。
背景技术
目前的集成电路芯片可以由多达数十亿个晶体管构成,在芯片设计制造过程中,如果所使用的芯片或者第三方IP核中被人植入一些恶意的模块,将难以检查出来,但对使用者而言,则会出现不受控制的安全问题,导致信息泄露、芯片被留下后门、或者非正常芯片失效,造成极其严重的后果。此问题就是近年来逐渐被人们重视的硬件安全问题。而正常电路之外的恶意电路,则被称为“硬件木马”。
随着系统级芯片(System on Chip,SoC)的规模越来越大,芯片产品投向市场的设计周期越来越短,集成电路设计中大量使用来自于第三方设计的IP核已经成为大的趋势。而随着集成电路制造的全球化趋势越来越强,想要控制集成电路的设计和生产的各个环节是不现实的。因此,对于第三方IP核的可信性验证,也即对其中的硬件木马进行检测,是十分必要的。由于硬件木马一般都在很小的概率下才被激活,在未激活的情况下电路完全正常工作,因此,普通的集成电路测试方法几乎不能发现这些木马。
利用硬件木马一般在很小的概率下才能激活这个特性,可以对于组合逻辑电路进行分析来寻找硬件木马。一方面,静态条件下,硬件木马电路的输入通常对输出影响很小,以实现很小的触发概率。另一方面,在常规的验证测试中,由于硬件木马一般不被激活,而呈现出“休眠”的状态,对于原电路的功能没有影响,因此也可通过验证仿真中寻找此部分电路来检测电路。
然而,上述分析组合逻辑电路的方法面临若干问题。第一是复杂度问题:分析组合逻辑电路导致近乎指数级的运算复杂度,使得检测时间过长,达到数十小时甚至数天的数量级。第二是对于时序电路中硬件木马检测的局面:由于时序电路中组合逻辑电路被触发器分割为分散的组合逻辑电路块,若某个硬件木马由多个组合逻辑电路块组成,分析组合逻辑的方法无法知道应该合并哪些组合逻辑电路块,因此难以检测这类硬件木马。
发明内容
本发明旨在至少在一定程度上解决上述相关技术中的技术问题之一。
为此,本发明的目的在于提出一种基于电路特征分析的硬件木马检测方法,该方法能够有效提高对于硬件木马的检测速度、不同种类硬件木马的检测区分度和时序电路中硬件木马的检测效果。
为了实现上述目的,本发明的实施例提出了一种基于电路特征分析的硬件木马检测方法,包括以下步骤:输入被检测电路,并获取被检测电路的高层描述文件;根据所述被检测电路的高层描述文件对所述被检测电路中的功能模块进行识别,以判断所述功能模块的可信度,以及当所述功能模块可信时,对所述被检测电路进行标记;从标记后的被检测电路中提取分类特征,并与预设的硬件木马电路特征库中的每一类硬件木马的特征进行匹配,并根据匹配结果,输出分类的特征分析结果;对所述分类的特征分析结果进行综合分析,以得到所述被检测电路的可信性信息。
根据本发明实施例的基于电路特征分析的硬件木马检测方法,采用已知的硬件木马电路所提取的电路特征作为检测标准,通过特征对比得到被检测电路中每一类硬件木马的分析结果,并经过综合分析输出,可很大程度降低硬件木马检测的运行时间,使得集成电路的安全性验证时间对于集成电路设计流程的影响大为减小;并且,能够有效地区分不同类型的硬件木马,为针对性的人工检查提供依据;另外,能够有效地检测到时序电路中由多个组合逻辑电路块组成的硬件木马;同时,能够提升硬件木马检测方法的可扩展性,通过扩充硬件木马特征库的方式应对未来的硬件木马。
另外,根据本发明上述实施例的基于电路特征分析的硬件木马检测方法还可以具有如下附加的技术特征:
在一些示例中,所述硬件木马电路特征库针对不同种类的硬件木马,对于其特征进行总结,并可以针对所述被检测电路的功能对于特征匹配的判决标准进行调整。
在一些示例中,所述被检测电路的描述层次为:输入端口、触发器、输出端口之间数据流动的触发器间数据流图。
在一些示例中,所述触发器间数据流图为有向图。
在一些示例中,所述硬件木马电路特征库包括:内部延迟电路进行触发的硬件木马、泄露芯片内部信息的硬件木马、输入数据相关的单次触发硬件木马、输入数据相关的多次触发硬件木马、时序电路中由多个分离的组合逻辑电路块组成的硬件木马。
在一些示例中,所述硬件木马电路特征库中对于硬件木马特征的描述为所述触发器间数据流图中结点的特征以及结点集合特征的描述。
在一些示例中,从标记后的被检测电路中提取分类特征,具体包括:根据所述硬件木马电路特征库中包含的五种硬件木马及其对应的特征描述,对于触发器间数据流图的结点或者结点集合的信息进行提取;如果一类硬件木马的电路特征为其触发器间数据流图含有具有满足一定条件的结点集合,电路特征抽取将提取被检测电路中所有的符合所述条件的结点集合;如果一类硬件木马的电路特征为其触发器间数据流图含有具有满足一定条件的结点,电路特征抽取将统计所述条件上每个结点的数据。
在一些示例中,所述与预设的硬件木马电路特征库中的每一类硬件木马的特征进行匹配,进一步包括:根据所述硬件木马电路特征库中对于每一类硬件木马电路特征的特征匹配判决标准,对所述被测电路特征抽取所得到结点或结点集合进行分析,判决被抽取的电路特征是否符合硬件木马电路特征库中所述特征。
在一些示例中,所述分类的特征分析结果指所述匹配结果中满足所述特征匹配判决标准、符合所述硬件木马电路特征库的所有嫌疑对象,其中,对于不同的特征,其对应的嫌疑对象的单位为结点或者结点集合。
在一些示例中,所述对所述分类的特征分析结果进行综合分析,以得到所述被检测电路的可信性信息,进一步包括:根据每一类硬件木马嫌疑对象的数量、对于判决标准的满足程度、占电路总规模的比例以及所述被检测电路所专门制定的标准对所述分类的特征分析结果进行分析,并产生硬件木马的清单、种类以及置信度三类电路的可信性信息。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1是根据本发明一个实施例的基于电路特征分析的硬件木马检测方法的流程图;
图2是根据本发明一个实施例的被检测电路的模块示意图;
图3是根据本发明一个实施例的被检测电路在触发器间数据流图层次的示意图;以及
图4是根据本发明一个实施例的被检测电路在添加一个小型内部延迟电路进行触发的木马后,在触发器间数据流图层次的示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
以下结合附图描述根据本发明实施例的基于电路特征分析的硬件木马检测方法。
图1是根据本发明一个实施例的基于电路特征分析的硬件木马检测方法的流程图。如图1所示,该方法包括以下步骤:
步骤S101,输入被检测电路,并获取被检测电路的高层描述文件。
步骤S102,根据被检测电路的高层描述文件对被检测电路中的功能模块进行识别,以判断功能模块的可信度,以及当功能模块可信时,对被检测电路进行标记。
在具体示例中,该步骤即对被检测电路进行预处理。具体地说,对于满足电路规模较小、功能划分较明确等要求的被检测电路,不需要输入被检测电路的高层次描述文件,也即被检测电路进行处理。而于满足电路规模较大、电路结构较为复杂等条件的被检测电路,输入被检测电路及其高层次描述文件,并根据被检测电路的高层次描述文件对被测电路中的功能模块进行识别,对于易于识别的部分,若符合被检测电路的高层次描述文件,将其标记为可信,输出添加标记后的被检测电路。
进一步地,在该示例中,例如,被检测电路的描述层次为:电路只考虑输入端口、触发器、输出端口之间数据流动的触发器间数据流图。该触发器间数据流图忽略了组合逻辑电路中输入对于输出的控制函数等组合逻辑细节,只保留数据流动方向。该触发器间数据流图中含有结点与有向边,其中1个结点表示1个输入端口、1个输出端口、或1个触发器,有向边表示数据从该边的出发结点流向该边的到达结点,例如图2所示。在一些示例中,例如,被检测电路均为触发器间数据流图层次描述的电路。当然,需要说明的是,在实际应用过程中,也可以选择不同的描述层次,例如门级电路描述层次等,此处仅是以触发器间数据流图层次为例进行说明,而不能理解为对本发明的限制。
更为具体地,触发器间数据流图例如为但不限于有向图。触发器间数据流图中,对于任意结点Ni,若存在一条边,该边从结点Ni出发,并抵达结点Ni,则称结点Ni为“带环结点”。反之,对于任意结点Ni,若所有从该结点出发的边,均不会抵达结点Ni,则称结点Ni为“普通结点”。对于任意结点Ni,若存在一条边,该边从结点Ni出发,并抵达结点Nk,则称结点Ni为结点Nk的“前驱结点”,称结点Nk为结点Ni的“后继节点”。对于任意结点Ni,若有p条边从该结点出发,则称结点Ni的“出度”为p;对于任意结点Ni,若有q条边到达该结点,则称结点Ni的“出度”为q。
步骤S103,从标记后的被检测电路中提取分类特征,并与预设的硬件木马电路特征库中的每一类硬件木马的特征进行匹配,并根据匹配结果,输出分类的特征分析结果。
具体地说,在本发明的一个实施例中,硬件木马电路特征库是预先建立的,其针对不同种类的硬件木马,对于其特征进行总结,并可以针对被检测电路的功能对于特征匹配的判决标准进行调整。更为具体地,硬件木马电路特征库中例如包括但不限于以下硬件木马种类的特征、及其对应的特征匹配所使用的判决标准:内部延迟电路进行触发的硬件木马,泄露芯片内部信息的硬件木马,输入数据相关的单次触发硬件木马,输入数据相关的多次触发硬件木马,时序电路中由多个分离的组合逻辑电路块组成的硬件木马等。
在一些示例中,例如,硬件木马电路特征库中对于硬件木马特征的描述为但不限于触发器间数据流图中结点的特征以及结点集合特征的描述。
进一步地,在步骤S103中,从标记后的被检测电路中提取分类特征,具体包括:根据硬件木马电路特征库中包含的上述五种硬件木马及其对应的特征描述,对于触发器间数据流图的结点或者结点集合的信息进行提取;如果一类硬件木马的电路特征为其触发器间数据流图含有具有满足一定条件的结点集合,电路特征抽取将提取被检测电路中所有的符合条件的结点集合;如果一类硬件木马的电路特征为其触发器间数据流图含有具有满足一定条件的结点,电路特征抽取将统计条件上每个结点的数据。
进一步地,在步骤S103中,分类的特征分析结果是指特征匹配分析后,匹配结果中满足特征匹配判决标准、符合硬件木马电路特征库的所有嫌疑对象,其中,对于不同的特征,其对应的嫌疑对象的单位为结点或者结点集合。
步骤S104,对分类的特征分析结果进行综合分析,以得到被检测电路的可信性信息。
进一步地,在该步骤中,所述与预设的硬件木马电路特征库中的每一类硬件木马的特征进行匹配,进一步包括:根据硬件木马电路特征库中对于每一类硬件木马电路特征的特征匹配判决标准,对被测电路特征抽取所得到结点或结点集合进行分析,判决被抽取的电路特征是否符合硬件木马电路特征库中特征。
进一步地,上述的对分类的特征分析结果进行综合分析,以得到被检测电路的可信性信息,进一步包括:根据每一类硬件木马嫌疑对象的数量、对于判决标准的满足程度、占电路总规模的比例以及被检测电路所专门制定的标准对分类的特征分析结果进行分析,并产生硬件木马的清单、种类以及置信度三类电路的可信性信息,进一步地,输出这些可信性信息。
根据本发明实施例的基于电路特征分析的硬件木马检测方法,采用已知的硬件木马电路所提取的电路特征作为检测标准,通过特征对比得到被检测电路中每一类硬件木马的分析结果,并经过综合分析输出,可很大程度降低硬件木马检测的运行时间,使得集成电路的安全性验证时间对于集成电路设计流程的影响大为减小;并且,能够有效地区分不同类型的硬件木马,为针对性的人工检查提供依据;另外,能够有效地检测到时序电路中由多个组合逻辑电路块组成的硬件木马;同时,能够提升硬件木马检测方法的可扩展性,通过扩充硬件木马特征库的方式应对未来的硬件木马。
为了便于更好地理解本发明实施例的基于电路特征分析的硬件木马检测方法,以下结合附图2-4,以具体的示例来对该方法作进一步描述。在该示例中,该方法的流程主要涉及以下部分:
1.关于被检测电路的描述。
该示例中所采用的被检测电路描述例如图3所示。图3所示电路描述为图2所示的电路在仅考虑输入端口、触发器、输出端口间数据流动的触发器间数据流图层次的描述。在该示例中,被检测电路均为触发器间数据流图层次描述的电路。
2.关于被检测电路的高层次描述。
该示例中所采用的被检测电路的高层次描述为被检测电路的功能说明书,在该说明书中对于被检测电路的总体功能、不同功能模块的功能进行详细的规定与说明。
3.关于硬件木马电路特征库的描述。
(3.1)在该示例中,内部延迟电路进行触发的硬件木马的特征为在触发器间数据流图中,存在有含有结点数量大于N1的结点集合。在该集合中,所有结点均为带环结点,并且该集合中任意结点,其前驱结点和后继结点中,至少存在1个带环结点同时也在此集合中。其中N1由硬件木马电路特征库中对应于此类木马的判决准则给出。作为具体地示例,例如图4所示,展示了图2中所示的被检测电路在添加一个小型内部延迟电路进行触发的木马后,在触发器间数据流图层次的示意。
(3.2)关于泄露芯片内部信息的硬件木马,在触发器间数据流图中,存在含有结点数量大于N2的结点集合。在该结点集合中,所有结点沿着有向边所描述数据流动方向,最终无法到达对应于输出端口的结点;并且对于该结点集合中的任意结点,在其前驱结点和后继节点中,至少存在1个结点同时也在此集合中。N2由硬件木马电路特征库中对应于此类木马的判决准则给出。
(3.3)输入数据相关的单次触发硬件木马为在该硬件木马的触发输入满足所设计的触发要求一次,则该硬件木马触发。此类硬件木马的特征为:在触发器间数据流图中,存在入度大于N3的结点,其中N3由硬件木马电路特征库中对应于此类木马的判决准则给出。
(3.4)输入数据相关的多次触发硬件木马为在该硬件木马的触发输入出现一定组合若干次之后,该硬件木马触发。此类木马的特征为:在触发器间数据流图中,存在有一个结点集合,其所有结点均为带环结点;对于该集合中任意结点,其前驱结点和后继结点,至少存在1个带环结点同时也在此集合中;并且,该集合中所有结点,从不在此集合内的结点出发的边获得的入度总和大于N4,其中N4由硬件木马电路特征库中对应于此类木马的判决准则给出。
(3.5)时序电路中由多个分离的组合逻辑电路块组成的硬件木马为在触发器间数据流图之中,存在有一个含有结点数量大于N5的结点集合,在该结点集合中,所有结点的出度均小于N6,并且该结点集合中的任意结点,其前驱结点或者后继结点中至少含有一个结点也在此集合中,或者其与该集合中的其他结点共享至少一个相同的后继结点。
4.关于预处理过程的描述。
在该示例中,预处理过程对于被检测电路的高层次描述文件,也即被检测电路的功能说明书进行词法分析,通过与电路功能说明书数据库及RTL级别代码数据库进行对比查找,得出根据被检测电路的功能说明书得到的必要功能模块划分,及部分功能模块的内部电路形式模板。根据电路形式模板,预处理对于被检测电路中对应部分进行匹配,将匹配到的部分标记为可信的功能电路。
5.关于特征抽取与匹配的描述。
(5.1)对于内部延迟电路进行触发的硬件木马,其电路特征抽取方式为:首先,在触发器间数据流图中找到所有带有自环的结点;之后,将相互之间有连接关系的自环结点进行归并,得到所有带环结点的结点集合。
(5.2)对于泄露芯片内部信息的硬件木马,其电路特征抽取方式为:从触发器间数据流图中输出端口对应的结点,沿着数据流图中有向边的反向,遍历找到所有能够到达的结点,并得到无法到达的结点。若从输出端口无法到达的结点,在其前驱结点或者后继结点中存在有同样从输出端口无法到达的结点,将其归并为同一个结点集合中。对于该类硬件木马,电路特征抽取将得到所有满足上述条件的结点集合。
(5.3)对于输入数据相关的单次触发硬件木马,其电路特征抽取方式为:在触发器间数据流图中统计所有结点的入度。
(5.4)对于输入数据相关的多次触发硬件木马,其电路特征抽取方式为:首先,在触发器间数据流图中找到所有带有自环的结点;之后,将相互之间有连接关系的自环结点进行归并,得到所有带环结点的结点集合。
(5.5)对于时序电路中由多个组合逻辑电路块组成的硬件木马,其电路特征抽取方式为:在触发器间数据流图中统计所有结点的出度,并得到出度小于N6的全部结点;对于根据前述过程所有得到的结点,若对于任意结点,其前驱结点或者后继结点中含有同样在前述过程中得到的结点,或者与前述过程中得到的结点共享同一个后继结点,将这些结点归并为一个结点集合。对于该类硬件木马,电路特征抽取将得到所有满足经过前述过程得到的结点集合。
(5.6)对于内部延迟电路进行触发的硬件木马,获取电路特征抽取得到的所有结点集合,将所含结点数大于N1的结点集合报告为该类硬件木马的嫌疑对象,并产生所有嫌疑对象清单及其所含结点数。
(5.7)对于泄露芯片内部信息的硬件木马,获取电路特征抽取得到的所有结点集合,将所含结点数大于N2的结点集合报告为该类硬件木马的可疑对象,并产生所有嫌疑对象清单及其所含结点数。
(5.8)对于输入数据相关的单次触发硬件木马,获取电路特征抽取得到的所有结点的入度数据,将入度大于N3的所有结点报告为该类硬件木马的可疑对象,并产生所有嫌疑对象清单及其入度。
(5.9)对于输入数据相关的多次触发硬件木马,获取电路特征抽取得到的所有结点集合,将从非结点集合内部获得的入度之和大于N4的所有结点集合报告为该类硬件木马可疑对象,并产生所有嫌疑对象清单及其从非结点集合内部的入度之和。
(5.10)对于时序电路中由多个组合逻辑电路块组成的硬件木马,获取电路特征抽取得到的所有结点集合,将所含结点数大于N5的所有结点集合报告为该类硬件木马嫌疑对象,并产生所有嫌疑对象清单及其所含结点数。
6.关于分类的特征分析结果的描述。
在该示例中,分类的特征分析结果例如包括:上述(5.6)部分所产生的所有内部延迟电路进行触发的硬件木马嫌疑对象清单及其所含结点数;上述(5.7)部分所产生的所有泄露芯片内部信息的硬件木马嫌疑对象清单及其所含结点数;上述(5.8)部分所产生的所有输入数据相关的单次触发硬件木马嫌疑对象清单及其入度;上述(5.9)部分所产生的所有输入数据相关的多次触发硬件木马嫌疑对象清单及其从非结点集合内部的入度之和;上述(5.10)部分所产生的所有时序电路中由多个组合逻辑电路块组成的硬件木马嫌疑对象清单及其所含结点数。
7.关于分类结果综合分析的描述。
根据上述得到的每一类硬件木马嫌疑对象的数量、所对应特征的数据、嫌疑对象综述占电路总规模的比例,以及根据被检测电路功能所设置的标准,进行分析,并产生硬件木马的清单、种类以及置信度三类电路的可信性信息。
8.检测输出,将特征评价结果分析得到的信息输出给用户。
进一步地,如下表1所示,显示了利用本发明实施例的方法进行基于电路特征分析的硬件木马检测实现时获得的性能结果。可以看出在电路规模很大,如十几万门的情况下,本实施例中的触发器间数据流图的规模仍然不大,为数千结点数量级。通过预处理与特征分析,每类硬件木马检测出来的可疑对象数量都很小,并且都命中了植入在测试电路中的硬件木马。对于所有的测试电路,其运行时间在毫秒量级,比分析组合逻辑的方法快了数个数量级。同时,对于时序电路中多块组合逻辑电路组成的硬件木马,本发明实施例的方法也展示出了很好的检测效果。
表1
表1
综上,根据本发明实施例提出的针对集成电路的硬件木马检测方法,可以很大程度降低了硬件木马检测的总体运行时间,由分析组合逻辑的方法所需要的数小时至数天,减少至对于极大规模的电路只需数分钟,使得集成电路的安全性验证时间对于集成电路设计流程的影响大为减小。同时,该方法能够有效地区分不同类型的硬件木马,实现精确地报告可疑对象,为针对性的人工检查提供依据;能够有效地检测到时序电路中由多个组合逻辑电路块组成的硬件木马;能够提升硬件木马检测方法的可扩展性,通过扩充硬件木马特征库的方式应对未来的硬件木马。
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”、“顺时针”、“逆时针”、“轴向”、“径向”、“周向”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
在本发明中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (7)
1.一种基于电路特征分析的硬件木马检测方法,其特征在于,包括以下步骤:
输入被检测电路,并获取被检测电路的高层描述文件;
根据所述被检测电路的高层描述文件对所述被检测电路中的功能模块进行识别,以判断所述功能模块的可信度,以及当所述功能模块可信时,对所述被检测电路进行标记;
从标记后的被检测电路中提取分类特征,并与预设的硬件木马电路特征库中的每一类硬件木马的特征进行匹配,并根据匹配结果,输出分类的特征分析结果,其中,所述硬件木马电路特征库针对不同种类的硬件木马,对于其特征进行总结,并可以针对所述被检测电路的功能对于特征匹配的判决标准进行调整,所述硬件木马电路特征库包括:内部延迟电路进行触发的硬件木马、泄露芯片内部信息的硬件木马、输入数据相关的单次触发硬件木马、输入数据相关的多次触发硬件木马、时序电路中由多个分离的组合逻辑电路块组成的硬件木马;
对所述分类的特征分析结果进行综合分析,以得到所述被检测电路的可信性信息,具体包括:根据每一类硬件木马嫌疑对象的数量、对于判决标准的满足程度、占电路总规模的比例以及所述被检测电路所专门制定的标准对所述分类的特征分析结果进行分析,并产生硬件木马的清单、种类以及置信度三类电路的可信性信息。
2.根据权利要求1所述的基于电路特征分析的硬件木马检测方法,其特征在于,所述被检测电路的描述层次为:输入端口、触发器、输出端口之间数据流动的触发器间数据流图。
3.根据权利要求2所述的基于电路特征分析的硬件木马检测方法,其特征在于,所述触发器间数据流图为有向图。
4.根据权利要求3所述的基于电路特征分析的硬件木马检测方法,其特征在于,所述硬件木马电路特征库中对于硬件木马特征的描述为所述触发器间数据流图中结点的特征以及结点集合特征的描述。
5.根据权利要求4所述的基于电路特征分析的硬件木马检测方法,其特征在于,从标记后的被检测电路中提取分类特征,具体包括:
根据所述硬件木马电路特征库中包含的五种硬件木马及其对应的特征描述,对于触发器间数据流图的结点或者结点集合的信息进行提取;
如果一类硬件木马的电路特征为其触发器间数据流图含有具有满足一定条件的结点集合,电路特征抽取将提取被检测电路中所有的符合所述条件的结点集合;
如果一类硬件木马的电路特征为其触发器间数据流图含有具有满足一定条件的结点,电路特征抽取将统计所述条件上每个结点的数据。
6.根据权利要求5所述的基于电路特征分析的硬件木马检测方法,其特征在于,所述与预设的硬件木马电路特征库中的每一类硬件木马的特征进行匹配,进一步包括:
根据所述硬件木马电路特征库中对于每一类硬件木马电路特征的特征匹配判决标准,对所述被测电路特征抽取所得到结点或结点集合进行分析,判决被抽取的电路特征是否符合硬件木马电路特征库中所述特征。
7.根据权利要求6所述的基于电路特征分析的硬件木马检测方法,其特征在于,所述分类的特征分析结果指所述匹配结果中满足所述特征匹配判决标准、符合所述硬件木马电路特征库的所有嫌疑对象,其中,对于不同的特征,其对应的嫌疑对象的单位为结点或者结点集合。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510282294.6A CN104850804B (zh) | 2015-05-28 | 2015-05-28 | 基于电路特征分析的硬件木马检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510282294.6A CN104850804B (zh) | 2015-05-28 | 2015-05-28 | 基于电路特征分析的硬件木马检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104850804A CN104850804A (zh) | 2015-08-19 |
CN104850804B true CN104850804B (zh) | 2018-01-12 |
Family
ID=53850441
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510282294.6A Active CN104850804B (zh) | 2015-05-28 | 2015-05-28 | 基于电路特征分析的硬件木马检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104850804B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107656839A (zh) * | 2017-08-11 | 2018-02-02 | 天津大学 | 集成电路安全性评估与检测方法 |
CN107886012A (zh) * | 2017-10-28 | 2018-04-06 | 天津大学 | 基于门级结构特征的单触发硬件木马检测方法 |
CN108647533B (zh) * | 2018-02-14 | 2021-10-08 | 清华大学 | 用于检测硬件木马的安全断言自动生成方法 |
CN110363033A (zh) * | 2018-04-09 | 2019-10-22 | 国民技术股份有限公司 | 一种芯片安全性评估方法及装置 |
CN109740348B (zh) * | 2019-01-29 | 2022-06-14 | 福州大学 | 一种基于机器学习的硬件木马定位方法 |
CN112487503A (zh) * | 2020-12-09 | 2021-03-12 | 电子科技大学 | 基于硬件木马数据信息统计的检测系统和方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102854454A (zh) * | 2012-08-23 | 2013-01-02 | 天津大学 | 在集成电路测试中用于缩短硬件木马的验证时间的方法 |
CN103150498A (zh) * | 2013-03-28 | 2013-06-12 | 哈尔滨工业大学(威海) | 基于单分类支持向量机的硬件木马识别方法 |
CN104215895A (zh) * | 2014-09-02 | 2014-12-17 | 工业和信息化部电子第五研究所 | 基于测试向量的硬件木马检测方法及系统 |
-
2015
- 2015-05-28 CN CN201510282294.6A patent/CN104850804B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102854454A (zh) * | 2012-08-23 | 2013-01-02 | 天津大学 | 在集成电路测试中用于缩短硬件木马的验证时间的方法 |
CN103150498A (zh) * | 2013-03-28 | 2013-06-12 | 哈尔滨工业大学(威海) | 基于单分类支持向量机的硬件木马识别方法 |
CN104215895A (zh) * | 2014-09-02 | 2014-12-17 | 工业和信息化部电子第五研究所 | 基于测试向量的硬件木马检测方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104850804A (zh) | 2015-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104850804B (zh) | 基于电路特征分析的硬件木马检测方法 | |
Szelepcsényi | The method of forced enumeration for nondeterministic automata | |
Kremenek et al. | Z-ranking: Using statistical analysis to counter the impact of static analysis approximations | |
CN109325228A (zh) | 英文事件触发词抽取方法和系统 | |
CN107886012A (zh) | 基于门级结构特征的单触发硬件木马检测方法 | |
CN104077396A (zh) | 一种钓鱼网站检测方法及装置 | |
CN105825138A (zh) | 一种敏感数据识别的方法和装置 | |
Xue et al. | Padre: Physically-aware diagnostic resolution enhancement | |
CN106407810B (zh) | 一种基于递归下降算法的rtl级硬件木马检测方法 | |
CN102073823A (zh) | 一种基于缺陷分析的软件可信性评价方法 | |
CN109508378A (zh) | 一种样本数据处理方法及装置 | |
Zhang et al. | Monitoring of probabilistic timed property sequence charts | |
CN106376002A (zh) | 一种管理方法及装置、垃圾短信监控系统 | |
Tang et al. | Diagnosing cell internal defects using analog simulation-based fault models | |
CN109543408A (zh) | 一种恶意软件识别方法和系统 | |
Xue et al. | Improving diagnostic resolution of failing ICs through learning | |
CN106339313A (zh) | 一种Java API程序异常与文档的描述不一致自动检测方法 | |
Shen et al. | Lmdet: A “naturalness” statistical method for hardware trojan detection | |
CN109165665A (zh) | 一种类别分析方法及系统 | |
Wang et al. | More anti-chain based refinement checking | |
Torres-Silva et al. | Biostratigraphy and evolutionary tendencies of Eocene heterostegines in western and central Cuba based on morphometric analyses | |
CN109507566A (zh) | 逻辑电路单粒子双故障的故障模拟方法 | |
Isaak et al. | Efficient inclusion testing for simple classes of unambiguous ω-automata | |
De Nicola | Behavioral equivalences | |
CN107430590A (zh) | 数据比较 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |