对密码装置的激光故障注入攻击的改进检测制造方法及图纸

技术编号:28136304 阅读:31 留言:0更新日期:2021-04-21 19:05
本发明专利技术涉及对抗对密码集成电路的故障注入攻击的对策,并且更具体而言,涉及激光故障注入攻击。本发明专利技术包括生成属于一组允许序列的位序列以及将这些序列存储到一组触发器上。之后,检查存储在触发器上的序列,如果它们不属于允许序列,那么这是发生了故障注入攻击,并且引起了触发器之一的位翻转的标志。于是生成警报信号。警报信号。警报信号。

【技术实现步骤摘要】
【国外来华专利技术】对密码装置的激光故障注入攻击的改进检测


[0001]本专利技术整体涉及装置的安全。更具体而言,本专利技术涉及检测对密码装置的激光故障注入攻击。

技术介绍

[0002]密码算法被用到越来越多的携带敏感信息的装置中,所述装置例如是智能卡、蜂窝电话、机顶盒等。
[0003]密码算法用于在数字数据的存储和/或其经由不安全网络的传输期间确保数字数据的保密性、安全性、认证、完整性和私密性。它们还可以用于确保装置之间的事务处理和交易、安全支付、网络中的装置的安全认证等的安全。
[0004]为了保护装置携带的敏感信息免受攻击,往往实施基于密码算法的一项或多项加密功能。加密功能使用一个或多个加密密钥对原始数据或“明文”加密。加密过程产生了密码数据或“密文”,所述密码数据或“密文”只有在采用适当密钥进行解密的情况下才能以其原始形式查看。
[0005]密码算法(诸如DES(数据加密标准)算法和AES(高级加密标准)算法)基于每一用户/装置所特有的秘密密钥,并且允许该用户/装置对消息或数据安全地加密/解密。
[0006]密码算法可以通过将被嵌入到装置内的一般具有小尺寸的集成电路(IC)来实施。例如,UICC(通用集成电路卡)卡或信用卡包括密码IC,其被提供为使用与用户等绑定的一个或多个密码秘密密钥确保交易或通信的安全。因而,保存此类秘密密钥使之免受攻击对于增强大量嵌入装置的安全性来讲是至关重要的。
[0007]为了保存秘密密钥,将密码密钥设计为非常难以数学破解:寻求秘密密钥的攻击者必须执行蛮力分析,其要求攻击者尝试所有可能的秘密密钥。相应地,将密码算法设计为使这样的攻击需要超出合理限度的时间和资源才能有效。
[0008]然而,被称为“故障注入攻击”的其他种类的攻击已经出现了,其使攻击者能够更快地获得秘密密钥。故障注入攻击包括对IC执行硬件攻击,以获得秘密密钥。一种类型的故障注入攻击包括在密码IC的计算当中插入故障,以生成故障结果,并且包括对故障结果进行分析,以获得与IC相关联的秘密密钥。将用以推断出与秘密密钥有关的信息的这种对故障结果的分析称为DFA(差分故障分析)。对抗故障注入攻击的保护是当今密码装置面临的主要挑战,因为这样的攻击急剧降低了攻击者破解嵌入在密码IC内的秘密密钥所需的尝试的次数。在Barenghi,A.,Breveglieri,L.,Koren,I.,&Naccache,D.(2012),Fault injection attacks on cryptographic devices:Theory,practice,and countermeasures,Proceedings of the IEEE,100(11),3056

3076中提供了对故障注入攻击和现有对策的概述。
[0009]激光故障注入是一种尤其强大的故障注入攻击。激光故障注入包括在IC的特定点处发送激光束,从而在密码计算期间生成位错误,由此在密码计算中注入故障。激光故障注入攻击尽管昂贵,但已知是非常强大的攻击,因为其在IC的非常精确的位置上注入故障从
而具有高效性。此外,还可以非常准确地复制故障注入攻击。
[0010]例如,很多密码IC包含执行加密/解密的互连的触发器(FF)。每一FF存储二进制值。这些FF使用时钟同步。每一FF的二进制值在每一时钟信号处(往往是在该时钟信号的上升沿处)依据连接至其输入端口的其他FF的二进制值的组合受到更新。FF的互连允许使用秘密密钥执行加密和解密,秘密密钥往往存储在可以通过物理不可克隆功能(PUF)或者一次性可编程(OTP)主密钥受到保护的外部存储器中。该密钥被通过总线传输至密码电路。激光故障注入攻击能够以单个FF为目标,从而在计算期间注入位故障。位故障可以包括将FF的值人为设置成0或1,或者执行位翻转。
[0011]激光故障注入攻击一般按照两个主要步骤执行。第一校准步骤包括在IC的随机或伪随机位置上执行故障注入,从而识别出最敏感FF,这些FF是要想破解秘密密钥而必须攻击的FF。第二步骤包括在敏感FF中实际执行故障注入,对故障结果进行分析,之后对秘密密钥解密。激光故障注入攻击的强大之处在于其能够在同一型号/制造商的IC上容易地复制。这是因为属于同一型号的IC(例如,同一型号的UICC卡)的拓扑结构是等同的,而只有IC使用的秘密密钥(这一示例中的SIM密钥)是变化的。因此,一旦执行了校准步骤,并且识别出了电路的敏感FF,就可以按照相当简单的方式在同一型号的IC上复现故障注入攻击,从而取出存储在每一IC内的秘密密钥中的每者。
[0012]可以从IC的正面(正面攻击)或者从IC的背面(背面攻击)执行激光故障注入攻击。在每种情况下,激光束的波长都必须具有特定值。就正面攻击而言,激光束的波长必须至少为800nm,才能具有足够的能量来注入故障。就背面攻击而言,激光束的波长必须基本上等于1064nm,因为该波长是使IC的硅衬底表现出透明性的唯一波长,因而是允许从IC的背面进行激光故障注入的唯一波长。
[0013]已知有很多对策保护IC免受激光故障注入攻击。
[0014]例如,可以将屏蔽罩置于IC顶上,从而防止激光束抵达IC。然而,这样的解决方案成本高,而且不能保护IC免受背面攻击。
[0015]另一种对策包括在IC中安放模拟光传感器,以检测激光束并且在检测到激光束的情况下保护电路(例如,通过停止加密/解密的执行或者提交错误结果)。这种解决方案的优势在于确保了在IC的能够通过传感器检测到激光束的区域中无法成功地执行激光故障注入。然而,模拟传感器往往无法感测IC的整个表面上的光。相应地,可能无法检测到出现在IC的远离传感器的区域中的激光故障注入。此外,这样的传感器往往较大,因而占据着显著的表面,否则这些表面可以用于计算逻辑单元和/或允许降低IC的尺寸和功耗。模拟传感器还可以容易地被攻击者检测到。
[0016]在一些现有方案中,已知通过数字光传感器代替模拟传感器。数字传感器比模拟传感器小,从而允许优化所占据尺寸。然而,其仍然能够被有经验的攻击者检测到。此外,尽管激光检测一般是有效的,但是非常难以量化数字传感器提供的保护。因而,使用模拟或数字光传感器解决方案很难以合理的确定性来定义IC的实际受保护的面积(即,IC的将由数字传感器检测到激光束的面积)。
[0017]因此,针对激光故障注入攻击的现有技术对策具有不完全、不可能量化和/或高成本的缺点。
[0018]相应地,需要能够以合理的成本、以定义的确定性检测整个密码IC上的激光故障
注入攻击的密码装置。

