CN114048470A - 基于tdc模块的硬件攻击的防御方法及装置、电子设备 - Google Patents
基于tdc模块的硬件攻击的防御方法及装置、电子设备 Download PDFInfo
- Publication number
- CN114048470A CN114048470A CN202210035523.4A CN202210035523A CN114048470A CN 114048470 A CN114048470 A CN 114048470A CN 202210035523 A CN202210035523 A CN 202210035523A CN 114048470 A CN114048470 A CN 114048470A
- Authority
- CN
- China
- Prior art keywords
- signal
- clock
- tdc module
- delay
- multiplexer
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000005070 sampling Methods 0.000 claims abstract description 50
- 230000008569 process Effects 0.000 claims abstract description 8
- 230000007123 defense Effects 0.000 claims description 29
- 230000008859 change Effects 0.000 claims description 17
- 230000000630 rising effect Effects 0.000 claims description 9
- 230000003111 delayed effect Effects 0.000 claims description 7
- 238000006243 chemical reaction Methods 0.000 claims description 6
- 238000004458 analytical method Methods 0.000 description 17
- 238000002347 injection Methods 0.000 description 12
- 239000007924 injection Substances 0.000 description 12
- 230000000694 effects Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- ZXQYGBMAQZUVMI-GCMPRSNUSA-N gamma-cyhalothrin Chemical compound CC1(C)[C@@H](\C=C(/Cl)C(F)(F)F)[C@H]1C(=O)O[C@H](C#N)C1=CC=CC(OC=2C=CC=CC=2)=C1 ZXQYGBMAQZUVMI-GCMPRSNUSA-N 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于TDC模块的硬件攻击的防御方法及装置、电子设备,该方法包括:将可供配置的时钟源输入到TDC模块中,以使得所述TDC模块通过所述延时单元链输出延时时钟信号组以及采样信号;将所述采样信号输入伪随机数生成器,以使得所述伪随机数生成器对所述采样信号进行处理,输出片选信号;将所述片选信号和所述延时时钟信号组分别作为多路选择器的片选信号以及输入信号输入到多路选择器中,以使得所述多路选择器输出错位时钟信号,所述错位时钟信号作为需要保护IP核的输入时钟;向所述TDC模块预设阈值参数,比较所述采样信号和所述预设置阈值参数,如果所述采样信号超过所述预设置阈值的范围,以触发所述TDC模块输出一个预警信号。
Description
技术领域
本申请涉及故障攻击分析技术领域,尤其涉及一种基于TDC模块的硬件攻击的防御方法及装置、电子设备。
背景技术
随着机器学习的飞速发展,目前需要更强的计算能力去支持越来越复杂的网络结构,FPGA由于其高并行计算能力、高灵活性等特点,在云端数据中心中被广泛用作加速单元。与此同时,越来越多的云端服务供应商开始提供面向企业的FaaS以及AaaS服务。通过这些服务,开发者能够利用云端FPGA资源实现快速实现自定义IP的开发工作并实现盈利。为了进一步利用云端的FPGA资源,业界提出了多租户场景。在这种场景中,FPGA上的资源被动态分配到各个用户,通过这种方法能够极大地提升片上资源的利用率。
在多租户场景下,各个用户之间在逻辑层面上是互不相干的,但在旁路能量分析以及故障攻击分析领域,各个用户之间的行为仍然会有一定程度的联系。通常情况下,一块FPGA上的所有资源的供电都是被同一个供电网络支持。如果同一块FPGA上有多个不同的用户,那么不同用户所运行的程序必然造成整个供电网络电压的波动,恶意的用户能够利用用户行为与网络电压波动间的关系发起硬件层面的攻击。
传统的硬件层面的攻击包括旁路能量分析攻击,故障注入攻击以及硬件木马攻击等。通过旁路能量分析,攻击者能够恢复出电路中运行程序的关键信息(通常是指密码算法中的密钥);通过故障注入攻击,特定的故障能够被注入到电路中,从而造成电路功能失效。在云端FPGA场景中,这种依赖于近场设备的传统硬件攻击不再适用。诸如示波器、电磁信号注入器、信号发生源等仪器无法对云端FPGA上的电路造成威胁。但是由于云端FPGA上的供电网络不可避免地建立起了不同用户之间的电气联系,当攻击者和受害者处于同一FPGA上时,恶意的攻击者通过搭建适当的电路能够在云端成功复现传统意义上的旁路能量分析攻击以及故障注入攻击。目前在多租户场景下,已经有诸多研究成功实现了远程的旁路能量分析攻击以及故障注入攻击,且这种远程硬件攻击仅需要恶意攻击者拥有正常的用户权限。
目前大多对这类远程硬件攻击的防御方式都是由云端服务供应商提供,这种防御方式通过对用户上传的FPGA配置文件进行侦测从而排查出恶意的电路结构。针对不可信的云端服务供应商,用户则需要自行部署相应的硬件防御单元。而现有的针对此类攻击的硬件防御单元,往往只专注于旁路能量分析攻击或者故障注入攻击,目前尚没有对旁路能量分析攻击以及故障注入攻击通用的防御方法,且常见对故障注入攻击的硬件防御方式往往需要耗费大量的片上资源。
发明内容
本申请实施例的目的是提供一种基于TDC模块的硬件攻击的防御方法及装置、电子设备,以解决相关技术中已有的基于硬件的防御方法仅能防御单一种类物理攻击、且需要耗费大量硬件资源的技术问题。
根据本申请实施例的第一方面,提供一种基于TDC模块的硬件攻击的防御方法,所述TDC模块由FPGA上的延时单元链以及触发器组成,该方法包括:
将可供配置的时钟源输入到TDC模块中,以使得所述TDC模块通过所述延时单元链输出延时时钟信号组以及采样信号,所述时钟源作为所述TDC模块的输入信号以及触发时钟;
将所述采样信号输入伪随机数生成器,以使得所述伪随机数生成器对所述采样信号进行处理,输出片选信号;
将所述片选信号和所述延时时钟信号组分别作为多路选择器的片选信号以及输入信号输入到多路选择器中,以使得所述多路选择器输出错位时钟信号,所述错位时钟信号作为需要保护IP核的输入时钟;
向所述TDC模块预设阈值参数,比较所述采样信号和所述预设置阈值参数,如果所述采样信号超过所述预设置阈值的范围,以触发所述TDC模块输出一个预警信号。
进一步地,所述触发器采用并行触发的方式采集延时单元链上不同延时单元节点的输出值。
进一步地,所述延时单元链由延时单元采用串行连接方式构成。
进一步地,所述伪随机数生成器对所述采样信号进行处理,输出片选信号,包括:
在每个时钟上升沿到来时,所述伪随机数生成器将采样信号变为电平变化相关信号,将所述电平变化相关信号进行异或运算得到片选信号。
进一步地,所述延时时钟信号组特征如下:
所述延时时钟信号组的每一个信号分别对应所述延时单元链中的每个延时单元的输出信号,所述延时时钟信号组中信号个数与延时单元链中延时单元数相同;
所述延时时钟信号组中每一个信号的相位信息都不相同,延时时钟信号组中每相邻两个延时时钟信号的相位差相同。
进一步地,将所述片选信号和所述延时时钟信号组分别作为多路选择器的片选信号以及输入信号输入到多路选择器中,以使得所述多路选择器输出错位时钟信号,包括:
在每个时钟上升沿到来时,对所述多路选择器中的片选信号,进行二进制-十进制转换,转换后得到十进制表示片选信号;
选择所述延时时钟信号组中与所述十进制表示片选信号相对应的延时时钟信号作为当前时钟周期内多路选择器的输出信号,所述多路选择器的输出在多个时钟周期内的线性组合为所述错位时钟信号。
进一步地,向TDC模块预设阈值参数,包括:
在需要保护IP核正常工作状态下,采集所述TDC模块的采样信号的变化,对所述采样信号的变化进行统计,根据统计结果给出阈值参数;
向TDC模块预设所述阈值参数。
根据本申请实施例的第二方面,提供一种基于TDC模块的硬件攻击的防御装置,所述TDC模块由FPGA上的延时单元链以及触发器组成,该装置包括:
第一输入模块,用于将可供配置的时钟源输入到TDC模块中,以使得所述TDC模块通过所述延时单元链输出延时时钟信号组以及采样信号,所述时钟源作为所述TDC模块的输入信号以及触发时钟:
第二输入模块,用于将所述采样信号输入伪随机数生成器,以使得所述伪随机数生成器对所述采样信号进行处理,输出片选信号;
第三输入模块,用于将所述片选信号和所述延时时钟信号组分别作为多路选择器的片选信号以及输入信号输入到多路选择器中,以使得所述多路选择器输出错位时钟信号,所述错位时钟信号作为需要保护IP核的输入时钟;
预设比较模块,用于向所述TDC模块预设阈值参数,比较所述采样信号和所述预设置阈值参数,如果所述采样信号超过所述预设置阈值的范围,以触发所述TDC模块输出一个预警信号。
根据本申请实施例的第三方面,提供一种电子设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的方法。
根据本申请实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如第一方面所述方法的步骤。
本申请的实施例提供的技术方案可以包括以下有益效果:
由上述实施例可知,本申请采用了错位时钟来隐藏泄露信息、阈值检测技术监控电压域内的异常变化以及集成TDC模块的技术手段,所以克服了基于硬件部署的防御方法无法有效防御多种物理攻击、且硬件资源消耗过大的技术问题,进而达到了以轻量级的硬件防御方法抵御多种物理攻击的技术效果。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是根据一示例性实施例示出的基于TDC模块的硬件攻击的防御方法的流程图。
图2是根据一示例性实施例示出的基于TDC模块的硬件攻击的防御方法的结构图。
图3是根据一示例性实施例示出的基于TDC模块的硬件攻击的防御装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
图1是根据一示例性实施例示出的一种基于TDC模块的硬件攻击的防御方法的流程图,图2是根据一示例性实施例示出的基于TDC模块的硬件攻击的防御方法的结构图,如图1和图2所示,该方法应用于FPGA中,所述TDC模块由FPGA上的延时单元链以及触发器组成,所述触发器采用并行触发的方式采集延时单元链上不同延时单元节点的输出值,所述延时单元链由延时单元采用串行连接方式构成。该方法可以包括以下步骤:
步骤S11,将可供配置的时钟源输入到TDC模块中,以使得所述TDC模块通过所述延时单元链输出延时时钟信号组以及采样信号,所述时钟源作为所述TDC模块的输入信号以及触发时钟;
具体地,TDC模块输出的延时时钟信号组的特征如下:
所述延时时钟信号组的每一个信号分别对应所述延时单元链中的每个延时单元的输出信号,所述延时时钟信号组中信号个数与延时单元链中延时单元数相同;
所述延时时钟信号组中每一个信号的相位信息都不相同,延时时钟信号组中每相邻两个延时时钟信号的相位差相同。
利用TDC模块输出的延时时钟信号组内部自带的延时信息,能够在引入相位差、保证系统安全性的同时,尽可能地降低部署防御方案消耗的硬件资源。
步骤S12,将所述采样信号输入伪随机数生成器,以使得所述伪随机数生成器对所述采样信号进行处理,输出片选信号;
具体地,在每个时钟上升沿到来时,所述伪随机数生成器将采样信号变为电平变化相关信号,将所述电平变化相关信号进行异或运算得到片选信号。
通过该伪随机数发生器对采样信号进行降维得到的片选信号,在每一个时钟周期根据不同的采样值从而实现对所述延时时钟信号组中不同延时时钟信号的调用,其效果体现在TDC模块最终输出的错位时钟信号上。该信号在时域以及频域上与正常的时钟信号相比,其时钟上升沿到来时间以及时钟频率都经过了随机化处理,因此对时域以及频域上的旁路能量分析攻击都具有一定的防御效果。
步骤S13,将所述片选信号和所述延时时钟信号组分别作为多路选择器的片选信号以及输入信号输入到多路选择器中,以使得所述多路选择器输出错位时钟信号,所述错位时钟信号作为需要保护IP核的输入时钟;
具体地,将所述片选信号和所述延时时钟信号组分别作为多路选择器的片选信号以及输入信号输入到多路选择器中,以使得所述多路选择器输出错位时钟信号,包括:
在每个时钟上升沿到来时,对所述多路选择器中的片选信号,进行二进制-十进制转换,转换后得到十进制表示片选信号;
选择所述延时时钟信号组中与所述十进制表示片选信号相对应的延时时钟信号作为当前时钟周期内多路选择器的输出信号,所述多路选择器的输出在多个时钟周期内的线性组合为所述错位时钟信号。
由于多路选择器的片选信号SEL在每个系统时钟内都会变化,造成需要保护IP核
的输入信号的相位在每个时钟周期上升沿到来时都不确定。在两个相邻的时钟周期内,根
据时钟上升沿到来时的相位以及两个时钟周期内的相位差,可以
判断输出时钟的相位以及频率。在满足特定约束的条件下,输出时钟在相邻两个时
钟的第二个时钟周期内会产生倍频,该时钟即为错位时钟信号。由于该时钟相位以及频率
信息不固定,而旁路能量分析攻击需要采集时域上的离散点来拟合相关设备的功率曲线,
采集得到的曲线为电压-时间相关曲线。本实例中选择AES硬核作为需要保护的IP核,利用
旁路能量分析攻击中的相关功率分析方法攻击AES硬核。相关功率分析需要记录输出密文,
并根据下式计算中间值M:
其中,M为计算得到的中间值,代表AES模块输出密文的第i个字节,代表最
后一轮加密过程中密钥的第i个字节,inv_shift_round为行逆行位移变换,为逆S
盒变换。该中间值M与设备动态电压的关系通过对下式汉明重量W的计算得到:
式中,H(M)代表了中间值M的汉明重量,权重系数a,b在计算中分别取1与0。采用线性模型评估汉明重量W与电压采样值N的相关系数,具体根据下式进行计算:
式中,代表W与N的相关性系数,越接近1,则代表W和N的线性相关性越
高。对进行1字节中所有可能结果的猜测,分别计算所有的相关性系数,在相关性系数
中确定绝对值最大的系数所对应的猜测密钥,推测该密钥为正确密钥。
由于TDC模块输出的错位时钟信号在时域中不严格具有周期性,这导致中间值的汉明重量W与电压采样值N在时域中无法做到对齐,使得正确密钥的相关性系数下降,导致相关功率分析无法恢复得到正确密钥。由于错位时钟信号在频域以及时域上都具有一定的偏移,该防御方法对频域以及时域上的旁路能量分析攻击都具有防御效果。
步骤S14,向所述TDC模块预设阈值参数,比较所述采样信号和所述预设置阈值参数,如果所述采样信号超过所述预设置阈值的范围,以触发所述TDC模块输出一个预警信号。
具体地,在需要保护IP核正常工作状态下,采集所述TDC模块的采样信号的变化,对所述采样信号的变化进行统计,根据统计结果给出阈值参数;
向TDC模块预设所述阈值参数。由于在片上系统中构建的故障注入单元满足高功耗特性。根据:
故障注入单元高功耗导致的电流变换将会映射到电压降变化中。TDC模块的采样信号记录设备正常模式下的电压变化。启用故障注入单元造成的高电压降变化反映到TDC模块的采样信号中,通过实时监控TDC模块的采样信号,结合预设置阈值就能对该系统的异常电压实现检测,从而达到防御故障注入攻击的效果。
由上述实施例可知,本申请利用FPGA上的片上资源搭建了TDC模块,并基于TDC模块中延时单元链中不同节点的相位差以及TDC模块中延时单元链对电压域中变化的敏感性,分别针对旁路能量分析攻击以及故障注入攻击构建了防御单元,TDC模块最终输出的错位时钟信号以及预警信号可被提供给整个片上系统,用来防御上述两种物理攻击。整个防御方案基于TDC模块,以较低物理资源占用的前提,实现了同时防御上述两种物理攻击的技术效果。
与前述的基于TDC模块的硬件攻击的防御方法的实施例相对应,本申请还提供了基于TDC模块的硬件攻击的防御装置的实施例。
图3是根据一示例性实施例示出的一种基于TDC模块的硬件攻击的防御装置框图。参照图3,该装置包括:
第一输入模块21,用于将可供配置的时钟源输入到TDC模块中,以使得所述TDC模块通过所述延时单元链输出延时时钟信号组以及采样信号,所述时钟源作为所述TDC模块的输入信号以及触发时钟:
第二输入模块22,用于将所述采样信号输入伪随机数生成器,以使得所述伪随机数生成器对所述采样信号进行处理,输出片选信号;
第三输入模块23,用于将所述片选信号和所述延时时钟信号组分别作为多路选择器的片选信号以及输入信号输入到多路选择器中,以使得所述多路选择器输出错位时钟信号,所述错位时钟信号作为需要保护IP核的输入时钟;
预设比较模块24,用于向所述TDC模块预设阈值参数,比较所述采样信号和所述预设置阈值参数,如果所述采样信号超过所述预设置阈值的范围,以触发所述TDC模块输出一个预警信号。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
相应的,本申请还提供一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述的基于TDC模块的硬件攻击的防御方法。
相应的,本申请还提供一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如上述的基于TDC模块的硬件攻击的防御方法。所述计算机可读存储介质可以是前述任一实施例所述的任意具备数据处理能力的设备的内部存储单元,例如硬盘或内存。所述计算机可读存储介质也可以是风力发电机的外部存储设备,例如所述设备上配备的插接式硬盘、智能存储卡(Smart Media Card,SMC)、SD卡、闪存卡(Flash Card)等。进一步的,所述计算机可读存储介还可以既包括任意具备数据处理能力的设备的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述任意具备数据处理能力的设备所需的其他程序和数据,还可以用于暂时地存储已经输出或者将要输出的数据。
本领域技术人员在考虑说明书及实践这里公开的内容后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (10)
1.一种基于TDC模块的硬件攻击的防御方法,其特征在于,所述TDC模块由FPGA上的延时单元链以及触发器组成,该方法包括:
将可供配置的时钟源输入到TDC模块中,以使得所述TDC模块通过所述延时单元链输出延时时钟信号组以及采样信号,所述时钟源作为所述TDC模块的输入信号以及触发时钟;
将所述采样信号输入伪随机数生成器,以使得所述伪随机数生成器对所述采样信号进行处理,输出片选信号;
将所述片选信号和所述延时时钟信号组分别作为多路选择器的片选信号以及输入信号输入到多路选择器中,以使得所述多路选择器输出错位时钟信号,所述错位时钟信号作为需要保护IP核的输入时钟;
向所述TDC模块预设阈值参数,比较所述采样信号和所述预设置阈值参数,如果所述采样信号超过所述预设置阈值的范围,以触发所述TDC模块输出一个预警信号。
2.根据权利要求1所述的防御方法,其特征在于,所述触发器采用并行触发的方式采集延时单元链上不同延时单元节点的输出值。
3.根据权利要求1所述的防御方法,其特征在于,所述延时单元链由延时单元采用串行连接方式构成。
4.根据权利要求1所述的防御方法,其特征在于,所述伪随机数生成器对所述采样信号进行处理,输出片选信号,包括:
在每个时钟上升沿到来时,所述伪随机数生成器将采样信号变为电平变化相关信号,将所述电平变化相关信号进行异或运算得到片选信号。
5.根据权利要求1所述的防御方法,其特征在于,所述延时时钟信号组特征如下:
所述延时时钟信号组的每一个信号分别对应所述延时单元链中的每个延时单元的输出信号,所述延时时钟信号组中信号个数与延时单元链中延时单元数相同;
所述延时时钟信号组中每一个信号的相位信息都不相同,延时时钟信号组中每相邻两个延时时钟信号的相位差相同。
6.根据权利要求1所述的防御方法,其特征在于,将所述片选信号和所述延时时钟信号组分别作为多路选择器的片选信号以及输入信号输入到多路选择器中,以使得所述多路选择器输出错位时钟信号,包括:
在每个时钟上升沿到来时,对所述多路选择器中的片选信号,进行二进制-十进制转换,转换后得到十进制表示片选信号;
选择所述延时时钟信号组中与所述十进制表示片选信号相对应的延时时钟信号作为当前时钟周期内多路选择器的输出信号,所述多路选择器的输出在多个时钟周期内的线性组合为所述错位时钟信号。
7.根据权利要求1所述的防御方法,其特征在于,向TDC模块预设阈值参数,包括:
在需要保护IP核正常工作状态下,采集所述TDC模块的采样信号的变化,对所述采样信号的变化进行统计,根据统计结果给出阈值参数;
向TDC模块预设所述阈值参数。
8.一种基于TDC模块的硬件攻击的防御装置,其特征在于,所述TDC模块由FPGA上的延时单元链以及触发器组成,该装置包括:
第一输入模块,用于将可供配置的时钟源输入到TDC模块中,以使得所述TDC模块通过所述延时单元链输出延时时钟信号组以及采样信号,所述时钟源作为所述TDC模块的输入信号以及触发时钟:
第二输入模块,用于将所述采样信号输入伪随机数生成器,以使得所述伪随机数生成器对所述采样信号进行处理,输出片选信号;
第三输入模块,用于将所述片选信号和所述延时时钟信号组分别作为多路选择器的片选信号以及输入信号输入到多路选择器中,以使得所述多路选择器输出错位时钟信号,所述错位时钟信号作为需要保护IP核的输入时钟;
预设比较模块,用于向所述TDC模块预设阈值参数,比较所述采样信号和所述预设置阈值参数,如果所述采样信号超过所述预设置阈值的范围,以触发所述TDC模块输出一个预警信号。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现如权利要求1-7中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210035523.4A CN114048470B (zh) | 2022-01-13 | 2022-01-13 | 基于tdc模块的硬件攻击的防御方法及装置、电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210035523.4A CN114048470B (zh) | 2022-01-13 | 2022-01-13 | 基于tdc模块的硬件攻击的防御方法及装置、电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114048470A true CN114048470A (zh) | 2022-02-15 |
CN114048470B CN114048470B (zh) | 2022-06-24 |
Family
ID=80196504
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210035523.4A Expired - Fee Related CN114048470B (zh) | 2022-01-13 | 2022-01-13 | 基于tdc模块的硬件攻击的防御方法及装置、电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114048470B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080265968A1 (en) * | 2007-04-26 | 2008-10-30 | Shuji Furuichi | Clock frequency diffusing device |
CN107735981A (zh) * | 2016-02-23 | 2018-02-23 | 谷歌有限责任公司 | 用于防御加密攻击的时钟周期随机化 |
WO2018120612A1 (zh) * | 2016-12-28 | 2018-07-05 | 深圳市中兴微电子技术有限公司 | 一种数据采样方法、芯片和计算机存储介质 |
CN110032897A (zh) * | 2019-04-17 | 2019-07-19 | 清华大学 | 一种多核处理器及其基于时间约束的故障攻击方法 |
CN111628753A (zh) * | 2020-07-17 | 2020-09-04 | 中国科学技术大学 | 一种用于高速串行收发器的时钟相位对齐方法及电路 |
CN111817847A (zh) * | 2020-06-17 | 2020-10-23 | 浙江大学 | 基于sike算法的旁路防御方法、装置、电子设备及可读介质 |
CN113615088A (zh) * | 2019-03-26 | 2021-11-05 | 华为技术有限公司 | 跨时钟域同步电路以及方法 |
-
2022
- 2022-01-13 CN CN202210035523.4A patent/CN114048470B/zh not_active Expired - Fee Related
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080265968A1 (en) * | 2007-04-26 | 2008-10-30 | Shuji Furuichi | Clock frequency diffusing device |
CN107735981A (zh) * | 2016-02-23 | 2018-02-23 | 谷歌有限责任公司 | 用于防御加密攻击的时钟周期随机化 |
WO2018120612A1 (zh) * | 2016-12-28 | 2018-07-05 | 深圳市中兴微电子技术有限公司 | 一种数据采样方法、芯片和计算机存储介质 |
CN113615088A (zh) * | 2019-03-26 | 2021-11-05 | 华为技术有限公司 | 跨时钟域同步电路以及方法 |
CN110032897A (zh) * | 2019-04-17 | 2019-07-19 | 清华大学 | 一种多核处理器及其基于时间约束的故障攻击方法 |
CN111817847A (zh) * | 2020-06-17 | 2020-10-23 | 浙江大学 | 基于sike算法的旁路防御方法、装置、电子设备及可读介质 |
CN111628753A (zh) * | 2020-07-17 | 2020-09-04 | 中国科学技术大学 | 一种用于高速串行收发器的时钟相位对齐方法及电路 |
Non-Patent Citations (1)
Title |
---|
许志鹏: "《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑》", 15 February 2020 * |
Also Published As
Publication number | Publication date |
---|---|
CN114048470B (zh) | 2022-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Glamočanin et al. | Are cloud FPGAs really vulnerable to power analysis attacks? | |
Li et al. | Fault sensitivity analysis | |
Hwang et al. | AES-Based Security Coprocessor IC in 0.18-$ muhbox m $ CMOS With Resistance to Differential Power Analysis Side-Channel Attacks | |
Bernstein | Cache-timing attacks on AES | |
Merli et al. | Semi-invasive EM attack on FPGA RO PUFs and countermeasures | |
Jorstad et al. | Cryptographic algorithm metrics | |
Joy Persial et al. | Side channel attack-survey | |
CA2733667C (en) | Method for detecting abnormalities in a cryptographic circuit protected by differential logic, and circuit for implementing said method | |
Pongaliur et al. | Securing sensor nodes against side channel attacks | |
Igarashi et al. | Concurrent faulty clock detection for crypto circuits against clock glitch based DFA | |
Li et al. | Yet another fault-based leakage in non-uniform faulty ciphertexts | |
Glamočanin et al. | Active wire fences for multitenant FPGAs | |
CN114048470B (zh) | 基于tdc模块的硬件攻击的防御方法及装置、电子设备 | |
Zhao et al. | Applying chaos theory for runtime hardware Trojan detection | |
Liptak et al. | Power analysis side channel attacks and countermeasures for the internet of things | |
Moein et al. | Hardware attack mitigation techniques analysis | |
Gai et al. | Attacking the edge-of-things: A physical attack perspective | |
Li et al. | Clockwise Collision Analysis--Overlooked Side-Channel Leakage Inside Your Measurements | |
Fu et al. | Linear regression side channel attack applied on constant xor | |
Chen et al. | A circuit design of sms4 against chosen plaintext attack | |
Hasnain et al. | Power profiling-based side-channel attacks on fpga and countermeasures: A survey | |
Li et al. | Side-channel leakage of alarm signal for a bulk-current-based laser sensor | |
Di Natale et al. | An on-line fault detection scheme for SBoxes in secure circuits | |
Won et al. | A systematic side-channel evaluation of black box aes in secure mcu: Architecture recovery and retrieval of puf based secret key | |
Das et al. | Design of a fdia resilient protection scheme for power networks by securing minimal sensor set |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20220624 |