CN108733404A - 一种针对fpga固件的精准逆向工程方法 - Google Patents

一种针对fpga固件的精准逆向工程方法 Download PDF

Info

Publication number
CN108733404A
CN108733404A CN201810524531.9A CN201810524531A CN108733404A CN 108733404 A CN108733404 A CN 108733404A CN 201810524531 A CN201810524531 A CN 201810524531A CN 108733404 A CN108733404 A CN 108733404A
Authority
CN
China
Prior art keywords
information
tile
bit stream
fpga
file
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.)
Granted
Application number
CN201810524531.9A
Other languages
English (en)
Other versions
CN108733404B (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 CN201810524531.9A priority Critical patent/CN108733404B/zh
Publication of CN108733404A publication Critical patent/CN108733404A/zh
Application granted granted Critical
Publication of CN108733404B publication Critical patent/CN108733404B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/74Reverse engineering; Extracting design information from source code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting 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/76Protecting 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)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Mathematical Physics (AREA)
  • Computer Security & Cryptography (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

本发明公开了一种针对FPGA固件的精准逆向工程方法,包括如下步骤:S1、截获比特流数据,并将其保存为比特流文件;S2、使用EDA工具获取FPGA结构信息,根据FPGA结构信息,使用映射生成器生成比特流映射信息,并将FPGA结构信息和比特流映射信息输入数据库;S3、根据比特流映射信息,使用比特流逆向工具将比特流文件进行逆向,并还原成网表文件;S4、结合FPGA结构信息,使用网表逆向工具从网表文件中恢复出功能等价的RTL代码,并输出代码文件。本发明解决了现有技术存在的FPGA逆向工程精确度低、完整度不足以及FPGA设计的安全性与可靠性低的问题。

Description

一种针对FPGA固件的精准逆向工程方法
技术领域
本发明属于硬件安全技术领域,具体涉及一种针对FPGA固件的精准逆向工程方法。
背景技术
FPGA(Field Programmable Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。几乎所有的FPGA固件(比特流)的具体格式都是不公开的,而FPGA的用户只能获取比特流文件,而不能获取与其功能等价的网表文件以及RTL代码文件。
近些年来FPGA被广泛应用于各种各样的领域中,但是也因此引起了硬件黑客的注意,各种针对FPGA的攻击层出不穷,硬件木马攻击就是其中一种。一些黑客已经往FPGA中成功插入了硬件木马。例如在FPGA固件(比特流)中查找到空白的区域并且通过修改比特流在这些区域中插入木马。另外存在一种新的硬件木马并且将其隐藏于RTL代码中。同时也有一些基于RTL代码的硬件木马检测技术被提出,但是这些技术在实际应用到FPGA上时都受限于无法获取与比特流功能等效的RTL代码而无法检测其中的硬件木马。
现有技术存在以下问题:
(1)无法获取与比特流功能等效的RTL代码而无法检测其中的硬件木马,FPGA设计的安全性与可靠性低;
(2)现有技术主要集中在将比特流文件还原成网表文件,没有工作着眼于将从比特流逆向出的网表还原成为功能等价的RTL代码文件,逆向工程完整度不足。
(3)现有技术无法对FPGA固件进行精确的还原,精确度低。
发明内容
针对现有技术中的上述不足,本发明为了解决上述问题,提供一种高效率、高实用性与高精确度的针对FPGA固件的精准逆向工程方法,提高了FPGA设计的安全性与可靠性,解决了现有技术存在的FPGA逆向工程精确度低、完整度不足以及FPGA设计的安全性与可靠性低的问题。
为了达到上述发明目的,本发明采用的技术方案为:
一种针对FPGA固件的精准逆向工程方法,包括如下步骤:
S1:截获比特流数据,并将其保存为比特流文件;
S2:使用EDA工具获取FPGA结构信息,根据FPGA结构信息,使用映射生成器生成比特流映射信息,并将FPGA结构信息和比特流映射信息输入数据库;
S3:根据比特流映射信息,使用比特流逆向工具将比特流文件进行逆向,并还原成网表文件;
S4:结合FPGA结构信息,使用网表逆向工具从网表文件中恢复出功能等价的RTL代码,并输出代码文件。
进一步地,步骤S2中,映射生成器的工作方法,包括如下步骤:
S2-1:进行初始化:初始化映射生成器,并生成空白网表;
S2-2:进行Tile测试:从FPGA的每种类型的FPGA结构组成单元Tile中各选一个,生成测试Tile组,将测试Tile组中每个Tile所有的待测试元件添加到空白网表进行测试,得到所有待测试元件的映射信息;
S2-3:计算偏移量:选择测试Tile组中一个Tile作为基准Tile,选择一个与基准Tile同类型的Tile作为待测Tile,将基准Tile与待测Tile配置成相同工作模式并分别加入空白网表中,生成比特流并计算基准Tile与待测Tile对应的控制比特集合地址之间的偏移量;
S2-4:遍历偏移量信息:将测试Tile组作为基准Tile组,将其它所有Tile作为测试Tile,遍历计算每个基准Tile与同类型的所有测试Tile之间的偏移量,得到偏移量信息;
S2-5:存储比特流映射信息:将步骤S2-2得到的元件映射信息与偏移量信息作为比特流映射信息存储到数据库,并输出比特流。
进一步地,步骤S3中,比特流逆向工具的工作方法,包括如下步骤:
S3-1:进行初始化:初始化比特流逆向工具,读取截获到的比特流,加载数据库中的比特流映射信息;
S3-2:还原连接信息:根据比特流映射信息,找到所有打开的可编程互联点PIP,根据PIP恢复出所有信号网络,并且基于深度优先搜索算法实现连接信息的还原并得到完整的连接信息;
S3-3:打信息补丁:分析所有Tile中相邻元件之间的相关性,并为在映射信息测试中缺失的信息打上补丁;
S3-4:逆向元件信息:根据比特流文件、比特流映射信息和补丁信息来确定每个元件的工作状态,得到元件功能信息,实现元件的逆向;
S3-5:输出网表文件:输出生成网表文件,将步骤S3-2得到的连接信息和元件功能信息整合到网表文件,输出网表文件。
进一步地,步骤S4中,网表逆向工具的工作方法,包括如下步骤:
S4-1:进行初始化:初始化网表逆向工具,使用网表逆向工具读取网表文件,并将连接信息的结构和元件功能信息的结构转换成预设数据结构,并且加载FPGA结构信息;
S4-2:进行端口分类:根据步骤S4-1处理后的连接信息和元件功能信息,将PAD元件进行I/O端口分类;
S4-3:提取路径:根据I/O端口的类型,从网表文件中提取信号路径簇;
S4-4:生成代码:使用与元件的功能相同的RTL代码替换信号路径簇中的元件,并结合FPGA结构信息、信号路径簇的结构和属性将RTL代码进行整合;
S4-5:输出代码文件:生成代码文件,将所有RTL代码整合到代码文件中,检测并移除重复的端口定义声明,输出代码文件。
本方案的有益效果为:
本发明提供的针对FPGA固件的精准逆向工程技术测试出了精准的比特流映射信息,并且通过设计的逆向工程工具,将FPGA固件高精度还原成为功能等价的网表及代码,提高了精确度和实用性,从而有助于FPGA内部硬件木马检测,提高了FPGA固件设计的安全性与可靠性。
附图说明
图1为针对FPGA固件的精准逆向工程方法流程图;
图2为映射生成器的工作方法流程图;
图3为比特流逆向工具的工作方法流程图;
图4为网表逆向工具的工作方法流程图;
图5为测试结果图。
具体实施方式
下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
一种针对FPGA固件的精准逆向工程方法,如图1所示,包括如下步骤:
S1:截获比特流数据,并将其保存为比特流文件,由于Xilinx的FPGA都是SRAM型的FPGA,由于其易失性所以往往将比特流存储在外部的非易失性存储器例如FLASH中;
S2:通过Xilinx官方的电子设计自动化EDA工具ISE提供的命令行程序xdl.exe中的-report指定FPGA型号命令获取FPGA结构信息,具体为后缀名为xdlrc的文本文件,其中包含了对于FPGA中所有的资源的数目、位置以及可能的工作模式的信息,根据FPGA结构信息,使用映射生成器生成比特流映射信息,并将FPGA结构信息和比特流映射信息输入数据库;
映射生成器的工作方法,如图2所示,包括如下步骤:
S2-1:进行初始化:初始化映射生成器,并生成空白的映射网表,并在整个测试过程中都关闭了设计规则校验DRC;
S2-2:进行Tile测试:从FPGA的每种类型的Tile中各选一个,生成测试Tile组,将测试Tile组中每个Tile所有的待测试元件添加到映射网表进行测试,得到待测试元件的映射信息;
SS2-3:计算偏移量:选择测试Tile组中一个Tile作为基准Tile,选择一个与基准Tile同类型的Tile作为待测Tile,将基准Tile与待测Tile配置成相同工作模式并分别加入空白网表中,生成比特流并计算基准Tile与待测Tile对应的控制比特集合地址之间的偏移量;
S2-4:遍历偏移量信息:将测试Tile组作为基准Tile组,将其它所有Tile作为测试Tile,遍历计算每个基准Tile与同类型的所有测试Tile之间的偏移量,得到偏移量信息;
S2-5:存储比特流映射信息:将步骤S2-2得到的映射信息与偏移量信息作为比特流映射信息存储到数据库,并输出比特流;
S3:根据比特流映射信息,使用比特流逆向工具将比特流文件进行逆向,并还原成网表文件;
比特流逆向工具的工作方法,如图3所示,包括如下步骤:
S3-1:进行初始化:初始化比特流逆向工具,使用比特流逆向工具截获并读取比特流,加载数据库中的比特流映射信息;
S3-2:还原连接信息:根据比特流映射信息,找到所有打开的可编程互联点PIP,根据PIP恢复出所有信号网络,信号网络是由一系列的连接所组成用来将源元件输出端口输出的信号传送的其他元件的输入端口,实现连接的逆向并得到连接信息;
S3-3:打信息补丁:由于分离元件时造成信息丢失,分析所有Tile中相邻元件之间的相关性,并为缺少的信息打上补丁;
S3-4:逆向元件信息:根据比特流文件、比特流映射信息和补丁信息来确定每个元件的工作状态,得到元件功能信息,实现元件的逆向;
S3-5:输出网表文件:输出生成网表文件,将步骤S3-2得到的连接信息和元件功能信息整合到网表文件,输出网表文件;
S4:根据FPGA结构信息,使用网表逆向工具从网表文件中恢复出功能等价的RTL代码,并输出代码文件;
网表逆向工具的工作方法,如图4所示,包括如下步骤:
S4-1:进行初始化:初始化网表逆向工具,使用网表逆向工具读取网表文件,并将连接信息的结构和元件功能信息的结构转换成预设数据结构;
S4-2:进行端口分类:根据步骤S4-1处理后的连接信息和元件功能信息,将PAD元件进行I/O端口分类;首先将网表中的所有PAD元件根据其实现功能分类为两种模式:输入与输出。如果一个PAD元件是一个信号网络的源元件那么其就被定义为输入端口,否则其就是一个输出端口;
S4-3:提取路径:根据I/O端口的类型,从网表文件中提取信号路径簇;一个信号路径簇包含了多条向信号路径,而这些信号路径则是从不同的输入端口开始,结束于同一个输出端口;
S4-4:生成代码:使用与元件的功能相同的RTL代码替换信号路径簇中的元件,并结合FPGA结构信息、信号路径簇的结构和属性将RTL代码进行整合;
S4-5:输出代码文件:生成代码文件,将所有RTL代码整合到代码文件中,检测并移除重复的端口定义声明,输出代码文件。
本发明实施例中,对工具链进行测试。测试的基准代码是从两个标准测试集ISCAS85和ISCAS89中选取的,并且还选择了一个实际应用8051软核。Xilinx系列的Spartan-6xc6slx9作为我们的目标芯片,而ISE则是被用来编译这些基准代码生成比特流。我们的工具链运行环境为一台具有主频为3.4GHz的Intel I-3双核处理器,3.0GB内存和Windows-7 32位操作系统的PC。
如图5所示,LE是所使用逻辑元件的数目,PS是所使用PIP连接的数目,得到比特流逆向工具对于比特流文件逆向结果很好,逆向出的网表与源网表完全一致,并且时间消耗也在可以接受的范围之内,验证了本针对FPGA固件的精准逆向工程方法的有效性及准确性。
本发明提供的针对FPGA固件的精准逆向工程技术测试出了精准的比特流映射信息,并且通过设计的逆向工程工具,将FPGA固件高精度还原成为功能等价的网表及代码,提高了精确度和实用性,从而有助于FPGA内部硬件木马检测,提高了FPGA固件设计的安全性与可靠性。

Claims (4)

1.一种针对FPGA固件的精准逆向工程方法,其特征在于,包括如下步骤:
S1:截获比特流数据,将其保存为比特流文件;
S2:使用EDA工具获取FPGA结构信息,根据FPGA结构信息,使用映射生成器生成比特流映射信息,并将FPGA结构信息和比特流映射信息输入数据库;
S3:根据比特流映射信息,使用比特流逆向工具将比特流文件进行逆向,并还原成网表文件;
S4:结合FPGA结构信息,使用网表逆向工具从网表文件中恢复出功能等价的RTL代码,并输出代码文件。
2.根据权利要求1所述的针对FPGA固件的精准逆向工程方法,其特征在于,所述步骤S2中,映射生成器的工作方法,包括如下步骤:
S2-1:进行初始化:初始化映射生成器,并生成空白网表;
S2-2:进行Tile测试:从FPGA的每种类型的FPGA结构组成单元Tile中各选一个,生成测试Tile组,将测试Tile组中每个Tile所有的待测试元件添加到空白网表进行测试,得到所有待测试元件的映射信息;
S2-3:计算偏移量:选择测试Tile组中一个Tile作为基准Tile,选择一个与基准Tile同类型的Tile作为待测Tile,将基准Tile与待测Tile配置成相同工作模式并分别加入空白网表中,生成比特流并计算基准Tile与待测Tile对应的控制比特集合地址之间的偏移量;
S2-4:遍历偏移量信息:将测试Tile组作为基准Tile组,将其它所有Tile作为测试Tile,遍历计算每个基准Tile与同类型的所有测试Tile之间的偏移量,得到偏移量信息;
S2-5:存储比特流映射信息:将步骤S2-2得到的元件映射信息与偏移量信息作为比特流映射信息存储到数据库,并输出比特流。
3.根据权利要求1所述的针对FPGA固件的精准逆向工程方法,其特征在于,所述步骤S3中,比特流逆向工具的工作方法,包括如下步骤:
S3-1:进行初始化:初始化比特流逆向工具,读取截获到的比特流,加载数据库中的比特流映射信息;
S3-2:还原连接信息:根据比特流映射信息,找到所有打开的可编程互联点PIP,根据PIP恢复出所有信号网络,并且基于深度优先搜索算法实现连接信息的还原并得到完整的连接信息;
S3-3:打信息补丁:分析所有Tile中相邻元件之间的相关性,并为在映射信息测试中缺失的信息打上补丁;
S3-4:逆向元件信息:根据比特流文件、比特流映射信息和补丁信息来确定每个元件的工作状态,得到元件功能信息,实现元件的逆向;
S3-5:输出网表文件:输出生成网表文件,将步骤S3-2得到的连接信息和元件功能信息整合到网表文件,输出网表文件。
4.根据权利要求1所述的针对FPGA固件的精准逆向工程方法,其特征在于,所述步骤S4中,网表逆向工具的工作方法,包括如下步骤:
S4-1:进行初始化:初始化网表逆向工具,使用网表逆向工具读取网表文件,并将连接信息的结构和元件功能信息的结构转换成预设数据结构,并且加载FPGA结构信息;
S4-2:进行端口分类:根据步骤S4-1处理后的连接信息和元件功能信息,将PAD元件进行I/O端口分类;
S4-3:提取路径:根据I/O端口的类型,从网表文件中提取信号路径簇;
S4-4:生成代码:使用与元件的功能相同的RTL代码替换信号路径簇中的元件,并结合FPGA结构信息、信号路径簇的结构和属性将RTL代码进行整合;
S4-5:输出代码文件:生成代码文件,将所有RTL代码整合到代码文件中,检测并移除重复的端口定义声明,输出代码文件。
CN201810524531.9A 2018-05-28 2018-05-28 一种针对fpga固件的精准逆向工程方法 Active CN108733404B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810524531.9A CN108733404B (zh) 2018-05-28 2018-05-28 一种针对fpga固件的精准逆向工程方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810524531.9A CN108733404B (zh) 2018-05-28 2018-05-28 一种针对fpga固件的精准逆向工程方法

Publications (2)

Publication Number Publication Date
CN108733404A true CN108733404A (zh) 2018-11-02
CN108733404B CN108733404B (zh) 2021-10-15

Family

ID=63936392

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810524531.9A Active CN108733404B (zh) 2018-05-28 2018-05-28 一种针对fpga固件的精准逆向工程方法

Country Status (1)

Country Link
CN (1) CN108733404B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110335323A (zh) * 2019-06-24 2019-10-15 浙江大学 现场可编程逻辑门阵列器件的比特流图像化方法
CN111142013A (zh) * 2019-12-31 2020-05-12 无锡市同飞科技有限公司 基于max7000系列cpld逻辑还原方法
CN111400169A (zh) * 2020-02-25 2020-07-10 中科亿海微电子科技(苏州)有限公司 一种自动化生成用于测试软硬件的网表文件的方法及系统
CN112069501A (zh) * 2020-11-10 2020-12-11 杭州海康威视数字技术股份有限公司 Fpga嵌入式终端设备比特流攻击检测方法、装置及电子设备
CN112306522A (zh) * 2020-09-29 2021-02-02 北京软慧科技有限公司 一种固件更新方式的识别方法和装置
CN116820432A (zh) * 2023-08-30 2023-09-29 中国人民解放军国防科技大学 一种bmc固件自动适配主板传感器的方法及系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5867395A (en) * 1996-06-19 1999-02-02 Lsi Logic Corporation Gate netlist to register transfer level conversion tool
US6536018B1 (en) * 2000-06-05 2003-03-18 The University Of Chicago Reverse engineering of integrated circuits
CN101976319A (zh) * 2010-11-22 2011-02-16 张平 基于行为特征的BIOS固件Rootkit检测方法
CN106997441A (zh) * 2016-01-22 2017-08-01 吴有亮 自动检测与清除集成电路设计中功能性木马的方法和装置
CN107111727A (zh) * 2014-08-06 2017-08-29 智能Ic卡公司 电路保护系统和方法
CN107111663A (zh) * 2014-11-12 2017-08-29 赛灵思公司 目标为可编程集成电路的异构型多处理器程序编译
CN107833567A (zh) * 2017-10-27 2018-03-23 长沙理工大学 一种基于fpga的显示器及其信号切换和参数配置方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5867395A (en) * 1996-06-19 1999-02-02 Lsi Logic Corporation Gate netlist to register transfer level conversion tool
US6536018B1 (en) * 2000-06-05 2003-03-18 The University Of Chicago Reverse engineering of integrated circuits
CN101976319A (zh) * 2010-11-22 2011-02-16 张平 基于行为特征的BIOS固件Rootkit检测方法
CN107111727A (zh) * 2014-08-06 2017-08-29 智能Ic卡公司 电路保护系统和方法
CN107111663A (zh) * 2014-11-12 2017-08-29 赛灵思公司 目标为可编程集成电路的异构型多处理器程序编译
CN106997441A (zh) * 2016-01-22 2017-08-01 吴有亮 自动检测与清除集成电路设计中功能性木马的方法和装置
CN107833567A (zh) * 2017-10-27 2018-03-23 长沙理工大学 一种基于fpga的显示器及其信号切换和参数配置方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
FLORIAN BENZ 等: "Bil: A tool-chain for bitstream reverse-engineering", 《22ND INTERNATIONAL CONFERENCE ON FIELD PROGRAMMABLE LOGIC AND APPLICATIONS (FPL)》 *
TRAVIS MEADE 等: "Netlist reverse engineering for high-level functionality reconstruction", 《2016 21ST ASIA AND SOUTH PACIFIC DESIGN AUTOMATION CONFERENCE (ASP-DAC)》 *
田素雷 等: "RTL到门级网表的等价性验证方法", 《中国集成电路》 *
许强 等: "硬件木马检测与防范研究综述", 《网络与信息安全学报》 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110335323A (zh) * 2019-06-24 2019-10-15 浙江大学 现场可编程逻辑门阵列器件的比特流图像化方法
CN111142013A (zh) * 2019-12-31 2020-05-12 无锡市同飞科技有限公司 基于max7000系列cpld逻辑还原方法
CN111142013B (zh) * 2019-12-31 2021-12-07 无锡市同飞科技有限公司 基于max7000系列cpld逻辑还原方法
CN111400169A (zh) * 2020-02-25 2020-07-10 中科亿海微电子科技(苏州)有限公司 一种自动化生成用于测试软硬件的网表文件的方法及系统
CN111400169B (zh) * 2020-02-25 2023-04-18 中科亿海微电子科技(苏州)有限公司 一种自动化生成用于测试软硬件的网表文件的方法及系统
CN112306522A (zh) * 2020-09-29 2021-02-02 北京软慧科技有限公司 一种固件更新方式的识别方法和装置
CN112069501A (zh) * 2020-11-10 2020-12-11 杭州海康威视数字技术股份有限公司 Fpga嵌入式终端设备比特流攻击检测方法、装置及电子设备
CN112069501B (zh) * 2020-11-10 2021-02-26 杭州海康威视数字技术股份有限公司 Fpga嵌入式终端设备比特流攻击检测方法、装置及电子设备
CN116820432A (zh) * 2023-08-30 2023-09-29 中国人民解放军国防科技大学 一种bmc固件自动适配主板传感器的方法及系统
CN116820432B (zh) * 2023-08-30 2023-11-21 中国人民解放军国防科技大学 一种bmc固件自动适配主板传感器的方法及系统

Also Published As

Publication number Publication date
CN108733404B (zh) 2021-10-15

Similar Documents

Publication Publication Date Title
CN108733404A (zh) 一种针对fpga固件的精准逆向工程方法
Jyu et al. Statistical timing analysis of combinational logic circuits
CN102073589B (zh) 一种基于代码静态分析的数据竞争检测方法及系统
JP3858000B2 (ja) フィルタリング型アプローチを使用する組合せ回路の検証方法
CN102236600B (zh) 获得代码覆盖率的方法及装置
CN105868116A (zh) 基于语义变异算子的测试用例生成和优化方法
Abdulla et al. Regular model checking made simple and effcient
Walkinshaw et al. Automated comparison of state-based software models in terms of their language and structure
CN111240991B (zh) 一种抗隐式污点传播的动态污点检测方法及系统
Werner et al. Reverse engineering of cryptographic cores by structural interpretation through graph analysis
CN104635144A (zh) 一种不依赖基准曲线的硬件木马检测方法
CN105045715A (zh) 基于编程模式和模式匹配的漏洞聚类方法
Maisikeli et al. Aspect mining using self-organizing maps with method level dynamic software metrics as input vectors
CN103744776B (zh) 一种基于符号化函数摘要的静态分析方法及系统
CN113886832A (zh) 智能合约漏洞检测方法、系统、计算机设备和存储介质
CN106557412A (zh) 一种模糊测试的方法及装置
Löhnertz et al. Steinmetz: Toward Automatic Decomposition of Monolithic Software Into Microservices.
Rieck et al. Structural analysis of multivariate point clouds using simplicial chains
Yang et al. Hardware Trojans detection through RTL features extraction and machine learning
CN105989095A (zh) 顾及数据不确定性的关联规则显著性检验方法及装置
Meng et al. Detecting buffer boundary violations based on SVM
Zhang et al. An optimization algorithm applied to the class integration and test order problem
CN114880673A (zh) 针对小程序源代码进行隐私数据泄露检测的方法及系统
CN107656863A (zh) 一种基于关键点引导的数据流测试方法及其测试系统
CN109740214B (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