技术实现思路

[0019]为此,本专利技术公开了一种密码集成电路(IC),其包括:被配置为生成属于一组允许序列的一个或多个位序列的一个或多个处理逻辑单元;一组触发器(FF),其包括被配置为存储所述位序列的两个或更多触发器;被配置为在由所述组的所述两个或更多FF存储的位所定义的位序列不属于该组允许序列的情况下生成指示故障注入攻击的发生的信号的一个或多个本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种密码集成电路(IC)(100、200a、200b、300、400a、400b、400c、500),包括:

被配置为生成属于一组允许序列的一个或多个位序列的一个或多个处理逻辑单元(310、410a、410b、410c、510);

一组触发器(FF)(320、420a、420b、420c、520),其包括被配置为存储所述位序列的两个或更多触发器;

被配置为在由所述组的所述两个或更多FF存储的位所定义的位序列不属于所述一组允许序列的情况下生成指示故障注入攻击的发生的信号(S
A
)的一个或多个处理逻辑单元(330、430a、430b、430c、530)。2.根据权利要求1所述的密码集成电路(IC),其中,属于所述一组允许序列的两个不同序列之间的汉明距离至少等于二。3.根据权利要求2所述的密码集成电路(IC),其中,所述一组允许序列包括两个序列,所述组的第一序列是所述组的第二序列的补码。4.根据权利要求1到3中的一项所述的密码集成电路(IC)(400a、400b、400c),其中:

被配置为生成属于一组允许序列的一个或多个位序列的所述一个或多个处理逻辑单元包括被配置为存储所述位序列的所述两个或更多FF、以及一个或多个逻辑门(411a、411b、412c、414c),所述一个或多个逻辑门被连接以在每一时钟周期处生成属于所述一组允许序列的不同位序列;

被配置为生成指示故障注入攻击的发生的信号(S
A
)的所述一个或多个处理逻辑单元包括一个或多个逻辑门(430a、431b、432b、433b、434b、431c、432c、433c),所述一个或多个逻辑门(430a、431b、432b、433b、434b、431c、432c、433c)被配置为执行逻辑操作从而在处于被配置为存储所述位序列的所述两个或更多FF的输出处的位序列不属于所述一组允许序列的情况下生成预定义信号。5.根据权利要求4所述的密码集成电路(IC),其中,所述FF中的至少一者使其输入为其输出的补码。6.根据权利要求1到5中的一项所述的密码集成电路(IC),其包括至少一个第一FF(421a、421b),所述至少一个第一FF的输出连接至至少一个第二FF(422a、422、423b)的输入和NOT逻辑门(411a、411b)的输入,所述NOT逻辑门的输出连接至所述第一FF(421a、421b)的输入。7.根据权利要求6所述的密码集成电路(IC),包括:

用以存储所述位序列的第一FF(421a)和第二FF(422a);

NOT逻辑门(411a);

XNOR逻辑门(430a);其中:

所述第一FF(421a)的输出连接至所述NOT逻辑门(430a)的输入,连接至所述第二FF(422a)的输入,并且连接至所述第二XNOR逻辑门(430a)的第一输入;

所述NOT逻辑门411a的输出连接至所述第一FF(421a)的输入;

所述第二FF(422a)的输出连接至所述XNOR逻辑门(430a)的第二输入;

指示故障注入攻击的发生的信号(S
A
)是所述XNOR逻辑门(444a)的等于1的输出。8.根据权利要求1到5中的一项所述的密码集成电路(IC),包括在同一时钟信号上连接
起来的多个FF(421c、422c、423c、424c),所述FF中的每者的输出分别被求反并连接至其输入。9.根据权利要求1或2之一所述的密码集成电路...

【专利技术属性】
技术研发人员:S
申请(专利权)人:智能IC卡公司
类型:发明
国别省市:

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

1