防止利用扫描链攻击集成电路芯片的动态混淆扫描链结构制造技术

技术编号:15327577 阅读:187 留言:0更新日期:2017-05-16 11:37
本发明专利技术公开了一种防止利用扫描链攻击集成电路芯片的动态混淆扫描链结构,该结构由控制单元(1A),线性反馈移位寄存器(1B),遮蔽链(1C)和异或门集合(1D)构成。该结构是纯数字元器件构成,内嵌在集成电路中,能够混淆集成电路芯片中的扫描链结构,从而测试者拿到的输入激励和输出响应都是经过混淆的,攻击者难以得知真正的测试输入输出以及扫描链结构,达到保护集成电路芯片的目的。本发明专利技术所公开的结构可以保护集成电路芯片免受基于扫描链的非破坏芯片式的攻击,防止芯片内部敏感信息泄露,同时其所需要的额外面积和功耗很低,对原有集成电路芯片的设计及测试流程影响很小,不会增加测试时间。

Dynamic confusion scanning chain structure for preventing integrated circuit chip from scanning chain

The invention discloses a dynamic scan chain attack to prevent the use of integrated circuit chip confusion scanning chain structure, the structure consists of a control unit (1A), linear feedback shift register (1B), covered the chain (1C) and XOR gates (1D) constitute a set. The structure is pure digital element components, embedded in the integrated circuit, can confuse the scan chain structure of integrated circuit chip, so as to test the input and output have response have been confused, the attacker is difficult to know the real test of input and output and scan chain structure, to achieve the purpose of protection of integrated circuit chip. The structure disclosed by the invention can protect the IC chip from non destructive chip scan chain type based attacks, prevent the chip internal leakage of sensitive information, at the same time, area and extra power needed is very low, the design and testing process of the original film integrated circuit chip ring is very small, will not increase the test time.

【技术实现步骤摘要】
一种防止利用扫描链攻击集成电路芯片的动态混淆扫描链结构
本专利技术涉及一种防止利用扫描链攻击集成电路芯片的动态混淆扫描链结构,更确切的说,是一种适用于防止在供应链中攻击者利用扫描链路攻击集成电路芯片的动态混淆扫描链路结构,属于集成电路芯片知识产权及安全性保护

