一种基于不可信IP核的系统级芯片安全设计方法与流程

文档序号:18060784发布日期:2019-07-03 03:04阅读:256来源:国知局
一种基于不可信IP核的系统级芯片安全设计方法与流程

本发明涉及集成电路信息安全领域,特别是一种基于不可信ip核的系统级芯片安全设计方法。



背景技术:

随着无线通信,传感器技术,嵌入式系统和微电子技术的发展,集成电路信息安全问题正面临前所未有的挑战。

目前,在半导体供应链全球化趋势下,集成电路行业需要利用不同国家或区域设计/制造的第三方(third-partyintellectualproperty,简称3pip)ip核来完成片上系统(system-on-chip,简称:soc)的生产。传统的将底层硬件视为安全可靠的安全防护的策略已经失效,不可信供应商可以直接或间接的将恶意电路植入于ic生产的各个阶段。国内外专家、学者以及科研机构对此问题进行了广泛深入的研究,提出了多种针对硬件木马的可信设计。现在大规模应用的可信设计方法包括:基于空白版图填充的预防注入技术,基于电路伪装的抗木马植入技术,以及大规模集成电路下的第三方ip授信设计。空白版图填充是对于ic内部那些未使用的空间进行单元填充,目的是去除ic空白板块,防止硬件木马的植入。电路伪装则是针对ic布局阶段的模糊设计,通过在设计内部各层之间添加伪装逻辑,或者伪装线路连接等,使电路的功能与结构变得模糊,从而防止攻击者发现原始电路的结构层次,阻止恶意电路的插入。3pip授信设计方法主要是针对协同设计的片上系统提出一些约束设计,以此来预防和隔离受到硬件木马感染的部分电路。

对于ic内部那些未利用的空间,xiao等设计提出一种新型的空白版图填充技术,该技术将功能标准单元(functionalstandardcell,简称scs)植入于电路网表未使用的区域,填充标准单元与各寄存器相互连接形成了具有自认证机制的内置电路,从而保护原始电路免受硬件木马的植入。该技术极大程度的减少了时间开销与电路电容负载。但同时,引入的额外金属将导致更少的布线空间与更多的串扰,影响了电路的正常运作与使用寿命。

为了实现ic设计阶段的伪装布局,dofe设计了一种基于门级网表的动态电路混淆方案,通过动态调整电路状态,影响电路的逻辑功能结构,提高集成电路的安全性。但该方法不能完全覆盖全部芯片,对随机位置注入的硬件木马缺乏抵抗力。

而rajendran首次提出基于不可信组件集成的可信片上系统,根据3pip的多种约束设计和验证比较,检测并隔离影响芯片性能的木马电路,该技术属于高级综合方法,更加适用于超大规模集成电路,减少安全检测阶段带来的时间开销。但缺点是多个ip核混合使用会增加额外的技术开销,木马隔离与检测设计同样增加了生产成本,而且该方法没能考虑信息泄露型木马检测。

由于集成电路在农业和工业环境中的广泛应用,现有大部分可信设计方法不支持多类型的硬件木马防护,方法普遍存在空间占用率大,制造成本高的缺陷,且大部分可信设计策略会导致制造周期变长,不能满足当前紧张的ic市场需求。



技术实现要素:

有鉴于此,本发明的目的是提出一种基于不可信ip核的系统级芯片安全设计方法,从ip供应链源头设计一条自适应性强,复用性高,扩展性广,快速且智能的soc安全设计架构。

本发明采用以下方案实现:一种基于不可信ip核的系统级芯片安全设计方法,具体包括以下步骤:

步骤s1:采用高阶合成技术完成rtl的安全设计;

步骤s2:将芯片的rtl文件通过一系列的逻辑综合转换成门级网表;

步骤s3:分析门级网表的逻辑结构,提取标准网表特征;

步骤s4:将步骤s3收集的门级电路的标准网表特征样本分为训练数据集与测试数据集。并采用训练数据集对梯度提升算法进行训练,得到基于梯度提升的硬件木马分类器;

步骤s5:通过交叉验证法,将测试数据集输入到训练好的梯度提升木马分类器中,得到基于该模型的硬件木马预测结果。

进一步地,步骤s1具体包括以下步骤:

步骤s11:采用多类别供应商提供的ip核组件,并利用副本比对策略检测植入在ip核中的恶意电路,其中副本也采用多方ip核供应商集成;

步骤s12:设计一个替换副本来降低集成电路制造过程中的时间与成本开销,所述替换副本采用的ip核由不同的ip供应商提供,并且需要至少一类ip核与原始设计、验证副本相区别,以此保证替换副本的可信度和安全性。

