一种设备运行时木马电路检测与出错恢复方法技术

技术编号:23050529 阅读:28 留言:0更新日期:2020-01-07 14:50
本发明专利技术提出了一种设备运行时木马电路检测和出错恢复方法,其包括如下步骤:建立用于木马电路检测的原计算和重计算,以及用于木马电路被触发而出错时的恢复计算;将任务节点绑定到IP核;计算IP核所需要的IP核厂商的个数;匹配最优IP核厂商组合;确定任务的调度时间和IP核用的个数;为每个IP核构建定位和替换结构;实时检测原计算和重计算结果是否相同,如果不同则定位被激活的木马电路所在的IP核;替换被激活木马电路所在的IP核。该方法能够保证在木马电路被触发后检测到输出错误并提供恢复计算,以使得系统的正常运行,同时还可以迅速定位被感染的IP核并在系统下次运行前对其进行替换。

A method of Trojan circuit detection and error recovery when device is running

【技术实现步骤摘要】
一种设备运行时木马电路检测与出错恢复方法
本专利技术涉及领域计算机领域,具体涉及集成电路中一种设备运行时的木马电路检测与出错恢复方法,特别是涉及不可信第三方IP核运行时的木马电路检测与出错恢复方法。
技术介绍
集成电路设计和制造的全球化进程使得芯片安全和可信性成了一个重要的议题,而在集成电路设计中木马电路的检测则是一直以来都是重中之重。一般的木马电路检测方法主要有四种,分别是物理检测、旁路分析、功能测试、可信设计。它们都是非运行时的检测方法,不提供恢复计算。我们分别对四种木马电路检测方法加以分析。(1)物理检测,它本质上是一种基于失效分析的技术,属于破坏性的木马检测手段;通常将待鉴别器件开封后,对电路进行逐层扫描,然后根据扫描图像重建原始设计,最后通过版图比较找到电路中的硬件木马。这种方法检测准确,但工作量大,成本极高,不实用,且检测出的个别芯片安全无法保证所有芯片安全。(2)旁路分析,加入木马电路的芯片势必引起功耗、电流等相关变量的变化,通过对芯片的功耗、电流进行分析,以判断是否存在木马电路。由于不同芯片乃至同一芯片的不同区域具有极大的差异,对这种检测方法造成了极大的干扰,且木马电路一般较小,对整个电路影响较小,较难检测到。(3)功能测试,在芯片输入端施加激励,若输出与逻辑不相符,则认为存在木马或缺陷。该方法在存在木马电路且被激活的情况下,才可行。由于木马电路在极稀少的条件下才能被激活,而穷举所有测试向量来激活不切实际,因此该方法效果甚微。(4)可信性设计,是在设计阶段就要植入额外检测功能的模块。若第三方的芯片生产厂商具有其他目的,显然不可能暴露芯片的内部额外的一些电路或机制。综上所述,现有的四种木马电路检测机制不具有普遍适用的特点,且不提供出错恢复计算,无法满足于运行时需求。同时对被感染的IP核还无法做到定位及及时替换。
技术实现思路
为了克服上述现有技术中存在的缺陷,本专利技术的目的是提供一种设备运行时木马电路检测与出错恢复方法,本专利技术能够保证在木马电路被触发后检测到输出错误并提供恢复计算,以使得系统的正常运行,同时还可以迅速定位被感染的IP核并对其进行替换,并且,本专利技术在木马电路检测和出错恢复过程中进行了配置优化,能够在保证其功能正常实现的情况下优化资源配置,节约成本开销。为了实现本专利技术的上述目的,本专利技术提供的一种设备运行时木马电路检测和出错恢复方法,其包括如下步骤:S1,建立用于木马电路检测的原计算和重计算,以及用于木马电路被触发而出错时的恢复计算;S2,将任务节点绑定到IP核;S3,计算步骤S2的IP核所需要的IP核厂商的个数;S4,根据步骤S3计算的结果,匹配出最优IP核厂商组合;S5,确定任务的调度时间和IP核用的个数;S6,为每个IP核构建定位和替换结构;S7,实时检测原计算和重计算结构否相同,如果不同则执行恢复计算并执行步骤S8;S8,定位被激活的木马电路所在的IP核;S9,替换被激活木马电路所在的IP核。本申请的优选方案:根据以下安全规则将任务节点绑定到IP核:在原计算、重计算和恢复计算中,相对应的任务节点被绑定到来自不同厂商的IP核上;具有父子关系或向同个子节点提供输入或具有密切相关输入的任务节点应绑定到来自不同厂商的IP核上;本申请的优选方案:步骤S3的计算方法为:将原计算用数据流图G表示;使用邻接矩阵M表示输入的数据流图G;将邻接矩阵M沿主对角线复制2次得到矩阵M’;根据安全规则在矩阵M’上添加依赖关系;将添加好依依赖关系的矩阵M’转换为无向图对应的邻接矩阵M”;对无向图对应的邻接矩阵M”着色;返回着色数以及每种颜色包含的节点集合;其中,着色数即为实现安全规则所需要的IP核厂商的数量;每种颜色包含的节点集合即为每个IP核厂商所位于的节点的集合。本申请的优选方案:所述步骤S4具体为:建立着色数到备选IP核厂商的完全图G';根据每种颜色包含的节点类型计算该颜色选择每个备选IP核厂商的边的权重;使用权重矩阵D表示G';将权重矩阵D中的所有值更改为相应的负值;应用Kuhn-Munkres最大权重匹配算法进行最大权重匹配计算;返回最小权重W和对应的匹配MT。本申请的优选方案:所述步骤S6具体为:检查木马检测阶段原计算与重计算的输出结果,若结果相同,则说明没有木马电路被触发,若结果不同则执行恢复计算,取恢复计算的结果作为最终结果。本申请的优选方案:所述步骤S7具体为:在运行过程中,将原计算和重计算的中间结果存储在内存中;当恢复计算运行时,将恢复计算的中间结果分别与原计算、重计算的中间结果用比较器进行比较;当恢复计算的某一中间结果与原计算、重计算的对应的中间结果不相同时,说明该中间结果所在的运算节点为被激活的木马电路所在运算节点,即该运算节点的IP核被感染。还包括定位开销的计算步骤:根据同时运行最多IP核的时钟周期确定比较器的个数,即比较器个数=2*Q,其中Q为该周期IP核个数根据每个比较器所连接的多路复用器的规模以及每个多路复用器的面积,得到多路复用器的总面积;将比较器的总面积和多路复用器的总面积求和得到定位开销总面积。本申请的优选方案:所述步骤S8具体为:一旦被感染的IP核被定位,通过重新编程控制逻辑来对被感染的IP核进行替换,该替换在当前应用程序完成之后、下次运行之前进行,替换的原则为替换的IP核与被替换的IP核所在的运算节点在原计算、重计算、恢复计算中对应的IP核的厂商均不相同。本申请的优选方案:替换IP核面积总开销W=3amNk-2amNr+akNr,其中Nk为第k种IP核个数,k为正整数,k小于等于K,K为运算类型的总数,Nr为替换第k种IP核的备用IP核的个数;ak为单个第k种IP核的面积开销;am为2输入多路复用器的面积开销;当ak<2am或者Nr=1时,替换开销最小。本专利技术的有益效果是:当木马电路被触发并产生错误输出时,本专利技术能够保证检测到出错,并从错误中恢复;如果数据通路中存在木马电路,降低了运行时木马电路被触发的几率;对资源配置进行了优化,在满足木马电路检测与出错恢复的基础上,最小化成本开销;还可以迅速定位被感染的IP核并在系统下次运行前对该被感染的IP核进行替换。本专利技术的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本专利技术的实践了解到。附图说明本专利技术的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:图1为要进行的运算操作的数据流图G,其包含3个乘法和2个加法,需要3个乘法器和2个加法器完成所需功能;图2为木马电路检测与出错恢复流程示意图,该图中,检测阶段不超过4个时钟周期,恢复阶段不超过3个时钟周本文档来自技高网
...

