CN111428245B - 面向自主芯片硬件逻辑漏洞的激活序列生成方法 - Google Patents

面向自主芯片硬件逻辑漏洞的激活序列生成方法 Download PDF

Info

Publication number
CN111428245B
CN111428245B CN202010234038.0A CN202010234038A CN111428245B CN 111428245 B CN111428245 B CN 111428245B CN 202010234038 A CN202010234038 A CN 202010234038A CN 111428245 B CN111428245 B CN 111428245B
Authority
CN
China
Prior art keywords
backtracking
node
activation sequence
value set
rule
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
Application number
CN202010234038.0A
Other languages
English (en)
Other versions
CN111428245A (zh
Inventor
陈哲
王坚
郭世泽
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN202010234038.0A priority Critical patent/CN111428245B/zh
Publication of CN111428245A publication Critical patent/CN111428245A/zh
Application granted granted Critical
Publication of CN111428245B publication Critical patent/CN111428245B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种面向自主芯片硬件逻辑漏洞的激活序列生成方法,涉及芯片硬件安全技术领域。该方法以树结构作为回溯模型的数据结构,为数据结构的块设计结构信息,为数据结构的节点设计结构信息和属性信息,为数据结构设计根节点后,构建出回溯模型;为回溯模型设计回溯策略,所述回溯策略包括剪枝策略、节点生成方法以及搜索方法;基于根节点,采用设计好回溯策略的回溯模型进行回溯,提取回溯路径,检测出回溯终点,根据回溯终点生成逻辑漏洞的激活序列。本发明首先构建回溯模型,然后基于回溯模型,设计回溯策略,最后,提取回溯路径,得到激活序列,能够保证激活序列的正确生成,且一定程度上缓解了数据爆炸。

Description

面向自主芯片硬件逻辑漏洞的激活序列生成方法
技术领域
本发明涉及芯片硬件安全技术领域,具体而言,涉及一种面向自主芯片硬件逻辑漏洞的激活序列生成方法。
背景技术
当前,半导体工业和各种生产技术广泛发展,芯片越来越小,功能却越来越复杂[1]。然而,无论是在设计阶段,还是实际芯片制造阶段,数字化集成电路(IC)都可能会遇到各种各样的硬件攻击。
近年来,芯片技术取得了飞速发展。然而,芯片功能的日趋复杂也带来了一系列的安全问题。在芯片的设计开发流程中,无论是设计人员还是开发商,都有可能引入各种各样的设计缺陷和制造缺陷。在使用新技术和新材料实现的设计芯片中,经常会观察到现有故障模型无法覆盖到的故障。此外,全球化彻底改变了整个集成电路的供应链,现代计算机系统中的芯片可能是在许多不同地方进行制造、装配的,因此很难追踪它们的来源。
现代自主芯片设计中可能存在一些难以发现的逻辑漏洞,这些漏洞可能是设计过程中,设计人员无意间引入的。当使用者或攻击者触发这些漏洞时,可能会引起系统崩溃、加密信息泄露等严重后果。
文献“Dunbar,C.,&Qu,G.Designing trusted embedded systems from finitestate machines[J].ACM Transactions on Embedded Computing Systems(TECS),2014,13(5):1-20”中介绍了一种HDL代码综合过程中引入的漏洞,即当使用综合工具对HDL代码综合优化时,会在FSM中引入一些原始设计中不存在的状态,称作无关状态。
文献“Jin Y,Yang B,Makris Y.Cycle-accurate information assurance byproof-carrying based signal sensitivity tracing[C].Hardware-Oriented Securityand Trust(HOST),International Symposium on.IEEE,2013,99-106”中提到,许多IP核的安全性未经验证,攻击者通过在设计人员调用的IP核中植入硬件木马,使得原始设计中保证其设计安全性的功能(如产生边信道指纹)无法实现,从而造成更大的安全隐患。
目前,学术界关于自主芯片的逻辑漏洞激活序列方面的研究较少。但是,在关于芯片设计的测试向量生成方面的研究已经取得了一定的进展。
在文献“Ma H K T,Devadas S,Newton A R,et al.Test generation forsequential circuits[J].IEEE Transactions on Computer Aided Design ofIntegrated Circuits&Systems,1988,7(10):1081-1093”中,研究人员提出了一种生成时序电路故障测试向量的方法,该方法提取出电路中的FSM并结合故障激活算法,能够在合理的CPU时间内完成较大规模的电路的测试向量生成工作。
在文献“Guglielmo G D,Fummi F,Marconcini C,et al.Improving high-leveland gate-level testing with FATE:A functional automatic test patterngenerator traversing unstabilised extended FSM[J].Iet Computers&DigitalTechniques,2007,1(3):187-196”中,研究人员将回跳算法、反馈学习和逻辑约束设计结合,通过覆盖FSM的状态转移,生成测试向量。在文献“Srinivas M K,Jacob J,Agrawal VD.Functional test generation for synchronous sequential circuits[J].IEEETransactions on Computer-Aided Design of Integrated Circuits,and Systems,1996,15(7):831-843”中,研究人员对电路的故障和故障传播,结合FSM提出了一种测试向量生成的算法。
在文献“Xue M,Hu A,Li G.Detecting Hardware Trojan through heuristicpartition and activity driven test pattern generation[C].2014,3-3”中,研究人员提出了一种针对硬件木马的测试向量生成算法。该算法中,研究人员通过扫描链将电路分区,然后生成算法优化后的测试向量。该向量不仅可以激活硬件木马,还可以将硬件木马的运行特性放大,从而使得硬件木马更容易检测。
发明内容
本发明针对自主芯片硬件逻辑漏洞的激活问题,提供一种面向自主芯片硬件逻辑漏洞的激活序列生成方法,对于硬件安全领域的研究具有重要的参考价值。
本发明采取的技术方案如下:
一种面向自主芯片硬件逻辑漏洞的激活序列生成方法,包括以下步骤:
S1、以树结构作为回溯模型的数据结构,为数据结构的块设计结构信息,为数据结构的节点设计结构信息和属性信息,为数据结构设计根节点后,构建出回溯模型;
S2、为回溯模型设计回溯策略,所述回溯策略包括剪枝策略、节点生成方法以及搜索方法;
S3、基于根节点,采用设计好回溯策略的回溯模型进行回溯,提取回溯路径,检测出回溯终点,根据回溯终点生成逻辑漏洞的激活序列。
进一步地,所述步骤S1中,块的结构信息为其父节点和其包含的节点。
更进一步地,所述步骤S1中,节点的结构信息为其所在的块和其子节点,节点的属性信息为其当前时序1、寄存器取值集合和输入取值集合。
更进一步地,所述步骤S2中,剪枝策略包括回溯终点判断规则、节点相容规则、节点相似规则和起点唯一规则。
更进一步地,设当前节点为n,其寄存器取值集合为C1={<r,v>|<r1,v1>,<r2,v2>,...,<rn,vn>},输入取值集合为C2={<i,v>|<i1,v1>,<i2,v2>,...,<im,vm>},逻辑漏洞为r0=v0,则
所述回溯终点判断规则为:
定义节点n的寄存器取值集合C1中包含的寄存器集合为R={r1,r2,...,rn},设对于寄存器ri∈R,其上电状态为vi,若对于
Figure BDA0002430365240000031
均有ri=vi,则节点n为回溯终点;
所述节点相容规则为:
设节点n的寄存器取值集合C1和输入取值集合C2中包含的变量集合为V={v1,v2,...,vn},若
Figure BDA0002430365240000032
vi出现次数大于1,且各次取值不同,则节点n不符合相容规则,回溯时不需要继续向前回溯;
所述节点相似规则为:
设节点n的祖先节点集合为P={p1,p2,...,pm},若
Figure BDA00024303652400000310
pj的寄存器取值集合为
Figure BDA0002430365240000033
输入取值集合为
Figure BDA0002430365240000034
若有
Figure BDA0002430365240000035
Figure BDA0002430365240000036
则认为节点n和pj相似,不应该继续向前回溯;
所述起点唯一规则为:
若在节点n中,若<r0,v0>∈C1,则认为节点n满足起点唯一规则,不应该继续向前回溯。
更进一步地,所述步骤S2中,节点生成方法具体为:
a1、遍历集合C1,设当前遍历元素为<ri,vi>,以ri为目标寄存器的FSM为FSMi,以vi作为FSMi的下一状态,获得当前状态和转移条件,构成变量取值集合
Figure BDA0002430365240000037
Figure BDA0002430365240000038
a2、遍历完集合C1后,获取所有
Figure BDA0002430365240000039
的公共变量集合T={t1,t2,...,tn},设T中变量的取值集合为V*
a3、遍历集合V*,设当前遍历元素为
Figure BDA0002430365240000041
将所有
Figure BDA0002430365240000042
的元素按照取值组合
Figure BDA0002430365240000043
分组,设当前分组为
Figure BDA0002430365240000044
a4、对
Figure BDA0002430365240000045
中元素进行组合,生成当前块的节点;
a5、若未遍历完集合V*,则跳转至步骤a3,否则完成所有块的节点的生成。
更进一步地,所述步骤S2中,搜索方法具体为:
b1、获取根节点的寄存器分级g;
b2、设当前路径长度m,若m≤g,则进行深度优先回溯,否则,进行广度优先回溯;
b3、判断是否找到回溯路径,若是,输出回溯路径,结束搜索,否则,输出无回溯路径。
更进一步地,所述步骤S3中,当检测出回溯终点D后,生成激活序列的过程包括以下步骤:
c1、输出回溯终点D的属性信息;
c2、获取回溯终点D所属的块B;
c3、获取块B的父节点D*
c4、若D*为根节点,将步骤c1中输出的属性信息作为激活序列输出,完成激活序列的生成,否则,令D=D*,跳转至步骤c1。
本发明的有益效果是:提出了一种面向自主芯片逻辑漏洞的激活序列生成方法,该方法首先构建回溯模型,然后基于回溯模型,设计回溯策略,最后,提取回溯路径,得到激活序列,能够保证激活序列的正确生成,且一定程度上缓解了数据爆炸。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举本发明实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是面向自主芯片硬件逻辑漏洞的激活序列生成方法流程图;
图2是节点生成方法流程图;
图3是搜索方法流程图;
图4是根据回溯终点生成激活序列的流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在列出实施例前,首先对相关概念进行如下定义:
定义一:逻辑漏洞。自主芯片的逻辑漏洞具体指的是,在自主芯片设计中,有限状态机(Finite State Machine,FSM)中存在的设计缺陷。从寄存器角度看,当寄存器R到达某个取值V时,可能会导致电路功能缺失等问题,则称R=V为逻辑漏洞。
定义二:上电状态。电路启动时,寄存器的值称为上电状态。
定义三:目标寄存器。本发明认为FSM的主要存储元件为寄存器。在FSM结构中,存储状态的寄存器称为目标寄存器。
实施例
请参照图1~图4,本实施例提供了一种面向自主芯片硬件逻辑漏洞的激活序列生成方法,本实施例对8051处理器的逻辑漏洞进行激活序列分析,该逻辑漏洞对应的寄存器取值为oc8051_sfr1oc8051_uatr1rx_done_FF=0。该实施例具体如下:
S1、以树结构作为回溯模型的数据结构,为数据结构的块设计结构信息,为数据结构的节点设计结构信息和属性信息,为数据结构设计根节点后,构建出回溯模型。
在本实施例中,树结构的树节点称为块,块中包含的数据节点称为节点。
在本实施例中,给定块b,其结构信息有两个部分,即b包含的节点和b的父节点。若该块中包含的节点集合为N={n1,n2,…,nm},其父节点为节点n,
Figure BDA0002430365240000051
则b的结构信息为N和n。
在本实施例中,给定节点n,其结构信息有两个部分,即n所在的块和n的子节点。若n所在的块为b,其子节点集合为块集合
Figure BDA0002430365240000061
则n的结构信息为b和B。
在本实施例中,给定节点n,其属性信息有三个部分,即当前时序1、寄存器取值集合C1={<r,v>|<r1,v1>,<r2,v2>,...,<rn,vn>}、输入取值集合C2={<i,v>|<i1,v1>,<i2,v2>,...,<im,vn>},其中<k,v>表示k=v。
在本实施例中,根节点为n0,属于特殊节点,其所在块为b0,b0父节点为空,n0的属性信息中,时序l=0,oc8051_sfrloc8051_uatrlrx_done_FF=0。寄存器取值集合C1={<r0,v0>},其中r0=v0为逻辑漏洞,输入取值集合
Figure BDA0002430365240000062
S2、为回溯模型设计回溯策略,回溯策略包括剪枝策略、节点生成方法以及搜索方法。
在本实施例中,剪枝策略包括回溯终点判断规则、节点相容规则、节点相似规则和起点唯一规则。
设当前节点为n,其寄存器取值集合为C1,输入取值集合为C2,逻辑漏洞为r0=v0
回溯终点判断规则具体为:
定义节点n的寄存器取值集合C1中包含的寄存器集合为R={r1,r2,...,rn},设对于寄存器ri∈R,其上电状态为vi,若对于
Figure BDA0002430365240000063
均有ri=vi,则节点n为回溯终点;
节点相容规则具体为:
设节点n的寄存器取值集合C1和输入取值集合C2中包含的变量集合为V={v1,v2,...,vn},若
Figure BDA0002430365240000064
vi出现次数大于1,且各次取值不同,则节点n不符合相容规则,回溯时不需要继续向前回溯;
节点相似规则具体为:
设节点n的祖先节点集合为P={p1,p2,...,Pm},若
Figure BDA0002430365240000065
pj的寄存器取值集合为
Figure BDA0002430365240000066
输入取值集合为
Figure BDA0002430365240000067
若有
Figure BDA0002430365240000068
且.
Figure BDA0002430365240000069
则认为节点n和pj相似,不应该继续向前回溯;
起点唯一规则具体为:
若在节点n中,若<r0,v0>∈C1,则认为节点n满足起点唯一规则,不应该继续向前回溯。
在本实施例中,节点生成方法具体为:
a1、遍历集合C1,设当前遍历元素为<ri,vi>,以ri为目标寄存器的FSM为FSMi,以vi作为FSMi的下一状态,获得当前状态和转移条件,构成变量取值集合
Figure BDA0002430365240000071
Figure BDA0002430365240000072
a2、遍历完集合C1后,获取所有
Figure BDA0002430365240000073
的公共变量集合T={t1,t2,…,tn},设T中变量的取值集合为V*
a3、遍历集合V*,设当前遍历元素为
Figure BDA0002430365240000074
将所有
Figure BDA0002430365240000075
的元素按照取值组合
Figure BDA0002430365240000076
分组,设当前分组为
Figure BDA0002430365240000077
a4、对
Figure BDA0002430365240000078
中元素进行组合,生成该组中的节点,该组即为块;
a5、若未遍历完集合V*,则跳转至步骤a3,否则输出所有块和节点,结束节点生成。
在本实施例中,搜索方法具体为:
b1、获取根节点的寄存器分级g;
b2、设当前路径长度m,若m≤g,则进行深度优先回溯,否则,进行广度优先回溯;
b3、判断是否找到回溯路径,若是,输出回溯路径,结束搜索,否则,输出无回溯路径。
S3、基于根节点,采用设计好回溯策略的回溯模型进行回溯,提取回溯路径,检测出回溯终点,根据回溯终点生成逻辑漏洞的激活序列。
在本实施例中,获取回溯终点的具体方法如下:
1)输入根节点,生成根节点的所有子节点,设为集合P*,设根节点的寄存器分级为g。
2)若当前节点到根节点的路径长度不大于g,任选p∈P*,优先生成p的所有子节点,设为集合P,而不是遍历集合P*(深度优先);若当前节点到根节点的路径长度大于g,优先遍历集合P*,而不是生成新的子节点(广度优先)。
3)若未找到回溯终点,令P*=P,返回步骤2),否则,输出回溯终点,结束算法。
在本实施例中,对于当前回溯节点n,设其变量集合为V={v1,v2,…,vn},若
Figure BDA00024303652400000710
其次数大于1,且取值不同,则不再回溯当前节点。设当前节点n的寄存器取值和输入取值的集合C,若存在节点P,其寄存器取值和输入取值的集合为C*,使得P为n的祖先节点,且
Figure BDA0002430365240000079
则不再回溯当前节点。若当前节点中存在属性信息oc8051_sfr1oc8051_uatr1rx_done_FF=0,则不再回溯当前节点。使用节点生成策略生成l=1的节点,最后根据FSM信息,该层节点共有128个。然后,继续使用深度优先原则生成节点,进行回溯(该寄存器分级为5,由于最后在l=5检测到回溯终点,因此没有进行广度优先)。
在本实施例中,生成激活序列的过程包括以下步骤:
c1、输出回溯终点D的属性信息;
c2、获取回溯终点D所属的块B;
c3、获取块B的父节点D*
c4、若D*为根节点,将步骤c1中输出的属性信息作为激活序列输出,完成激活序列的生成,否则,令D=D*,跳转至步骤c1。
在本实施例中,获取寄存器分级为5,设回溯终点为P。以P为起点,逐级输出父节点的属性信息,直到根节点,输出oc8051_sfr1oc8051_uatr1rx_done_FF=0,得到激活序列。
如表1所示,在对8051处理器的逻辑漏洞激活序列分析中,最后成功生成目标逻辑漏洞的激活序列。由于该方法的目的是激活逻辑漏洞,因此,本发明的结果与研究需求相符。
表1 8051处理器环路识别结果表
自主芯片设计 逻辑漏洞的寄存器 生成激活序列数
8051处理器设计 oc8051_sfr1oc8051_uatr1rx_done_FF 1
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (4)