进一步地,步骤s3中,所述标准网表特征包括但不限于:电路扇入引脚个数,电路扇出引脚个数,多路复用器个数,电路回路个数和电路常数信息。

进一步地,步骤s4具体包括以下步骤:

步骤s41:将所有特征按数值进行预排序;

步骤s42:初始化学习模型为其中f(x)是基学习器,而f(x)代表总学习模型,m为基学习器的个数,α是系数;

步骤s43:总学习模型由多个基学习器加权组成,梯度提升算法核心是使每个基学习器学习效率到达最优,从而最小化总模型的损失函数,具体公式如下:

式中,v表示学习模型的损失函数;

其中,αmfm(xi)进一步展开为:

式中,γ为学习速率,表示伪残差;

步骤s44:根据特征值,逐一增加基学习器,优化目标函数,保证损失函数取值最小。

进一步地,步骤s5还包括:将每组样本的预测结果与真实结果相比对,并计算硬件木马分类器的精确率、查准率与查全率。

与现有技术相比,本发明有以下有益效果:

1、本发明提出基于不可信ip核的系统级芯片安全设计架构,通过将芯片可信设计方法与电路特征分析技术相结合,实现soc的寄存器传输级防护与门级硬件木马安全检测,该架构具有不依赖标准模型与自动化程度高的特性,对推动硬件木马检测理论研究有着重要的意义。而且基于前硅的安全设计策略可以有效实现硬件木马在网表中的定位,操作更加灵活,且不改变电路的原始架构,适用于系统级电路的安全检测。

2、本发明在实现ip核集成安全性的同时,减少了ip核总数与生产成本。在综合分析芯片网表的功能特性的情况下,为两种安全设计策略增添了ip核木马检测机制,实现了大规模集成电路下的功能型木马检测。另外为了实现第三方ip核的重用与功能型木马的隔离,通过多类型ip核组成的安全副本替换可疑的木马ip核,避免不可重用模块所带来的额外成本开销。

3、本发明还采用梯度提升算法,将算法应用于硬件木马的检测分析,该算法优点是模型表达能力强,能够处理高维稀疏的特征数据,并且智能技术的框架能够实现端到端的学习模式,应用发展至今的硬件木马方法先验知识与现存木马特征库,自适应更新检测方法,有助于提高木马检测效率,减小时间与成本的开销,适用于超大规模集成电路。

附图说明

图1为本发明实施例的基于不可信组件的安全设计策略示意图。

图2为本发明实施例的基于不可信组件ip核复用方法示意图。

图3为本发明实施例的方法流程示意图。

具体实施方式

下面结合附图及实施例对本发明做进一步说明。

应该指出,以下详细说明都是示例性的,旨在对本申请提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本申请所属技术领域的普通技术人员通常理解的相同含义。

需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。

如图3所示,本实施例提供了一种基于不可信ip核的系统级芯片安全设计方法,具体包括以下步骤:

步骤s1:采用高阶合成技术完成rtl的安全设计;主要包括两个部分:基于不可信组件的rtl安全设计与高效灵活的ip核复用方法;

步骤s2:ip核安全集成设计完成后,将芯片的rtl文件通过一系列的逻辑综合转换成门级网表;

步骤s3:分析门级网表的逻辑结构,提取标准网表特征;

步骤s4:将步骤s3收集的门级电路的标准网表特征样本分为训练数据集与测试数据集。并采用训练数据集对梯度提升算法进行训练,得到基于梯度提升的硬件木马分类器;

步骤s5:通过交叉验证法,将测试数据集输入到训练好的梯度提升木马分类器中,得到基于该模型的硬件木马预测结果。

在本实施例中,步骤s1具体包括以下步骤:

步骤s11:采用多类别供应商提供的ip核组件,并利用副本比对策略检测植入在ip核中的恶意电路(图1),其中副本也采用多方ip核供应商集成;如图1所示,本实施例包括了单核安全策略与多核安全策略。单核ip核安全设计策略是仅使用单一供应商ip核集成原始设计与检测副本,该类设计制造工艺简单,更节省成本,但安全性较低;多核ip核安全设计旨在使用多个供应商提供的ip核进行安全集成,该设计安全性更高,但会影响效率与增加成本;

步骤s12:由于恶意ip核的影响,使得ic设计成本变得十分高昂。单个ip核的失效,将导致整个ic网表的作废,照成了极大的浪费。本实施例设计一个替换副本来降低集成电路制造过程中的时间与成本开销(图2),ip核复用策略在不可信ip核检测之后进行,所述替换副本采用的ip核由不同的ip供应商提供,并且需要至少一类ip核与原始设计、验证副本相区别,以此保证替换副本的可信度和安全性。

