CN112380534B - 一种基于电路结构分析的硬件木马检测方法 - Google Patents
一种基于电路结构分析的硬件木马检测方法 Download PDFInfo
- Publication number
- CN112380534B CN112380534B CN202011264093.0A CN202011264093A CN112380534B CN 112380534 B CN112380534 B CN 112380534B CN 202011264093 A CN202011264093 A CN 202011264093A CN 112380534 B CN112380534 B CN 112380534B
- Authority
- CN
- China
- Prior art keywords
- circuit structure
- data
- circuit
- gate
- hardware trojan
- 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
Images
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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/567—Computer malware detection or handling, e.g. anti-virus arrangements using dedicated hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/24323—Tree-organised classifiers
-
- 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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/20—Ensemble learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Virology (AREA)
- Evolutionary Biology (AREA)
- Medical Informatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于电路结构分析的硬件木马检测方法,包括采集电路结构数据信息;对所述电路结构进行分解和重组,并对所述分解重组后的电路结构数据进行预处理;利用Stacking模型集成方法集成检测模型,对所述处理后的数据进行检测。一方面采用遍历的方法提取三组硬件木马的门级电路特征,随后利用NLP思想将整体的电路结构分块并保存为初始数据;针对数据存在不同量级的情况,为了保持门级电路数据的完整性和可比性,再采用Z‑Score标准化方法,对分类器进行改进,充分利用不同分类器的优势使得对硬件木马检测时预测精度较高,有较低的误判率。
Description
技术领域
本发明涉及硬件安全的技术领域,尤其涉及一种基于电路结构分析的硬件木马检测方法。
背景技术
由于集成电路(IC)行业的持续全球化的影响,硬件电路领域出现了许多新的硬件安全挑战,其中就包含硬件木马(HT)问题。如今,IC设计中广泛采用了第三方知识产权(IP)内核,以降低开发成本和缩短产品上市时间。由于第三方IP内核是由外包供应商设计的,因此对手可以轻松地将HT插入IP内核。而且HT很难检测,这就会使硬件遭受严重的攻击,例如不可预测的芯片故障,机密信息泄漏等。因此,硬件木马检测是非常重要的安全问题。
集成电路安全是当今时代需要关注的一个焦点问题,而硬件木马检测作为集成电路安全的一部分,也备受全世界安全领域关注。在过去的一段时间内,硬件木马检测的焦点方向放在逻辑测试与旁信号分析两个主要方面。提出针对安全性问题,建立辅助电路来帮助硬件木马的检测,将电路冗余部分智能地应用到第三方知识产权(IP)中来对木马电路进行计数的方法,以及增加认证技术信息来防止电路中插入硬件木马。近些年,随着人工智能地崛起,机器学习也成为了处理数据的一大杀器,因此在硬件木马检测的领域内,也兴起了一些基于机器学习的硬件木马检测方法,比如采用门级网表的特征分析以及分析基于分类的无硬件木马的电路的自动布局识别。
发明内容
本部分的目的在于概述本发明的实施例的一些方面以及简要介绍一些较佳实施例。在本部分以及本申请的说明书摘要和发明名称中可能会做些简化或省略以避免使本部分、说明书摘要和发明名称的目的模糊,而这种简化或省略不能用于限制本发明的范围。
鉴于上述现有硬件木马检测存在的问题,提出了本发明。
因此,本发明解决的技术问题是:现有的硬件木马检测技术的检测能力较低并且进行检测时误判率较高。
为解决上述技术问题,本发明提供如下技术方案:采集电路结构数据信息;对所述电路结构进行分解和重组,并对所述分解重组后的电路结构数据进行预处理;利用Stacking模型集成方法集成检测模型,对所述处理后的数据进行检测。
作为本发明所述的基于电路结构分析的硬件木马检测方法的一种优选方案,其中:所述采集电路结构数据信息包括,使用遍历法采集三组门级网表中的电路结构特征,三组电路结构特征分别为逻辑门结构、触发器结构以及逻辑循环关系结构。
作为本发明所述的基于电路结构分析的硬件木马检测方法的一种优选方案,其中:所述遍历法包括,设定C(V,τ,ω)中的边集τ为顶集V中元素的有序配对,其中将V为电路结构,将其定义为顶点,τ为连接逻辑关系的线,将其定义为边缘,ω为次数,即从一处信号开始在两个逻辑之间所经过的次数;若根源为顶点V1,则为具有随机变量V1,V2,V3,…,Vi,用表示从顶点Vi向后图步,再进行迭代遍历从相邻顶点到最后一个顶点的所有情况。
作为本发明所述的基于电路结构分析的硬件木马检测方法的一种优选方案,其中:所述对电路结构进行分解和重组包括,将传统电路图转换为有向图,利用5-gram对门级电路进行分块处理,以有向图的形式表示所述三组电路结构特征,并建立电路结构的顺序共现矩阵,生成初始数据。
作为本发明所述的基于电路结构分析的硬件木马检测方法的一种优选方案,其中:所述利用NLP方法对门级电路进行分块处理包括,利用所述NLP方法设计门级电路结构的顺序共现矩阵,其矩阵表示为所述共现矩阵是一个满阵,其行向量与列向量为N各种电路结构之和,计算后面电路结构在基准电路中跟随前面电路结构的次数。
作为本发明所述的基于电路结构分析的硬件木马检测方法的一种优选方案,其中:对所述结构数据进行预处理包括,利用Z-Score标准化的方法对数据进行预处理,将不同量级的数据统一转化为同一个量级,统一用计算出的Z-Score进行衡量,保证门级电路数据之间的完整性和可比性,其中Z-Score标准化是一个分数与平均数的差再除以标准差的过程,其公式可表示为:
其中:x为一个电路结构所对应的向量数据,μ为所有数据的平均值,σ为标准差。
作为本发明所述的基于电路结构分析的硬件木马检测方法的一种优选方案,其中:所述集成检测模型包括,使用随机森林与LSTM两种基模型集成的方式组成新的检测模型,将所述检测模型采用stacking的集成方法将两种模型进行组合,并采取5折的交叉验证方式,来分批训练模型。
作为本发明所述的基于电路结构分析的硬件木马检测方法的一种优选方案,其中:所述stacking集成方法包括,所述stacking集成方法利用训练模型学习使用底层学习器的预测结果。
作为本发明所述的基于电路结构分析的硬件木马检测方法的一种优选方案,其中:所述利用训练模型学习使用底层学习器的预测结果包括,将使用随机森林与LSTM两种基模型得当的预测数据作为训练数据,将使用集成方法后得到的预测数据作为检测数据,利用新得到的所述训练数据和检测数据对下层学习器进行再训练,使最终的预测结果更加准确。
本发明的有益效果:一方面采用遍历的方法提取三组硬件木马的门级电路特征,随后利用NLP思想将整体的电路结构分块并保存为初始数据;针对数据存在不同量级的情况,为了保持门级电路数据的完整性和可比性,再采用Z-Score标准化方法,对分类器进行改进,充分利用不同分类器的优势使得对硬件木马检测时预测精度较高,有较低的误判率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。其中:
图1为本发明第一个实施例所述的基于电路结构分析的硬件木马检测方法的流程示意图;
图2为本发明第一个实施例所述的基于电路结构分析的硬件木马检测方法的整体原理图;
图3为本发明第一个实施例所述的基于电路结构分析的硬件木马检测方法的逻辑循环结构图;
图4为本发明第一个实施例所述的基于电路结构分析的硬件木马检测方法的电路分解与重组图;
图5为本发明第一个实施例所述的基于电路结构分析的硬件木马检测方法的Stacking模型集成方法示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合说明书附图对本发明的具体实施方式做详细的说明,显然所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明的保护的范围。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
其次,此处所称的“一个实施例”或“实施例”是指可包含于本发明至少一个实现方式中的特定特征、结构或特性。在本说明书中不同地方出现的“在一个实施例中”并非均指同一个实施例,也不是单独的或选择性的与其他实施例互相排斥的实施例。
本发明结合示意图进行详细描述,在详述本发明实施例时,为便于说明,表示器件结构的剖面图会不依一般比例作局部放大,而且所述示意图只是示例,其在此不应限制本发明保护的范围。此外,在实际制作中应包含长度、宽度及深度的三维空间尺寸。
同时在本发明的描述中,需要说明的是,术语中的“上、下、内和外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一、第二或第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
本发明中除非另有明确的规定和限定,术语“安装、相连、连接”应做广义理解,例如:可以是固定连接、可拆卸连接或一体式连接;同样可以是机械连接、电连接或直接连接,也可以通过中间媒介间接相连,也可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
实施例1
参照图1~4,为本发明的第一个实施例,该实施例提供了一种基于电路结构分析的硬件木马检测方法,包括:
S1:采集电路结构数据信息。需要说明的是,
采集电路结构数据信息包括,使用遍历法采集三组门级网表中的电路结构特征,三组电路结构特征分别为逻辑门结构、触发器结构以及逻辑循环关系结构;
进一步的是,对于本方法采用的三组门级网表硬件木马电路的特征,赋予不同的标注,其中逻辑门结构关系:对于组合电路中的木马电路触发,尽管硬件木马的触发条件非常少,但是与正常电路相比,逻辑门在数量上会有很大增加并且相互逻辑门连接关系也会存在变差,因此将逻辑门结构关系考虑为硬件木马的门级特征之一,对不同类型的逻辑门标注为A,B,C,D…;触发器结构关系:对于顺序电路,电路中的硬件木马电路部分始终很小,因此在顺序电路中触发电平更小且更难被检测,例如硬件木马触发部分存在电平触发器,当CLK信号为高电平时,硬件木马被激活并接受输入信号,并按照输入信号将触发器输出转置成相应的输出,因此同样将触发器结构关系考虑为硬件木马的门级特征之一,并相应的将不同类型的触发器标注为a,b,c,d…;逻辑循环关系结构:一些硬件木马中具有用于激活触发器的顺序电路,这种顺序电路通常使用循环型的触发器,因此定义了一种逻辑循环结构,参照图3所示,在图中的底部路径中,可以看出很明显出现了逻辑循环结构,逻辑门A和逻辑门B以及触发器构成了一组逻辑循环结构,同样的将这种逻辑循环结构作为硬件木马的门级特征之一;
门级网表是由Trust-HUB基准电路中选择了插入硬件木马的门级网表,这些门级网表是由Verilog-HDL语言编写,因此需要采用遍历的方法将门级网表内的电路结构存储于计算机内,为后续实验做准备,遍历方法在数据采集中的优势在于对每种电路结构采集的精度,效率高,时间速度快
利用遍历法采集门级网表中的电路结构,设定C(V,τ,ω)中的边集τ为顶集V中元素的有序配对,其中将V为电路结构,将其定义为顶点,τ为连接逻辑关系的线,将其定义为边缘,ω为次数,即从一处信号开始在两个逻辑之间所经过的次数;若根源为顶点V1,则为具有随机变量V1,V2,V3,…,Vi,用表示从顶点Vi向后图步,再进行迭代遍历从相邻顶点到最后一个顶点的所有情况。
S2:对电路结构进行分解和重组,并对分解重组后的电路结构数据进行预处理。其中需要说明的是,
对电路结构进行分解和重组包括,将传统电路图转换为有向图,利用5-gram对门级电路进行分块处理,以有向图的形式表示三组电路结构特征,并建立电路结构的顺序共现矩阵,生成初始数据。
其中参照图4(a)为传统电路图,可以看出各电路结构之间的连接情况,之后将传统电路结构图转化为图4(b)的有向图形式,图中采用相应的英文与数字来代替电路结构进行标注,然后将有向图的电路结构分解参照图4(c)所示,最后基于自然语言处理中n-gram的思想,认为第五个电路结构的出现与前面4个电路结构是相关的,并将这五个电路结构设定为一组,形成了图4(d)中的前4组数据;由于实例中的传统电路中存在逻辑循环结构,特意将这种逻辑循环结构改写为图4(d)中第五组形式,简化了其他路径通过逻辑循环结构的过程,避免了数据重复对后续实验的影响。
进一步的是,利用NLP方法设计门级电路结构的顺序共现矩阵,其矩阵表示为共现矩阵是一个满阵,其行向量与列向量为N各种电路结构之和,计算M表示后面电路结构在基准电路中跟随前面电路结构的次数,例如M为2时,统计汇总顺序共线信息如下表1所示;
表1:电路结构的顺序共现矩阵。
在构造的电路结构顺序共现矩阵中,行向量和列向量都具有相关的含义,行向量表示顺序连接到当前电路结构的下一级电路结构,并记录下一级电路结构和次数,列向量表示依次连接到当前电路结构的上层电路结构,并记录上层电路结构和次数;我们从同现矩阵中了解到,逻辑回路结构C1→A2,A2→a1,a1→C1出现在有向图中,这清楚地表明我们的方法可以代表硬件木马的特征是逻辑循环结构;最后我们将电路结构的顺序共现矩阵中的列向量和行向量连接起来,以生成向量数据格式,例如C1的向量形式为[0,0,0,0,0,1,0,1,1,0,3,0,0,0,0,0,0,0];
最后利用Z-Score标准化的方法对数据进行预处理,将不同量级的数据统一转化为同一个量级,统一用计算出的Z-Score进行衡量,保证门级电路数据之间的完整性和可比性,其中Z-Score标准化是一个分数与平均数的差再除以标准差的过程,其公式可表示为:
其中:x为一个电路结构所对应的向量数据,μ为所有数据的平均值,σ为标准差。
S3:利用Stacking模型集成方法集成检测模型,对处理后的数据进行检测。其中需要说明的是,
集成检测模型包括,使用随机森林与LSTM两种基模型集成的方式组成新的检测模型,将检测模型采用stacking的集成方法将两种模型进行组合,并采取5折的交叉验证方式,来分批训练模型,其中stacking集成方法利用训练模型学习使用底层学习器的预测结果;将使用随机森林与LSTM两种基模型分批次学习初始数据并得到训练数据,将使用集成方法后得到的预测数据作为检测数据,利用新得到的训练数据和检测数据对下层学习器进行再训练,使最终的预测结果更加准确。
进一步的是,参照图5,stacking的集成方法具体可为:首先将所有的数据集生成为测试集和训练集(假设训练集数量为M1,测试集数量为M2),那么上层会进行5折的交叉验证,使用训练集M1的4/5作为喂养集,剩余的1/5作为验证集;每次验证相当于使用(4/5)M1条数据训练出一个模型,使用该模型对验证集进行验证得到(1/5)M1条数据,并对测试集进行预测得到M2条数据,这样经过5次交叉验证,就可以得到图5中间部分的M1条数据,相当于每条数据的预测结果,这是5*M2条数据的预测结果;接下来会将M1条验证集的预测结果拼接成M1行长的矩阵,标记为A1,而对于5*M2行的测试集的预测结果进行加权平均,得到一个M2列的矩阵,标记为B1;上面得到一个基模型在数据集上的预测结果A1,A2,这样当我们对2个基模型集成的话,相于得到A1,A2,B1,B2的4个矩阵;之后我们会将A1,A2并列在一起成M1行2列的矩阵作为training data,B1,B2合并在一起成M2行2列的矩阵作为test data,让下层学习器基于这样的数据进行再训练;再训练是基于每个基模型的预测结果作为特征,次学习器会学习训练,如果往这样的基学习器的预测结果上赋予权重w,来使得最后的预测最为准确。
实施例2
本发明的第二个实施例,该实施例不同于第一个实施例的是,为了更好地对本发明方法中采用的技术效果加以验证说明,本实施例中选择不同基准电路进行测试,以验证本方法所具有的真实效果;
在实验环境为Lenovo PC(CPU 2.40GHz,内存32GB)的情况下,根据Trust-HUB上不同基准电路来评估我们的集成模型,其中我们列出12组门级基准电路及其基本信息具体参照如下表2所示;
表2:基准电路和电路结构信息。
使用scikit-learn机器学习库在Python中的随机森林分类器和Tensorflow平台中的LSTM分类器,将表内前8组门级基准电路作为训练集,并将余下的4组基准电路作为测试集来评估集成模型效果;评估指标为将木马电路中电路结构定义为正类P(Positive),将正常电路中的电路结构定义为负类N(Negative),相应的,TP(True Positive)为木马电路中的电路结构被正确识别为木马电路结构的数目,FN(False Negative)为木马电路结构被错误识别为正常电路结构的数目,TPR为正确识别为木马电路结构的概率,TN,FP和TNR的概念同理,TPR和TNR的计算公式表示为如下:
其中TPR反映模型对于硬件木马的检测率的结果为,TPR越高,检测效果越好,并且TNR也很重要,它反映模型识别正常电路结构的能力,如果TNR太低,表明存在大量的正常电路结构被模型错误识别为木马电路结构的情况,即误判率高;使用TPR反映模型的检测结果如下表3所示;
表3:各基准电路实验结果。
基准电路 | TPR | TNR | 基准电路 | TPR | TNR |
RS232-T1000 | 100% | 98.3% | S38417-T100 | 96.9% | 99.9% |
RS232-T1100 | 99.9% | 99.2% | S38471-T200 | 88.3% | 100% |
RS232-T1200 | 100% | 100% | RS232-T1300 | 99.3% | 99.7% |
S15850-T100 | 95.8% | 97.2% | RS232-T1400 | 95.2% | 98.5% |
S35932-T100 | 93.6% | 100% | S35932-T300 | 90.1% | 100% |
S35932-T200 | 100% | 99.8% | S38417-T300 | 65.1% | 97.5% |
在同样的实验环境为Lenovo PC(CPU 2.40GHz,内存32GB)的情况下,根据Trust-HUB上不同基准电路来评估我们的集成模型,使用传统的基于SVM的学习模型代替本发明对硬件木马进行检测,基于SVM的学习模型对不同的基准电路进行映射,进而实现对于硬件木马的检测;在TPR和TNR的基础上将本方法与基于SVM的方法进行比较,实验对比结果如下表4所示;
表4:实验结果比较。
由表4可以看出,在TPR和TNR模型中,使用本发明方法所得结果在65.1%~100%之间,而基于SVM的方法所得结果在30%~100%之间,并且从整体来看本发明方法所得结果要高于使用SVM的方法,因此本方法具有较高的硬件木马检测能力和较低的误判率。
应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
Claims (5)
1.一种基于电路结构分析的硬件木马检测方法,其特征在于:包括,
采集电路结构数据信息;
所述采集电路结构数据信息包括,
使用遍历法采集三组门级网表中的电路结构特征,三组电路结构特征分别为逻辑门结构、触发器结构以及逻辑循环关系结构;
对所述电路结构进行分解和重组,并对所述分解重组后的电路结构数据进行预处理;
所述对电路结构进行分解和重组包括,
将传统电路图转换为有向图,利用NLP方法对门级电路进行分块处理,以有向图的形式表示所述三组电路结构特征,并建立电路结构的顺序共现矩阵,生成初始数据;
所述利用NLP方法对门级电路进行分块处理包括,
对分解重组后的电路结构数据进行预处理包括,
利用Z-Score标准化的方法对数据进行预处理,将不同量级的数据统一转化为同一个量级,统一用计算出的Z-Score进行衡量,保证门级电路数据之间的完整性和可比性,其中Z-Score标准化是一个分数与平均数的差再除以标准差的过程,其公式可表示为:
其中:x为一个电路结构所对应的向量数据,μ为所有数据的平均值,σ为标准差;
利用Stacking模型集成方法集成检测模型,对所述处理后的数据进行检测。
3.如权利要求1所述的基于电路结构分析的硬件木马检测方法,其特征在于:所述集成检测模型包括,
使用随机森林与LSTM两种基模型集成的方式组成新的检测模型,将所述检测模型采用stacking的集成方法将两种模型进行组合,并采取5折的交叉验证方式,来分批训练模型。
4.如权利要求3所述的基于电路结构分析的硬件木马检测方法,其特征在于:所述stacking集成方法包括,
所述stacking集成方法利用训练模型学习使用底层学习器的预测结果。
5.如权利要求4所述的基于电路结构分析的硬件木马检测方法,其特征在于:所述利用训练模型学习使用底层学习器的预测结果包括,
将使用所述随机森林与LSTM两种基模型分批次学习初始数据并得到训练数据,将使用集成方法后得到的预测数据作为检测数据,利用新得到的所述训练数据和检测数据对下层学习器进行再训练,使最终的预测结果更加准确。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011264093.0A CN112380534B (zh) | 2020-11-12 | 2020-11-12 | 一种基于电路结构分析的硬件木马检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011264093.0A CN112380534B (zh) | 2020-11-12 | 2020-11-12 | 一种基于电路结构分析的硬件木马检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112380534A CN112380534A (zh) | 2021-02-19 |
CN112380534B true CN112380534B (zh) | 2022-12-09 |
Family
ID=74583562
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011264093.0A Active CN112380534B (zh) | 2020-11-12 | 2020-11-12 | 一种基于电路结构分析的硬件木马检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112380534B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113486347B (zh) * | 2021-06-30 | 2023-07-14 | 福州大学 | 一种基于语义理解的深度学习硬件木马检测方法 |
TWI789997B (zh) * | 2021-11-17 | 2023-01-11 | 財團法人資訊工業策進會 | 基於木馬電路檢測的資料處理方法及資料處理電路 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108846283B (zh) * | 2018-06-15 | 2021-11-02 | 北京航空航天大学 | 一种硬件木马实时检测系统及其设计方法 |
CN109918951B (zh) * | 2019-03-12 | 2020-09-01 | 中国科学院信息工程研究所 | 一种基于层间融合的人工智能处理器侧信道防御系统 |
CN110096879A (zh) * | 2019-04-26 | 2019-08-06 | 北京计算机技术及应用研究所 | 一种基于门级结构特征的静态硬件木马检测方法 |
CN111523116B (zh) * | 2020-03-23 | 2023-05-16 | 南京航空航天大学 | 基于机器学习的混合模式多层级的门级硬件木马检测方法 |
CN111797394B (zh) * | 2020-06-24 | 2021-06-08 | 广州大学 | 基于stacking集成的APT组织识别方法、系统及存储介质 |
-
2020
- 2020-11-12 CN CN202011264093.0A patent/CN112380534B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112380534A (zh) | 2021-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Du et al. | Deepstellar: Model-based quantitative analysis of stateful deep learning systems | |
US11087066B2 (en) | Static voltage drop (SIR) violation prediction systems and methods | |
CN112380534B (zh) | 一种基于电路结构分析的硬件木马检测方法 | |
Liu et al. | Detecting outliers in species distribution data | |
TWI448914B (zh) | 用以產生組成驗證用自動假定值之方法、系統與電腦程式產品 | |
Lubke | Latent variable mixture models | |
US9703658B2 (en) | Identifying failure mechanisms based on a population of scan diagnostic reports | |
Meng et al. | A self-test framework for detecting fault-induced accuracy drop in neural network accelerators | |
Yu et al. | Deep learning-based hardware Trojan detection with block-based netlist information extraction | |
Kim et al. | Evaluating surprise adequacy for question answering | |
Chen et al. | Physical‐aware systematic multiple defect diagnosis | |
CN114626106A (zh) | 一种基于级联结构特征的硬件木马检测方法 | |
Rematska et al. | A survey on reverse engineering of technical diagrams | |
Wang | Data learning based diagnosis | |
JP6571239B1 (ja) | 検証装置及び検証用プログラム | |
Alam et al. | DRDebug: Automated Design Rule Debugging | |
CN112749524B (zh) | 一种基于残差编码器神经网络的硬件木马电路检测方法 | |
Raman et al. | Automating design for yield: Silicon learning to predictive models and design optimization | |
US12019971B2 (en) | Static voltage drop (SIR) violation prediction systems and methods | |
Alabadee et al. | Evaluation and Implementation of Malware Classification Using Random Forest Machine Learning Algorithm | |
KR20200113397A (ko) | 데이터 불균형 해결을 위한 언더샘플링 기반 앙상블 방법 | |
US20230214575A1 (en) | Static voltage drop (sir) violation prediction systems and methods | |
US20230108103A1 (en) | Fault criticality assessment using neural twins | |
Tian et al. | A supervised machine learning application in volume diagnosis | |
CN114239083B (zh) | 一种基于图神经网络的高效状态寄存器识别方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CB03 | Change of inventor or designer information |
Inventor after: Wang Zhen Inventor after: Li Xin Inventor after: Wang Yong Inventor before: Li Xin Inventor before: Wang Zhen Inventor before: Wang Yong |
|
CB03 | Change of inventor or designer information |