1.一种面向自主芯片硬件逻辑漏洞的激活序列生成方法,其特征在于,包括以下步骤:
S1、以树结构作为回溯模型的数据结构,为数据结构的块设计结构信息,为数据结构的节点设计结构信息和属性信息,为数据结构设计根节点后,构建出回溯模型;
S2、为回溯模型设计回溯策略,所述回溯策略包括剪枝策略、节点生成方法以及搜索方法;
S3、基于根节点,采用设计好回溯策略的回溯模型进行回溯,提取回溯路径,检测出回溯终点,根据回溯终点生成逻辑漏洞的激活序列;
所述步骤S1中,块的结构信息为其父节点和其包含的节点;
所述步骤S1中,节点的结构信息为其所在的块和其子节点,节点的属性信息为其当前时序l、寄存器取值集合和输入取值集合;
所述步骤S2中,剪枝策略包括回溯终点判断规则、节点相容规则、节点相似规则和起点唯一规则;
设当前节点为n,其寄存器取值集合为C1={<r,v>|<r1,v1>,<r2,v2>,…,<rn,vn>},输入取值集合为C2={<i,v>|<i1,v1>,<i2,v2>,…,<im,vm>},逻辑漏洞为r0=v0,则
所述回溯终点判断规则为:
定义节点n的寄存器取值集合C1中包含的寄存器集合为R={r1,r2,…,rn},设对于寄存器ri∈R,其上电状态为vi,若对于
Figure FDA0004053518380000011
均有ri=vi,则节点n为回溯终点;
所述节点相容规则为:
设节点n的寄存器取值集合C1和输入取值集合C2中包含的变量集合为V={v1,v2,…,vn},若
Figure FDA0004053518380000012
vi出现次数大于1,且各次取值不同,则节点n不符合相容规则,回溯时不需要继续向前回溯;
所述节点相似规则为:
设节点n的祖先节点集合为P={p1,p2,…,pm},若
Figure FDA0004053518380000013
pj的寄存器取值集合为
Figure FDA0004053518380000014
输入取值集合为
Figure FDA0004053518380000015
若有
Figure FDA0004053518380000016
Figure FDA0004053518380000017
则认为节点n和pj相似,不应该继续向前回溯;
所述起点唯一规则为:
若在节点n中,若<r0,v0>∈C1,则认为节点n满足起点唯一规则,不应该继续向前回溯。
2.根据权利要求1所述面向自主芯片硬件逻辑漏洞的激活序列生成方法,其特征在于,所述步骤S2中,节点生成方法具体为:
a1、遍历集合C1,设当前遍历元素为<ri,vi>,以ri为目标寄存器的FSM为FSMi,以vi作为FSMi的下一状态,获得当前状态和转移条件,构成变量取值集合
Figure FDA0004053518380000021
Figure FDA0004053518380000022
a2、遍历完集合C1后,获取所有
Figure FDA0004053518380000023
的公共变量集合T={t1,t2,…,tn},设T中变量的取值集合为V*
a3、遍历集合V*,设当前遍历元素为
Figure FDA0004053518380000024
将所有
Figure FDA0004053518380000025
的元素按照取值组合
Figure FDA0004053518380000026
分组,设当前分组为
Figure FDA0004053518380000027
a4、对
Figure FDA0004053518380000028
中元素进行组合,生成当前块的节点;
a5、若未遍历完集合V*,则跳转至步骤a3,否则完成所有块的节点的生成。
3.根据权利要求2所述面向自主芯片硬件逻辑漏洞的激活序列生成方法,其特征在于,所述步骤S2中,搜索方法具体为:
b1、获取根节点的寄存器分级g;
b2、设当前路径长度m,若m≤g,则进行深度优先回溯,否则,进行广度优先回溯;
b3、判断是否找到回溯路径,若是,输出回溯路径,结束搜索,否则,输出无回溯路径。
4.根据权利要求3所述面向自主芯片硬件逻辑漏洞的激活序列生成方法,其特征在于,所述步骤S3中,当检测出回溯终点D后,生成激活序列的过程包括以下步骤:
c1、输出回溯终点D的属性信息;
c2、获取回溯终点D所属的块B;
c3、获取块B的父节点D*
c4、若D*为根节点,将步骤c1中输出的属性信息作为激活序列输出,完成激活序列的生成,否则,令D=D*,跳转至步骤c1。
CN202010234038.0A 2020-03-30 2020-03-30 面向自主芯片硬件逻辑漏洞的激活序列生成方法 Active CN111428245B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010234038.0A CN111428245B (zh) 2020-03-30 2020-03-30 面向自主芯片硬件逻辑漏洞的激活序列生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010234038.0A CN111428245B (zh) 2020-03-30 2020-03-30 面向自主芯片硬件逻辑漏洞的激活序列生成方法