特别的,本实施例综合考虑了单核与多核两种不同的副本替换情况,一旦检测阶段输出结果发现异常,本实施例会利用不同于原始设计与验证设计的第三方ip核组成替换副本取代原始设计,完成不可信组件的隔离,同时保证其他ip核的高效利用。

在本实施例中,步骤s3中,所述标准网表特征包括但不限于:电路扇入引脚个数,电路扇出引脚个数,多路复用器个数,电路回路个数和电路常数信息(比如:接地或恒定的信号)。

在本实施例中,步骤s4具体包括以下步骤:

步骤s41:将所有特征按数值进行预排序;

步骤s42:初始化学习模型为其中f(x)是基学习器,而f(x)代表总学习模型,m为基学习器的个数,α是系数;

步骤s43:总学习模型由多个基学习器加权组成,梯度提升算法核心是使每个基学习器学习效率到达最优,从而最小化总模型的损失函数,具体公式如下:

式中,v表示学习模型的损失函数;

其中,αmfm(xi)进一步展开为:

式中,γ为学习速率,表示伪残差;对于每组电路特征样本,本实施例总可以求出它们的伪残差;

步骤s44:根据特征值,逐一增加基学习器,优化目标函数,保证损失函数取值最小。

在本实施例中,步骤s5还包括:将每组样本的预测结果与真实结果相比对,并计算硬件木马分类器的精确率、查准率与查全率。

特别的,由于集成电路在农业和工业环境中的广泛应用,现有大部分可信设计方法不支持多类型的硬件木马防护,方法普遍存在空间占用率大,制造成本高的缺陷,且大部分可信设计策略会导致制造周期变长,不能满足当前紧张的ic市场需求。为了实际解决芯片生产的安全性需求,深入研究集成电路及硬件木马组成结构,本实施例从ip供应链源头设计一条自适应性强,复用性高,扩展性广,快速且智能的soc安全设计架构。

市面上流通的大多数物联网设备都容易受到恶意电路(硬件木马)的攻击。本实施例针对现阶段集成电路可信设计的局限,摈弃了传统的ip核冗余的安全设计限制,重新提出了基于不可信ip核的集成电路安全设计策略,在实现ip核集成安全性的同时,减少了ip核总数与生产成本。本实施例还将ip核授信技术与电路特征分析技术的优势相结合,采用梯度提升算法分析电路特征,将机器学习算法应用于硬件木马的检测分析,使安全架构可以检测寄存器转换级(registertransferlevel,简称:rtl)与门级两个阶段的恶意电路威胁。

本实施例将集成电路的安全设计分为两个阶段:(1)rtl的硬件木马防护:寄存器转换级是soc设计中最容易被植入硬件木马的阶段,本实施例研究分析了经典的ip核可信设计技术的特性,包括安全设计策略、副本对照策略、功能型硬件木马隔离策略,发现构建基于不可信组件的ic安全设计方法难点在于:保证ip核集成安全的同时,控制减少多个ip核混合使用而导致的成本开销,提高soc安全制造链的整体生产效率。因此本实施例利用高阶合成技术将不可信ip核设计为可信的rtl网表,并在此基础上实现了高效灵活的ip核复用方法。(2)门级网表的硬件木马检测:rtl文件在eda软件逻辑综合后会形成特定的门级网表,在此过程中恶意攻击者也有可能通过eda软件插入硬件木马,为了解决上述问题,提前发现隐藏在门级网表中的可疑电路,本实施例采用梯度提升算法分析电路特征,将机器学习算法应用于门级硬件木马的检测分析,以保证soc门级阶段的安全可靠。

本实施例将梯度提升算法与电路特征相结合应用在硬件木马检测方法中具有实时、精准、低成本的优点。梯度提升算法的引入有助于解决传统硬件木马电路特征分析方法时间复杂度高、个别木马检测效率低的缺陷,提升方法检测效率。梯度提升算法相比于其他机器学习算法可以更加灵活处理各种类型的数据,包括连续值和离散值;且在相对少的调参时间下,也能保证预测的准确率,对异常值的鲁棒性非常强。

本实施例还针对侧信道分析方法易受工艺噪声影响的问题,采用了基于前硅的门级网表来分析可能的木马威胁,该检测方法成本更低廉,而且从网表结构入手进行安全分析可以进一步定位木马的位置,以改进芯片的安全设计。

特别的,本实施例的梯度提升方法针对不同类型门级木马的检测效果如下表所示。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述,仅是本发明的较佳实施例而已,并非是对本发明作其它形式的限制,任何熟悉本专业的技术人员可能利用上述揭示的技术内容加以变更或改型为等同变化的等效实施例。但是凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与改型,仍属于本发明技术方案的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1