防止集成电路和知识产权核剽窃的动态混淆封装接口制造技术

技术编号:19545947 阅读:61 留言:0更新日期:2018-11-24 20:58
一种防止集成电路和知识产权核剽窃的动态混淆封装接口,其特征在于:动态混淆封装接口(1A)由功能单元输入封装接口(10A)、功能单元输出封装接口(10B)、扫描链输入封装接口(10C)、扫描链输出封装接口(10D)、有限状态机集合(10E)和混淆逻辑单元集合(10F)构成;动态混淆封装接口(1A)受到内部密钥寄存器(20D)和外部密钥寄存器(20E)的控制,只有当来自内部密钥寄存器(20D)和外部密钥寄存器(20E)的信号使得动态混淆封装接口(1A)输入输出信号完全一致时,动态混淆封装接口(1A)才会被正确解锁,使用者才能使用IP核或集成电路进行测试或者激活。

Dynamic Confusion Packaging Interface for Preventing Plagiarism of Integrated Circuits and Intellectual Property Cores

A dynamic confusion encapsulation interface for preventing the plagiarism of integrated circuits and intellectual property cores is characterized by dynamic confusion encapsulation interface (1A) consisting of functional unit input encapsulation interface (10A), functional unit output encapsulation interface (10B), scan chain input encapsulation interface (10C), scan chain output encapsulation interface (10D), finite state machine set (10E). Dynamic obfuscation encapsulation interface (1A) is controlled by internal key register (20D) and external key register (20E), only when signals from internal key register (20D) and external key register (20E) make the input and output signals of dynamic obfuscation encapsulation interface (1A) completely consistent. Confused Packaging Interface (1A) will be unlocked correctly, and users will be able to test or activate using IP cores or integrated circuits.

【技术实现步骤摘要】
防止集成电路和知识产权核剽窃的动态混淆封装接口
本专利技术涉及一种在集成电路内部的用来防止集成电路和知识产权核被剽窃的动态混淆封装接口,更确切的说,是一种适用于在集成电路供应链中防止攻击者通过过量生产或者非法使用知识产权造成集成电路和知识产权核被剽窃的动态混淆封装接口,属于集成电路芯片知识产权及安全性保护