Publications (2)

Publication Number Publication Date
CN111428245A CN111428245A (zh) 2020-07-17
CN111428245B true CN111428245B (zh) 2023-04-25

Family

ID=71555533

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010234038.0A Active CN111428245B (zh) 2020-03-30 2020-03-30 面向自主芯片硬件逻辑漏洞的激活序列生成方法

Country Status (1)

Country Link
CN (1) CN111428245B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1799228A (zh) * 2003-04-02 2006-07-05 思科技术公司 数据联网
US7814546B1 (en) * 2004-03-19 2010-10-12 Verizon Corporate Services Group, Inc. Method and system for integrated computer networking attack attribution
CN102955914A (zh) * 2011-08-19 2013-03-06 百度在线网络技术(北京)有限公司 一种源文件安全漏洞的检测方法及检测装置
CN105487983A (zh) * 2015-12-24 2016-04-13 郑州恩倍网络科技有限公司 基于智能路径引导的敏感点逼近方法
CN106295346A (zh) * 2015-05-20 2017-01-04 深圳市腾讯计算机系统有限公司 一种应用漏洞检测方法、装置及计算设备
CN106599498A (zh) * 2016-12-20 2017-04-26 盛科网络(苏州)有限公司 基于树回溯算法提高芯片验证覆盖率的方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7849509B2 (en) * 2005-10-07 2010-12-07 Microsoft Corporation Detection of security vulnerabilities in computer programs
US9426177B2 (en) * 2013-07-15 2016-08-23 Tencent Technology (Shenzhen) Company Limited Method and apparatus for detecting security vulnerability for animation source file

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1799228A (zh) * 2003-04-02 2006-07-05 思科技术公司 数据联网
US7814546B1 (en) * 2004-03-19 2010-10-12 Verizon Corporate Services Group, Inc. Method and system for integrated computer networking attack attribution
CN102955914A (zh) * 2011-08-19 2013-03-06 百度在线网络技术(北京)有限公司 一种源文件安全漏洞的检测方法及检测装置
CN106295346A (zh) * 2015-05-20 2017-01-04 深圳市腾讯计算机系统有限公司 一种应用漏洞检测方法、装置及计算设备
CN105487983A (zh) * 2015-12-24 2016-04-13 郑州恩倍网络科技有限公司 基于智能路径引导的敏感点逼近方法
CN106599498A (zh) * 2016-12-20 2017-04-26 盛科网络(苏州)有限公司 基于树回溯算法提高芯片验证覆盖率的方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Vulnerability Localization Method Based on Software Structural Signature of Complex Network;Fan Yang等;《2013 IEEE 7th International Symposium on Embedded Multicore Socs》;20131111;全文 *
反例的安全协议漏洞挖掘;张卫杰;《中国优秀硕士学位论文全文数据库》;20191215;第4.6节 *
层次化的 FPGA 硬件脆弱性分析方法研究;高振标;《中国优秀硕士学位论文全文数据库》;20180815;第4章 *

