[发明专利]防止集成电路知识产权剽窃的动态混淆封装接口控制单元有效
申请号: | 201810581099.7 | 申请日: | 2018-06-07 |
公开(公告)号: | CN108875431B | 公开(公告)日: | 2021-04-16 |
发明(设计)人: | 张东嵘;苏东林 | 申请(专利权)人: | 北京航空航天大学 |
主分类号: | G06F21/85 | 分类号: | G06F21/85;G06F21/75 |
代理公司: | 北京慧泉知识产权代理有限公司 11232 | 代理人: | 王顺荣;唐爱华 |
地址: | 100191*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 一种防止集成电路知识产权剽窃的动态混淆封装接口控制单元,其特征在于,包括:指纹生成器(20A)、线性移位寄存器(20B)、结果验证单元(20C)、内部密钥寄存器(20D)和外部密钥寄存器(20E);对动态混淆封装接口(1A)进行控制,并验证IP核或者集成电路的测试结果;动态混淆封装接口(1A)受到内部密钥寄存器(20D)和外部密钥寄存器(20E)的控制,只有当来自内部密钥寄存器(20D)和外部密钥寄存器(20E)的信号使得动态混淆封装接口(1A)输入输出信号完全一致时,所设计的动态混淆封装接口(1A)才会被正确解锁,使用者才能使用IP核或集成电路进行测试或者激活。 | ||
搜索关键词: | 防止 集成电路 知识产权 剽窃 动态 混淆 封装 接口 控制 单元 | ||
【主权项】:
1.一种防止集成电路知识产权剽窃的动态混淆封装接口控制单元,其特征在于,包括:指纹生成器(20A)、线性移位寄存器(20B)、结果验证单元(20C)、内部密钥寄存器(20D)和外部密钥寄存器(20E);对动态混淆封装接口(1A)进行控制,并验证IP核或者集成电路的测试结果;指纹生成器(20A)由老化敏感物理不可克隆函数(30A)、解析器(30B)、一次性可编程存储器(30C)和种子选择器(30D)组成;老化敏感物理不可克隆函数(30A)用于生成集成电路或IP核的临时指纹,作为集成电路或者IP核的唯一标识,集成电路或者IP核设计者根据临时指纹生成集成电路或者IP核测试所需要的测试密钥,来临时解锁所述混淆封装接口,进行测试;在经过使用或者老化之后,老化敏感物理不可克隆函数(30A)生成的临时指纹失效,变为与临时指纹大不相同的老化后指纹,原本基于临时指纹的测试密钥失效,不能用于解锁集成电路或者IP核;老化敏感物理不可克隆函数(30A)由振荡环阵列(50A)、指纹替换器(50B)和老化指示器(50C)构成;振荡环阵列(50A)包含2M个由反相器和与门构成的振荡环,振荡产生不同频率的方波,计数器用来统计不同振荡环在固定时间生成的上升沿数目;指纹替换器(50B)中包含M个比较器,比较器比较两个计数器的值,当左侧计数器的值较大时输出1否则输出0,在老化指示器(50C)输出的老化指示信号为0时,比较器生成的0,1序列就成为临时的指纹;在老化指示器(50C)输出的老化指示信号为1时,所有比较器的比较对象随机发生改变,重新输出比较后的结果,与原来的序列大不相同,即成为老化后的指纹;老化指示器(50C)由老化路径组(60A)、老化余量缓冲器(60B)、启动触发器及捕捉触发器构成;当老化路径组(60A)由老化敏感路径(60A1)和可调节的老化不敏感路径(60A2)构成,在初始状态即未老化时,可调节的老化不敏感路径(60A2)通过调节使得它的路径延时等于老化敏感路径(60A1)的路径延时,在老化之后,当老化敏感路径(60A1)和可调节的老化不敏感路径(60A2)的路径延时差大于老化余量缓冲器(60B)的延时时,老化指示信号就变为1,否则保持为0.解析器(30B)对老化敏感物理不可克隆函数(30A)生成的临时指纹进行处理,得到一个和临时指纹完全不一样的指纹,称之为永久指纹,这一指纹用于在集成电路或者IP核激活正常使用时配合激活密钥使用;解析器(30B)的功能只有集成电路或者IP核设计者知道;一次性可编程存储器(30C)用于存储解析器(30B)生成的永久指纹,永久指纹只有集成电路或者IP核设计者通过老化敏感物理不可克隆函数(30A)生成的临时指纹和解析器(30B)的功能计算得到,其他用户无法获得一次性可编程存储器(30C)中存储的数据;种子选择器(30D)用于在不同的测试模式下切换指纹生成器(20A)输出的数据,在集成电路或者IP核处于测试模式时,指纹生成器(20A)输出临时指纹给线性移位寄存器(20B)作为种子;在集成电路或者IP核处于激活模式时,指纹生成器(20A)输出永久指纹给线性移位寄存器(20B)作为种子;线性移位寄存器(20B)是一个β位的线性反馈移位寄存器构成的,该线性反馈移位寄存器由指纹生成器(20A)输出的临时/永久指纹作为种子,输出一个0、1构成的序列到内部密钥寄存器(20D)作为内部密钥;结果验证单元(20C)由非线性移位寄存器(40A)、检测结果选择器(40B)和卷积压缩器(40C)构成;卷积压缩器(40C)将扫描链集合(1E)输出的N位数据压缩为1位,输入到检测结果选择器(40B)中;检测结果选择器(40B)根据集成电路或IP核的测试模式选择输出的数据,在结构测试时输出压缩后的扫描链输出数据,在功能测试时输出的时功能测试相关的传感器的数据;非线性移位寄存器(40A)以一次性可编程存储器(30C)中的永久指纹为种子,输出一个0,1序列,这个序列与检测结果选择器(40B)的输出进行异或运算,以混淆测试结果数据,混淆后的数据输出到集成电路或者IP核之外;内部密钥寄存器(20D)是一个长度为λ的寄存器,存储线性移位寄存器(20B)生成的临时或者激活密内部钥;外部密钥寄存器(20E)是一个长度为λ的寄存器,存储外部输入的临时或者激活密钥;内部密钥和外部密钥解锁动态混淆封装接口(1A),使得集成电路或者IP核处于临时或者永久解锁的状态;动态混淆封装接口(1A)由功能单元输入封装接口(10A)、功能单元输出封装接口(10B)、扫描链输入封装接口(10C)、扫描链输出封装接口(10D)、有限状态机集合(10E)和混淆逻辑单元集合(10F)构成;功能单元输入封装接口(10A)和扫描链输入封装接口(10C)分别对集成电路或者IP核功能/扫描输入端口进行加密,在未解密时,外部数据无法正确的通过功能单元输入封装接口(10A)或扫描链输入封装接口(10C)输入到集成电路或者IP核内部;功能单元输出封装接口(10B)和扫描链输出封装接口(10D)分别对集成电路或者IP核功能/扫描输出端口进行加密,在未解密时,集成电路或者IP核内部的数据无法正确的通过功能单元输出封装接口(10B)或扫描链输出封装接口(10D)输出到集成电路或者IP核外部;有限状态机集合(10E)合包含M个有限状态机,即{10E1,10E2...10EM},这些有限状态机的功能被设计为:连续接收α个正确的输入后就会被解锁,使得输入数据直接通过有限状态机,否则输入数据就无法通过有限状态机;M个有限状态机被随机的插入到功能单元输入封装接口(10A)和集成电路或者IP核输入端口之间,用于增加攻击者破解所述混淆封装接口的难度;混淆逻辑单元集合(10F)包含P个组合逻辑单元,即{10F1,10F2...10FP},这些组合逻辑单元被随机的插入到集成电路或者IP核内部,用于混淆电路。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学,未经北京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201810581099.7/,转载请声明来源钻瓜专利网。