CN111880768B - 一种ip核代码级安全需求描述方法 - Google Patents
一种ip核代码级安全需求描述方法 Download PDFInfo
- Publication number
- CN111880768B CN111880768B CN202010715870.2A CN202010715870A CN111880768B CN 111880768 B CN111880768 B CN 111880768B CN 202010715870 A CN202010715870 A CN 202010715870A CN 111880768 B CN111880768 B CN 111880768B
- Authority
- CN
- China
- Prior art keywords
- security
- core
- requirement
- analyzing
- requirements
- 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
- 238000000034 method Methods 0.000 title claims abstract description 27
- 238000013461 design Methods 0.000 claims abstract description 22
- 230000006399 behavior Effects 0.000 claims abstract description 15
- 230000006870 function Effects 0.000 claims abstract description 15
- 238000013507 mapping Methods 0.000 claims abstract description 9
- 238000005111 flow chemistry technique Methods 0.000 claims abstract description 7
- 238000012163 sequencing technique Methods 0.000 claims abstract description 4
- 238000012360 testing method Methods 0.000 claims description 3
- 238000012795 verification Methods 0.000 abstract description 8
- 238000004088 simulation Methods 0.000 abstract description 3
- 238000006243 chemical reaction Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001010 compromised effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/10—Requirements analysis; Specification techniques
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及一种IP核代码级安全需求描述方法,其中,包括:输入IP核设计代码及需求规格说明书;分析IP核需求规格说明书并确定IP核的主要功能和目的,找到IP核中实现功能所需要的最小组成部分;按照对功能实现的重要程度对组成部分进行排序,得到按重要程度排序的安全资产;分析并确定接口,可被攻击者获取并对安全资产进行访问,作为安全需求的访问点;依据安全资产及访问点,分析安全需求,以编写安全行为和安全条件;基于信息流理论,对IP核设计进行信息流处理,依次添加污迹标签和污迹传播逻辑,结合SVA语法映射为可执行属性。本发明实现了从需求到断言的转换,生成的安全属性基于SVA语言,可被大多数仿真和形式化验证工具支持。使用者无需手动编写安全属性断言,提高了IP核安全性验证的效率。
Description
技术领域
本发明涉及集成电路安全领域,特别是涉及一种对IP核代码级安全需求的描述方法。
背景技术
IP核作为集成电路设计中的第三方组件,其安全性直接影响到整个集成电路系统的安全性。安全需求作为IP核代码级安全性验证的基准,在验证IP核代码级是否安全中具有重要意义。目前,现常用的安全需求描述方法为设计师采用自然语言对安全需求进行描述。
现有的方法主要存在以下问题:
(1)描述的安全需求不完备。现有的描述方法中缺少系统的安全需求分析手段,描述的安全需求受主观影响较大,无法保证可以覆盖所有的安全威胁;
(2)安全需求难以被工具识别、验证。现有的描述方法采用自然语言对安全需求进行描述,绝大多数EDA工具无法直接解析自然语言,因此使用现有方法描述的安全需求在IP核的安全验证中仅具有参考意义。
发明内容
本发明的目的在于提供一种IP核代码级安全需求描述方法,用于解决上述现有技术的问题。
本发明一种IP核代码级安全需求描述方法,其中,包括:步骤1:输入IP核设计代码及需求规格说明书;步骤2:分析IP核需求规格说明书并确定IP核的主要功能和目的,找到IP核中实现功能所需要的最小组成部分;步骤3:按照对功能实现的重要程度对组成部分进行排序,得到按重要程度排序的安全资产;步骤4:分析并确定接口,可被攻击者获取并对安全资产进行访问,作为安全需求的访问点;步骤5:依据安全资产及访问点,分析安全需求,以编写安全行为和安全条件;步骤6:基于信息流理论,对IP核设计进行信息流处理,依次添加污迹标签和污迹传播逻辑,结合SVA语法映射为可执行属性。
根据本发明的IP核代码级安全需求描述方法的一实施例,其中,分析并确定接口包括信号、引脚、总线以及寄存器。
根据本发明的IP核代码级安全需求描述方法的一实施例,其中,安全行为是对待测设计中受保护资产的操作、状态和路径的描述。
根据本发明的IP核代码级安全需求描述方法的一实施例,其中,安全条件为是安全行为成立时所需要满足的条件。
根据本发明的IP核代码级安全需求描述方法的一实施例,其中,生成可执行属性包括:首先,对结构化描述的安全需求进行解析,提取需求中的安全资产、访问点、安全条件和安全行为;之后,对IP核设计进行信息流处理,依次添加污迹标签和污迹传播逻辑,结合SVA语法映射为可执行属性。
本发明采用采用结构化的描述方式替代传统的自然语言描述方式,使得描述的安全需求较为规范,安全需求可以复用于其他的类似的设计中。使用者无需手动编写安全属性断言,提高了IP核安全性验证的效率。
附图说明
图1为安全需求与可执行属性的映射关系示意图;
图2为IP核代码级安全需求描述方法流程图。
具体实施方式
为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
图1为安全需求与可执行属性的映射关系示意图,图2为IP核代码级安全需求描述方法流程图,如图1以及图2所示,本发明提供了一种IP核代码级安全需求描述方法,实现对IP核设计代码中常见的安全需求描述,具体包括:
(1)确定安全资产
安全资产是指设计中具有价值的资源,以是有形的,例如电路设计中的信号,或者是无形的,例如信号的可控性。常见的安全资产包括设备上密钥、固件、设备上受保护的数据、设备配置、信息熵等。采用以下流程确定安全资产。
首先分析IP核需求规格说明书并确定IP核的主要功能和目的。之后,找到IP核中实现功能所需要的最小组成部分,按照对功能实现的重要程度对组成部分进行排序,得到按重要程度排序的安全资产。
(2)确定访问点
当确定了需要保护的安全资产,分析并确定哪些接口(例如,信号、引脚、总线、寄存器等)可被攻击者获取并对安全资产进行访问(即篡改或泄露),作为安全需求的访问点。
(3)确定安全条件和安全行为
安全行为是对待测设计中受保护资产的操作、状态和路径的描述。安全行为的描述相对灵活,可以是安全需求下设计必须遵循的行为,也可以是安全需求不允许的威胁情况。安全条件为是安全行为成立时所需要满足的条件。
首先,依据需求规格说明书,依次分析是否有机密性、完整性的安全需求,结合此前已确定的安全资产及访问点,编写安全行为和安全条件。
之后,对将安全资产、访问点、安全条件和安全行为填入结构化的安全需求表达式中,安全需求的形式化描述表达式如下:
<access>may<behave><Asset>if<Condition>holds.
其中<access>为访问点,<behave>为安全行为,<Asset>为安全资产,<Condition>为安全条件,将以上步骤确定的信息对应填入表达式,形成安全需求。
(4)生成可执行属性
采用SVA(System Verilog Assertion)来作为属性描述语言,SVA是断言的实现的一种形式,它是SystemVerilog语言的一个子集,可在仿真过程中直接被编译成机器码而加以执行,也被多种形式化验证工具所支持。
生成可执行属性的流程如下:
首先,对结构化描述的安全需求进行解析,提取需求中的安全资产、访问点、安全条件和安全行为。
之后,基于信息流理论,对IP核设计进行信息流处理,依次添加污迹标签和污迹传播逻辑,结合SVA语法映射为可执行属性。
如图1所示,一种IP核安全需求描述方法,包括以下步骤:
步骤1:输入IP核设计代码.v/.vhd及其需求规格说明书;
步骤2:分析IP核需求规格说明书并确定IP核的主要功能和目的,找到IP核中实现功能所需要的最小组成部分;
步骤3:按照对功能实现的重要程度对组成部分进行排序,得到按重要程度排序的安全资产;
步骤4:分析并确定接口(例如,信号、引脚、总线、寄存器等)可被攻击者获取并对安全资产进行访问,作为安全需求的访问点;
步骤5:依据安全资产及访问点,分析是否有机密性、完整性的安全需求,编写安全行为和安全条件;
步骤6:基于信息流理论,对IP核设计进行信息流处理,依次添加污迹标签和污迹传播逻辑,结合SVA语法映射为可执行属性。
本发明具有以下优势:
(1)安全需求描述的较为规范且通用性较好。本方法采用采用结构化的描述方式替代传统的自然语言描述方式,使得描述的安全需求较为规范,安全需求可以复用于其他的类似的设计中。
(2)可直接被形式化验证工具执行。本方法实现了从需求到断言的转换,生成的安全属性基于SVA语言,可被大多数仿真和形式化验证工具支持。使用者无需手动编写安全属性断言,提高了IP核安全性验证的效率。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
Claims (4)
1.一种IP核代码级安全需求描述方法,其特征在于,包括:
步骤1:输入IP核设计代码及需求规格说明书;
步骤2:分析IP核需求规格说明书并确定IP核的主要功能和目的,找到IP核中实现功能所需要的最小组成部分;
步骤3:按照对功能实现的重要程度对组成部分进行排序,得到按重要程度排序的安全资产;
步骤4:分析并确定接口,可被攻击者获取并对安全资产进行访问,作为安全需求的访问点;
步骤5:依据安全资产及访问点,分析安全需求,以编写安全行为和安全条件;
步骤6:基于信息流理论,对IP核设计进行信息流处理,依次添加污迹标签和污迹传播逻辑,结合SVA语法映射为可执行属性;
其中,
所述步骤5中,安全行为是对待测设计中受保护资产的操作、状态和路径的描述,安全条件为是安全行为成立时所需要满足的条件;
首先,依据需求规格说明书,依次分析是否有机密性、完整性的安全需求,结合此前已确定的安全资产及访问点,编写安全行为和安全条件;
之后,对将安全资产、访问点、安全条件和安全行为填入结构化的安全需求表达式中,安全需求的形式化描述表达式如下:
<access>may<behave><Asset>if<Condition>holds.
其中<access>为访问点,<behave>为安全行为,<Asset>为安全资产,<Condition>为安全条件,将确定的信息对应填入表达式,形成安全需求;
所述步骤6中,
生成可执行属性包括:
首先,对结构化描述的安全需求进行解析,提取需求中的安全资产、访问点、安全条件和安全行为;
之后,对IP核设计进行信息流处理,依次添加污迹标签和污迹传播逻辑,结合SVA语法映射为可执行属性。
2.如权利要求1所述的IP核代码级安全需求描述方法,其特征在于,分析并确定接口包括信号、引脚、总线以及寄存器。
3.如权利要求1所述的IP核代码级安全需求描述方法,其特征在于,安全行为是对待测设计中受保护资产的操作、状态和路径的描述。
4.如权利要求1所述的IP核代码级安全需求描述方法,其特征在于,安全条件为是安全行为成立时所需要满足的条件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010715870.2A CN111880768B (zh) | 2020-07-23 | 2020-07-23 | 一种ip核代码级安全需求描述方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010715870.2A CN111880768B (zh) | 2020-07-23 | 2020-07-23 | 一种ip核代码级安全需求描述方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111880768A CN111880768A (zh) | 2020-11-03 |
CN111880768B true CN111880768B (zh) | 2023-07-14 |
Family
ID=73156370
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010715870.2A Active CN111880768B (zh) | 2020-07-23 | 2020-07-23 | 一种ip核代码级安全需求描述方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111880768B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104881606A (zh) * | 2015-04-30 | 2015-09-02 | 天津大学 | 基于形式化建模的软件安全需求获取方法 |
CN106663037A (zh) * | 2014-06-30 | 2017-05-10 | 亚马逊科技公司 | 特征处理权衡管理 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102542191B (zh) * | 2010-12-31 | 2014-12-17 | 深圳市证通电子股份有限公司 | Rtl级ip核的保护方法 |
CN107358123B (zh) * | 2016-05-10 | 2020-11-03 | 中国科学院微电子研究所 | 一种安全检测方法及装置 |
US10289577B2 (en) * | 2016-05-11 | 2019-05-14 | New York University | System, method and computer-accessible medium for low-overhead security wrapper for memory access control of embedded systems |
CN107526969B (zh) * | 2016-06-20 | 2020-11-03 | 中国科学院微电子研究所 | 一种确定ip核安全级别的方法及装置 |
CN109508540B (zh) * | 2018-09-12 | 2023-06-23 | 成都奥卡思微电科技有限公司 | 一种芯片安全监视方法和安全监视芯片 |
CN109711159B (zh) * | 2018-11-26 | 2020-11-10 | 北京计算机技术及应用研究所 | 一种基于信息流的ip核rtl级代码安全漏洞检测方法 |
-
2020
- 2020-07-23 CN CN202010715870.2A patent/CN111880768B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106663037A (zh) * | 2014-06-30 | 2017-05-10 | 亚马逊科技公司 | 特征处理权衡管理 |
CN104881606A (zh) * | 2015-04-30 | 2015-09-02 | 天津大学 | 基于形式化建模的软件安全需求获取方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111880768A (zh) | 2020-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7313772B2 (en) | Systems, methods, and media for block-based assertion generation, qualification and analysis | |
US8555234B2 (en) | Verification of soft error resilience | |
US6553514B1 (en) | Digital circuit verification | |
CN109711159B (zh) | 一种基于信息流的ip核rtl级代码安全漏洞检测方法 | |
US20210224452A1 (en) | Layout-based side-channel emission analysis | |
Jindal et al. | Verification of transaction-level SystemC models using RTL testbenches | |
JP3822044B2 (ja) | 設計検証システム、設計検証方法および設計検証プログラムを格納したコンピュータ読取り可能な記録媒体 | |
US20190087513A1 (en) | Learning framework for software-hardware model generation and verification | |
CN111859380A (zh) | Android App漏洞的零误报检测方法 | |
CN115952758A (zh) | 芯片验证方法、装置、电子设备及存储介质 | |
Fern et al. | Detecting hardware trojans in unspecified functionality using mutation testing | |
CN112597718A (zh) | 集成电路设计的验证方法、验证装置以及存储介质 | |
US7454726B2 (en) | Technique for generating input stimulus to cover properties not covered in random simulation | |
CN110287700B (zh) | 一种iOS应用安全分析方法及装置 | |
Wang et al. | ASAX: Automatic security assertion extraction for detecting Hardware Trojans | |
CN108647533B (zh) | 用于检测硬件木马的安全断言自动生成方法 | |
Bombieri et al. | Incremental ABV for functional validation of TL-to-RTL design refinement | |
US6810507B2 (en) | Method and apparatus for isolating the root of indeterminate logic values in an HDL simulation | |
Bombieri et al. | Functional qualification of TLM verification | |
CN111880768B (zh) | 一种ip核代码级安全需求描述方法 | |
Petersén et al. | Fault injection and fault handling: an MPSoC demonstrator using IEEE P1687 | |
Fern et al. | Evaluating assertion set completeness to expose hardware trojans and verification blindspots | |
US10546083B1 (en) | System, method, and computer program product for improving coverage accuracy in formal verification | |
US7689399B1 (en) | Automatic extraction of design properties | |
US10268786B2 (en) | System and method for capturing transaction specific stage-wise log data |
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 |