【技术保护点】
1.一种设备运行时木马电路检测与出错恢复方法,其特征在于,包括如下步骤:/nS1,建立用于木马电路检测的原计算和重计算,以及用于木马电路被触发而出错时的恢复计算;/nS2,将任务节点绑定到IP核;/nS3,计算步骤S2的IP核所需要的IP核厂商的个数;/nS4,根据步骤S3计算的结果,匹配出最优IP核厂商组合;/nS5,确定任务的调度时间和IP核用的个数;/nS6,为每个IP核构建定位和替换结构;/nS7,实时检测原计算和重计算结果是否相同,如果不同则执行恢复计算并执行步骤S8;/nS8,定位被激活的木马电路所在的IP核;/nS9,替换被激活木马电路所在的IP核。/n

【技术特征摘要】
1.一种设备运行时木马电路检测与出错恢复方法,其特征在于,包括如下步骤:
S1,建立用于木马电路检测的原计算和重计算,以及用于木马电路被触发而出错时的恢复计算;
S2,将任务节点绑定到IP核;
S3,计算步骤S2的IP核所需要的IP核厂商的个数;
S4,根据步骤S3计算的结果,匹配出最优IP核厂商组合;
S5,确定任务的调度时间和IP核用的个数;
S6,为每个IP核构建定位和替换结构;
S7,实时检测原计算和重计算结果是否相同,如果不同则执行恢复计算并执行步骤S8;
S8,定位被激活的木马电路所在的IP核;
S9,替换被激活木马电路所在的IP核。


2.如权利要求1所述的设备运行时木马电路检测与出错恢复方法,其特征在于,根据以下安全规则将任务节点绑定到IP核:
在原计算、重计算和恢复计算中,相对应的任务节点被绑定到来自不同厂商的IP核上;
具有父子关系或向同个子节点提供输入或具有密切相关输入的任务节点应绑定到来自不同厂商的IP核上。


3.如权利要求2所述的设备运行时木马电路检测与出错恢复方法,其特征在于,步骤S3的计算方法为:
将原计算用数据流图G表示;
使用邻接矩阵M表示输入的数据流图G;
将邻接矩阵M沿主对角线复制2次得到矩阵M’;
根据安全规则在矩阵M’上添加依赖关系;
将添加好依依赖关系的矩阵M’转换为无向图对应的邻接矩阵M”;
对无向图对应的邻接矩阵M”着色;
返回着色数以及每种颜色包含的节点集合;
其中,着色数即为实现安全规则所需要的IP核厂商的数量;每种颜色包含的运算节点集合即为每个IP核厂商所位于的运算节点的集合。


4.如权利要求1所述的设备运行时木马电路检测与出错恢复方法,其特征在于,所述步骤S4具体为:
建立着色数到备选IP核厂商的完全图G';
根据每种颜色包含的节点类型计算该颜色选择每个备选IP核厂商的边的权重;
使用权重矩阵D表示G';
将权重矩阵D中的所有值更改为相应的负值;
应用Kuhn-Munkres最大权重匹配算法进...

【专利技术属性】
技术研发人员:崔晓通王若晗罗心烺
申请(专利权)人:重庆邮电大学
类型:发明
国别省市:重庆;50

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1