Also Published As

Publication number Publication date
CN111428245A (zh) 2020-07-17

Similar Documents

Publication Publication Date Title
Meade et al. Gate-level netlist reverse engineering for hardware security: Control logic register identification
Meade et al. Netlist reverse engineering for high-level functionality reconstruction
Li et al. Scalable specification mining for verification and diagnosis
Morin-Allory et al. Proven correct monitors from PSL specifications
US20080250376A1 (en) Integrating a boolean SAT solver into a router
US20050240794A1 (en) Method for domain specific test design automation
JP4586926B2 (ja) 回路検証装置、回路検証プログラムおよび回路検証方法
EP3385735B1 (en) Device and method for detecting points of failures
Azriel et al. SoK: An overview of algorithmic methods in IC reverse engineering
Tang et al. Multi-patch generation for multi-error logic rectification by interpolation with cofactor reduction
Koblah et al. A survey and perspective on artificial intelligence for security-aware electronic design automation
Meade et al. Gate-level netlist reverse engineering tool set for functionality recovery and malicious logic detection
CN108595986B (zh) 基于有界模型的微型木马检测方法
CN114880975A (zh) 一种硬件木马的生成方法、系统、设备以及介质
Yang et al. Hardware Trojans detection through RTL features extraction and machine learning
Farahmandi et al. CAD for hardware security
Huang et al. Fault-simulation based design error diagnosis for sequential circuits
CN111428245B (zh) 面向自主芯片硬件逻辑漏洞的激活序列生成方法
Brunner et al. Toward a human-readable state machine extraction
Guo et al. Automatic RTL-to-formal code converter for IP security formal verification
Rematska et al. A survey on reverse engineering of technical diagrams
Rosiello et al. A hash-based approach for functional regularity extraction during logic synthesis
Cornell et al. Combinational hardware Trojan detection using logic implications
Li Formal methods for reverse engineering gate-level netlists
Tong et al. Assertion clustering for compacted test sequence generation

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