技术介绍
集成电路(integratedcircuit)是一种微型电子器件或部件。它是经过氧化、光刻、扩散、外延、蒸铝等半导体制造工艺,把构成具有一定功能的电路所需的半导体、电阻、电容等元件及它们之间的连接导线全部集成在一小块硅片上,然后焊接封装在一个管壳内的电子器件;其中所有元件在结构上已组成一个整体,使电子元件向着微小型化、低功耗、智能化和高可靠性方面迈进了一大步。集成电路具有体积小,重量轻,引出线和焊接点少,寿命长,可靠性高,性能好等优点,同时成本低,便于大规模生产。集成电路按其功能、结构的不同,可以分为模拟集成电路、数字集成电路和数/模混合集成电路三大类。随着集成电路制造工艺的不断进步,集成电路芯片内部的逻辑单元数目剧增,而集成电路芯片的引脚个数却被大大限制,为了尽可能的测试集成电路,以保证产品质量,在集成电路芯片中通常采用可测试性(DFT,DesignforTestability)设计技术。该技术通过在芯片原始设计中插入各种用于提高芯片可测试性的硬件逻辑,使得芯片变得容易测试,从而大幅度降低测试成本。扫描设计是一种当前工业界广泛采用的可测试性设计技术,它可以获得很高的故障覆盖率,实际上已经成为现代芯片设计流程中必不可少的环节。这种设计的基本思想是将待测电路内部的寄存器单元改造为可扫描的寄存器单元(即扫描单元),并分组串接在一起构成扫描链。在测试状态下从测试设备传输过来的测试激励逐拍进入扫描链中的扫描触发器,全部扫描触发器单元填充完毕后电路进入正常功能状态,捕获电路状态值,捕获到的触发器状态值称为测试响应,测试响应将被串行的移出扫描触发器到达芯片引脚,通过和已存储的期望结构进行比较,确定芯片是否包含故障。通过扫描链,测试者可以快速准确的得到集成电路芯片中每一个寄存器存储的值。因此,通过扫描链,攻击者可以获取芯片中的密钥、芯片的内部结构等信息,或者操控芯片。经过对现有的技术文献进行检索发现,已经有学者利用扫描链成功攻破了现有的多种加密算法新芯片。如2005年D.Mukhopadhyay等人在AsianTestSymposium(亚洲测试会议)发表了“Cryptoscan:Asecuredscanchainarchitecture(加密扫描:一种安全的扫描链结构)”,其中提到通过在功能模式下运行集成电路芯片,然后将其切换到测试模式下获得每个寄存器存储的值,来获取流密码加密芯片的密钥。B.Yang等人于2004年在InternationalTestConference(国际测试会议)上发表的“Scanbasedsidechannelattackondedicatedhardwareimplementationsofdataencryptionstandard(针对数据加密标准进行的基于扫描链的测信道攻击)”,展示了利用扫描链攻击专用于数据加密标准(DES)芯片以获取其密钥的方法。D.Hely等人于2004年在InternationalOnlineTestingSymposium(国际线上测试会议)上发表了“Scandesignandsecurechip(扫描设计和安全芯片)”,其中指出,在已知集成电路芯片某些结构功能的条件下,攻击者可以通过扫描输入非法控制信号来干扰芯片的正常工作。由于以上所述的基于扫描链的攻击,保证安全的进行扫描测试已经成为设计者和工厂非常关注的问题,许多对策被提了出来。如D.Hely等人于2006年在InternationalOnlineTestingSymposium(国际线上测试会议)上发表了“Securescantechniques:acomparison(安全扫描技术对比)”中提到通过精心设计的测试控制器,当集成电路芯片进入测试模式时,所有的寄存器和存储器中的值会被清零。2009年M.Inoue等人在EuropeanTestSymposium(欧洲测试研讨会)上发表的“Partialscanapproachforsecretinformationprotection(通过部分扫描来保护敏感信息)”,展示了改变扫描链结构,来混淆扫描输入输出向量,保护敏感信息。G.Sengar等人于2007年在IEEETransactionsonComputer-AidedDesignofIntegratedCircuitsandSystems(计算机辅助设计集成电路和系统)上发表了“Securedflippedscan-chainmodelforcrypto-architecture(用于加密结构中的安全触发扫描链)”,其中通过在扫描链中插入反相器来混淆扫描链的结构,防止攻击者得到扫描链的具体结构。但是随着新技术的不断发展,这些方法都存在被攻破的可能性。目前基于扫描链的攻击有如下几种:暴力攻击(BruteForceAttack):通过遍历的手段,猜测芯片内部的敏感信息所保存的位置以及值,经过不断尝试从而得到想要的数据。普通差分攻击(DifferentialAttack):通过在普通模式下输入不同的测试激励,并运行集成电路芯片一段时间后,切换到测试模式,扫描输出响应数据,比较输出的测试响应,定位关键的触发器位置,来获取某些敏感信息。仅测试模式下的差分攻击(TestModeOnlyDifferentialAttack):因为某些集成电路芯片在由普通模式切换到测试模式时,会把所有的寄存器和存储器的值都清零,普通差分攻击无法起作用,因此近年有人提出了仅测试模式下的差分攻击。在测试模式下,通过输入全为0和只有一位为1的测试向量,比较测试响应输出,观测值发生变化的寄存器的位置,以此定位某些包含敏感信息的寄存器,进而获取敏感信息,如密钥等。复位攻击(ResettingAttack):对于某些通过混淆扫描链来保护扫描信息的方法,使用复位攻击,将所有的寄存器值都清零,然后扫描输出,可以初步判断某些混淆方法的结构。冲刷攻击(FlushingAttack):通过不断向扫描链中扫描输出特定测试向量,如全为1或者全为0,根据扫描输出的值,来判断扫描链是否被混淆以及混淆的方法。位识别攻击(Bit-RoleIdentificationAttack):某些扫描链保护结构,以扫描链中的一些寄存器作为关键位,只有这些寄存器的值满足一定条件时,才能正常进行扫描测试。位识别攻击就是针对这种保护措施,攻击者根据设计者给出的正确的测试向量,依次改变测试向量中的某一位,若所改变的恰好是关键位的寄存器,则输出的测试响应会发生较大的改变。依据这一方法,可以确定所有的关键位,进而破解对扫描链的保护。由于大规模集成电路芯片中扫描链的数目可能远多余芯片外部管脚的数目,因此通常会把测试向量和响应进行压缩,节约外部端口的需求。外部扫描输入的测试向量首先经过芯片内部的解压器,将被压缩的测试向量解压到每条扫描链上;每条扫描链的测试响应经过一个压缩器后由外部管脚输出。因为压缩本文档来自技高网...
防止利用扫描链攻击集成电路芯片的动态混淆扫描链结构