技术介绍
集成电路(integratedcircuit)是一种微型电子器件或部件。它是经过氧化、光刻、扩散、外延、蒸铝等半导体制造工艺,把构成具有一定功能的电路所需的半导体、电阻、电容等元件及它们之间的连接导线全部集成在一小块硅片上,然后焊接封装在一个管壳内的电子器件;其中,所有元件在结构上已组成一个整体,使电子元件向着微小型化、低功耗、智能化和高可靠性方面迈进了一大步。集成电路具有体积小,重量轻,引出线和焊接点少,寿命长,可靠性高,性能好等优点,同时成本低,便于大规模生产。集成电路按其功能、结构的不同,可以分为模拟集成电路、数字集成电路和数/模混合集成电路三大类。在集成电路设计中,知识产权(IP)核指的是用于专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)或者现场可编程门阵列(Field-ProgrammableGateArray,FPGA)中的预先设计好的电路功能模块。IP核有三种不同的存在形式:硬件描述语言形式,网表形式、版图形式,即软核、固核和硬核。专门设计IP核的厂商称之为IP核设计者,他们通常主要设计集成电路中的某些模块,而不进行整个芯片的整合。在现代半导体产业中,产品研发到上市的时间对于最终产品的价格有直接的影响。因此,为了节约时间并降低成本,集成电路设计者通常会尽可能的复用IP核。类似的,半导体制造的开销在集成电路成本中也占很大的比重。建立一条生产22纳米以下工艺的半导体生产线需要50亿美元以上,随着半导体工艺节点不断进步,这一成本还在不断上升。因此,多数半导体公司无法同时进行半导体设计和制造。为了在全球市场竞争,集成电路设计者通常把他们设计好的集成电路外包给外部的工厂进行制造。现代集成电路产业链起始于IP核设计者,他们设计IP核并以软核、固核和硬核的形式外包给其他集成电路设计者。集成电路设计者主要是对整个集成电路进行功能设计规划,然后将不同的IP核以及其他集成电路功能模块进行整合,形成最终的集成电路芯片设计。最终的集成电路芯片设计有时候也会以硬件描述语言的形式,外包给第三方公司进行逻辑综合和布局布线,以节省开发成本。之后,第三方公司会把最终生成的版图文件返回给集成电路设计者或者直接发送给代工厂进行制造和测试。但是,这一制造流程存在着安全隐患,主要包括IP核和集成电路被窃取、伪造等。例如,集成电路设计者可以在未经IP核设计者允许的情况下私自使用IP核。集成电路制造厂商可能重复使用掩模来制造过量的集成电路、将原始集成电路私自售卖给第三方厂家、以售卖未通过出厂测试的集成电路以获取非法的收入。更进一步,通过逆向工程,攻击者可以提取IP核或者集成电路的网表信息,以便进行伪造。集成电路测试是用来验证所制造的芯片是否能够正常工作以及是否合格。不幸的是,现有的由代工厂主导的集成电路测试无法避免有缺陷的电路或者侵权的电路进入市场。这些芯片流入市场可能会造成严重的经济和安全隐患。因此,集成电路设计者必须保证芯片的生产和流通的可控性,为了达到这一目的,常见的措施有:分离制造集成电路:2017年,WangYujie等人在AsiaandSouthPacificDesignAutomationConference(亚洲和南太平洋自动化设计会议)发表了论文“Routingperturbationforenhancedsecurityinsplitmanufacturing”(在布局时进行混淆以增强分离制造的安全性),其中,提到的分离制造集成电路是通过将集成电路的一部分交由不受信任的代工厂来制造,来用来保证芯片制造的可信性。使用这一方法,集成电路的制造通常被分为两个阶段:集成电路的较低层级交由不受信任的代工厂完成,这样集成电路设计者不需要告知代工厂集成电路全部的信息,防止代工厂进行伪造;之后集成电路的较高层级交由受到信任的代工厂完成,并进行测试。这样就可以防止不受信任的代工厂过量生产集成电路。但是这一方法不能防止集成电路设计者窃取IP核的信息,同时根据集成电路较低层级的信息,代工厂可以推断出某些较高层级的信息进而进行伪造。集成电路加密:在2017年,XieYang等人在Proceedingsofthe54thAnnualDesignAutomationConference(第54届自动设计会议)上发表了论文“Delaylocking:Securityenhancementoflogiclockingagainsticcounterfeitingandoverproduction”(延迟锁定:通过逻辑锁定防止集成电路伪造和过量制造的安全增强技术),其中提到集成电路设计者可以通过集成电路内部的私有密钥来加密集成电路,只有通过集成电路设计者认证的才能被揭密,这样就防止了集成电路的伪造和过量制造。分离测试:在2014年,Md.TauhidurRahman等人在DefectandFaultToleranceinVLSIandNanotechnologySystems(超大规模集成电路和纳米系统中的缺陷和故障容错设计会议)发表了论文“CSST:PreventingDistributionofUnlicensedandRejectedICsbyUntrustedFoundryandAssembly”(CSST:防止未经授权和被代工厂拒绝激活的集成电路进入市场),其中提到让集成电路设计者参与到集成电路测试中来,代工厂在测试集成电路之前,必须要将集成电路生成的独一无二的密钥发送给集成电路设计者以获取临时激活密钥,然后使用临时激活密钥激活集成电路进行测试,之后将测试生成的所有数据都发送给集成电路设计者进行验证,验证通过后方可拿到集成电路的最终激活密钥进行激活。但是这一测试方法只能用于结构性功能测试,而无法验证集成电路是否进行了正确的功能性测试。目前针对IP核和集成电路进行的侵权主要有以下几种类型:未经授权使用IP核:由于现代集成电路非常的复杂,因此,集成电路在设计过程中大量依赖于第三方的IP核来降低开发成本。集成电路设计者可能在未经IP核设计者授权的情况下私自使用IP核。过量生产集成电路:不受信任的代工厂可能私自生产多余约定的集成电路芯片用于销售,从而损害了集成电路设计者的利益。出售有缺陷的集成电路:集成电路设计者不能保证代工厂正确且完整的进行了所有的测试。一些存在缺陷的电路可能在极少数条件下不能正常的工作,这些电路在实际使用中是很难被检测出来的,只有出厂进行的结构性测试能够很好的检测这些问题。存在缺陷的集成电路应当被丢弃,但是不受信任的代工厂可能将这些集成电路以集成电路设计者的名义出售给其他人,获取不正当利益,同时损害了集成电路设计者的名誉。出售未达标的集成电路:未达标的集成电路指的是芯片不能在指定的频率或者电压范围工作,但是在比较宽松的条件下能够正常运行,本文档来自技高网...

【技术保护点】
1.一种防止集成电路和知识产权核剽窃的动态混淆封装接口,其特征在于:动态混淆封装接口(1A)由功能单元输入封装接口(10A)、功能单元输出封装接口(10B)、扫描链输入封装接口(10C)、扫描链输出封装接口(10D)、有限状态机集合(10E)和混淆逻辑单元集合(10F)构成;IP核或集成电路每个输入输出端口都有一个三输入异或门,分别属于功能单元输入封装接口(10A)、功能单元输出封装接口(10B)、扫描链输入封装接口(10C)和扫描链输出封装接口(10D);功能单元输入封装接口(10A)和扫描链输入封装接口(10C)分别对集成电路或者IP核功能扫描输入端口进行加密,在未解密时,外部数据无法正确的通过功能单元输入封装接口(10A)或扫描链输入封装接口(10C)输入到集成电路或者IP核内部;功能单元输入封装接口(10A)和扫描链输入封装接口(10C)中的三输入异或门的三个输入信号分别来自内部密钥寄存器(20D)中的一位、外部密钥寄存器(20E)中的一位和IP核或者集成电路实际的外部输入信号;功能单元输入封装接口(10A)和扫描链输入封装接口(10C)中的三输入异或门的输出信号为实际输入到IP核或者集成电路中的信号;功能单元输出封装接口(10B)和扫描链输出封装接口(10D)分别对集成电路或者IP核功能/扫描输出端口进行加密,在未解密时,集成电路或者IP核内部的数据无法正确的通过功能单元输出封装接口(10B)或扫描链输出封装接口(10D)输出到集成电路或者IP核外部;功能单元输出封装接口(10B)和扫描链输出封装接口(10D)中的三输入异或门的三个输入信号分别来自内部密钥寄存器(20D)中的一位、外部密钥寄存器(20E)中的一位和IP核或者集成电路产生的要输出的外部输入信号,功能单元输出封装接口(10B)和扫描链输出封装接口(10D)中的三输入异或门的输出信号为IP核或者集成电路实际输出到外部的信号;有限状态机集合(10E)合包含M个有限状态机,即{10E1,10E2...10EM},这些有限状态机的功能被设计为:连续接收α个正确的输入后就会被解锁,使得输入数据直接通过有限状态机,否则输入数据就无法通过有限状态机;M个有限状态机被随机的插入到功能单元输入封装接口(10A)和集成电路或者IP核输入端口之间,用于增加攻击者破解所述混淆封装接口的难度;混淆逻辑单元集合(10F)包含P个组合逻辑单元,即{10F1,10F2...10FP},这些组合逻辑单元被随机的插入到集成电路或者IP核内部,用于混淆电路;混淆逻辑单元集合(10F)包含Y个反相器单元,这Y个反相器单元被随机的插入到功能单元输入封装接口(10A)和IP核或者集成电路之间,或功能单元输出封装接口(10B)和IP核或者集成电路之间,同时为了防止这些反相器被识别出来,使用德摩根定律,将这些反相器移动到更深的逻辑层次;动态混淆封装接口(1A)受到内部密钥寄存器(20D)和外部密钥寄存器(20E)的控制,只有当来自内部密钥寄存器(20D)和外部密钥寄存器(20E)的信号使得动态混淆封装接口(1A)输入输出信号完全一致时,动态混淆封装接口(1A)才会被正确解锁,使用者才能使用IP核或集成电路进行测试或者激活。...