【技术保护点】
一种防止利用扫描链攻击集成电路芯片的动态混淆扫描链结构,该集成电路芯片包含N条扫描链,扫描链1E1、扫描链1E2……扫描链1EX……扫描链1EN,它们共同构成一个扫描链集合{1E1,1E2...1EN},即扫描链集合1E;所述的动态混淆扫描链结构,其特征在于:动态混淆扫描链结构由控制单元(1A),线性反馈移位寄存器(1B),遮蔽链(1C)和异或门集合(1D)构成;控制单元(1A)由时钟控制模块(10C)、n比特寄存器(10A)和n比特测试向量计数器(10B)构成,控制单元(1A)对输入集成电路芯片的测试向量数目进行计数,当输入的测试向量的数目达到p组时,就输出一个混淆密钥更新信号给线性反馈移位寄存器(1B)模块,以更改整个混淆结构的混淆密钥;线性反馈移位寄存器(1B)是一个λ位的线性反馈移位寄存器构成的,该线性反馈移位寄存器由控制单元(1A)输出的混淆密钥更新信号驱动,输出λ位的混淆密钥,此密钥是一0、1构成的序列;遮蔽链(1C)由若干串联在一起的触发器、两种类型的与门——即A类与门和B类与门构成,触发器和A类与门的数目等于扫描链集合(1E)中最长的扫描链的长度,B类与门的数目等于扫描链集合(1E)中扫描链的数目N;遮蔽链(1C)的作用为防止因为复位攻击而泄露混淆密钥,混淆密钥经过遮蔽链(1C)转变为经保护的混淆密钥,输入到扫描链集合(1E)中;当集成电路芯片遭受复位攻击时,经保护的混淆密钥均置零,扫描链集合(1E)未被混淆,攻击者无法得到混淆结构的信息,只有其扫描输入一组测试向量后,混淆结构才正常工作,此时攻击者亦无法得到混淆密钥的信息;异或门集合(1D)包含M个异或门,即异或门1D1、异或门1D2……异或门1DX、异或门1DX+1……异或门1DM,它们共同构成异或门集合1D={1D1,1D2......1DM},这些异或门分别插入到扫描链集合{1E1,1E2...1EN}中的每条扫描链中,且受到经保护的混淆密钥控制,每位混淆密钥控制一个或者多个异或门,当该位密钥为高电平时,经过受控异或门的信号就会发生翻转,即被混淆,否则不翻转,即不混淆。...

【技术特征摘要】
1.一种防止利用扫描链攻击集成电路芯片的动态混淆扫描链结构,该集成电路芯片包含N条扫描链,扫描链1E1、扫描链1E2……扫描链1EX……扫描链1EN,它们共同构成一个扫描链集合{1E1,1E2...1EN},即扫描链集合1E;所述的动态混淆扫描链结构,其特征在于:动态混淆扫描链结构由控制单元(1A),线性反馈移位寄存器(1B),遮蔽链(1C)和异或门集合(1D)构成;控制单元(1A)由时钟控制模块(10C)、n比特寄存器(10A)和n比特测试向量计数器(10B)构成,控制单元(1A)对输入集成电路芯片的测试向量数目进行计数,当输入的测试向量的数目达到p组时,就输出一个混淆密钥更新信号给线性反馈移位寄存器(1B)模块,以更改整个混淆结构的混淆密钥;线性反馈移位寄存器(1B)是一个λ位的线性反馈移位寄存器构成的,该线性反馈移位寄存器由控制单元(1A)输出的混淆密钥更新信号驱动,输出λ位的混淆密钥,此密钥是一0、1构成的序列;遮蔽链(1C)由若干串联在一起的触发器、两种类型的与门——即A类与门和B类与门构成,触发器和A类与门的数目等于扫描链集合(1E)中最长的扫描链的长度,B类与门的数目等于扫描链集合(1E)中扫描链的数目N;遮蔽链(1C)的作用为防止因为复位攻击而泄露混淆密钥,混淆密钥经过遮蔽链(1C)转变为经保护的混淆密钥,输入到扫描链集合(1E)中;当集成电路芯片遭受复位攻击时,经保护的混淆密钥均置零,扫描链集合(1E)未被混淆,攻击者无法得到混淆结构的信息,只有其扫描输入一组测试向量后,混淆结构才正常工作,此时攻击者亦无法得到混淆密钥的信息;异或门集合(1D)包含M个异或门,即异或门1D1、异或门1D2……异或门1DX、异或门1DX+1……异或门1DM,它们共同构成异或门集合1D={1D1,1D2......1DM},这些异或门分别插入到扫描链集合{1E1,1E2...1EN}中的每条扫描链中,且受到经保护的混淆密钥控制,每位混淆密钥控制一个或者多个异或门,当该位密钥为高电平时,经过受控异或门的信号就会发生翻转,即被混淆,否则不翻转,即不混淆。2.根据权利要求1所述的一种防止利用扫描链攻击集成电路芯片的动态混淆扫描链结构,其特征在于:其中,时钟控制模块(10C)由一个反相器、一个控制触发器和...

【专利技术属性】
技术研发人员:王晓晓张东嵘苏东林陈爱新
申请(专利权)人:北京航空航天大学
类型:发明
国别省市:北京,11

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

1