【技术特征摘要】
1.一种防止集成电路和知识产权核剽窃的动态混淆封装接口,其特征在于:动态混淆封装接口(1A)由功能单元输入封装接口(10A)、功能单元输出封装接口(10B)、扫描链输入封装接口(10C)、扫描链输出封装接口(10D)、有限状态机集合(10E)和混淆逻辑单元集合(10F)构成;IP核或集成电路每个输入输出端口都有一个三输入异或门,分别属于功能单元输入封装接口(10A)、功能单元输出封装接口(10B)、扫描链输入封装接口(10C)和扫描链输出封装接口(10D);功能单元输入封装接口(10A)和扫描链输入封装接口(10C)分别对集成电路或者IP核功能扫描输入端口进行加密,在未解密时,外部数据无法正确的通过功能单元输入封装接口(10A)或扫描链输入封装接口(10C)输入到集成电路或者IP核内部;功能单元输入封装接口(10A)和扫描链输入封装接口(10C)中的三输入异或门的三个输入信号分别来自内部密钥寄存器(20D)中的一位、外部密钥寄存器(20E)中的一位和IP核或者集成电路实际的外部输入信号;功能单元输入封装接口(10A)和扫描链输入封装接口(10C)中的三输入异或门的输出信号为实际输入到IP核或者集成电路中的信号;功能单元输出封装接口(10B)和扫描链输出封装接口(10D)分别对集成电路或者IP核功能/扫描输出端口进行加密,在未解密时,集成电路或者IP核内部的数据无法正确的通过功能单元输出封装接口(10B)或扫描链输出封装接口(10D)输出到集成电路或者IP核外部;功能单元输出封装接口(10B)和扫描链输出封装接口(10D)中的三输入异或门的三个输入信号分别来自内部密钥寄存器(20D)中的一位、外部密钥寄存器(20E)中的一位和IP核或者集成电路产生的要输出的外部输入信号,功能单元输出封装接口(10B)和扫描链输出封装接口(10D)中的三输入异或门的输出信号为IP核或者集成电路实际输出到外部的信号;有限状态机集合(10E)合包含M个有限状态机,即{10E1,10E2...10EM},这些有限状态机的功能被设计为:连续接收α个正确的输入后就会被解锁,使得输入数据直接通过有限状态机,否则输入数据就无法通过有限状态机;M个有限状态机被随机的插入到功能单元输入封装接口(10A)和集成电路或者IP核输入端口之间,用于增加攻击者破解所述混淆封装接口的难度;混淆逻辑单元集合(10F)包含P个组合逻辑单元,即{10F1,10F2...10FP},这些组合逻辑单元被随机的插入到集成电路或者IP核内部,用于混淆电路;混淆逻辑单元集合(10F)包含Y个反相器单元,这Y个反相器单元被随机的插入到功能单元输入封装接口(10A)和IP核或者集成电路之间,或功能单元输出封装接口(10B)和IP核或者集成电路之间,同时为了防止这些反相器被识别出来,使用德摩根定律,将这些反相器移动到更深的逻辑层次;动态混淆封装接口(1A)受到内部密钥寄存器(20D)和外部密钥寄存器(20E)的控制,只有当来自内部密钥寄存器(20D)和外部密钥寄存器(20E)的信号使得动态混淆封装接口(1A)输入输出信号完全一致时,动态混淆封装接口(1A)才会被正确解锁,使用者才能使用IP核或集成电路进行测试或者激活。2.根据权利要求1所述的防止集成电路和知识产权核剽窃的动态混淆封装接口所述的动态混淆封装接口,其特征在于:IP核或集成电路有三种工作模式:扫描测试、功能测试和激活模式;内部密钥寄存器(20D)和外部密钥寄存器(20E)在这三种工作模式下发挥的作用如下:扫描测试模式:IP核或者集成电路中的内部密钥被用于锁定动态混淆封装接口(1A);要对IP核或者集成电路进行扫描测试,必须要解锁扫描链输入封装接口(10C)和扫描链输出封装接口(10D),就必须输入一个与内部密钥对应的外部密钥;内部密钥和外部密钥共同作用解锁扫描链输入封装接口(10C)和扫描链输出封装接口(10D)需要满足的条件为:其中,内部测试向量/响应指的是IP核或者集成电路实际接收到的测试向量或者生成的测试响应,外部测试向量/响应指的是测试人员输入给扫描链输入封装接口(10C)的测试向量,或者从扫描链输出封装接口(10D)接收到的测试响应,代表进行异或操作;IP核或者集成电路设计者基于临时指纹计算出IP核或者集成电路的内部密钥,然后根据内部密钥计算得到对应的外部密钥,并发送给测试人员,用以解锁扫描链输入封装接口(10C)和扫描链输出封装接口(10D)进而实施扫描测试;IP核或者集成电路设计者保证外部测试向量对所有的IP核或者集成电路保持一致,只需要改变外部密钥即解锁不同的IP核或者集成电路;这样降低IP核或者集成电路设计者和测试人员的数据交换量和测试的复杂程度;功能测试模式:在通过扫描测试后,IP核或者集成电路需要进行功能测试,保证IP核或者集成电路能够在给定的条件下正常工作,没有缺陷;在功能测试模式下,需要解锁功能单元输入封装接口(10A)和功能单元输出封装接口(10B)进行测试,此时被测IP核或者集成电路的内部密钥与扫描测试测内部密钥相同,但是需要输入一个新的外部密钥;功能单元...

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

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

1