CN112307438B - 一种扫描锁定电路、安全隔离装置、芯片及安全隔离方法 - Google Patents

一种扫描锁定电路、安全隔离装置、芯片及安全隔离方法 Download PDF

Info

Publication number
CN112307438B
CN112307438B CN202011083593.4A CN202011083593A CN112307438B CN 112307438 B CN112307438 B CN 112307438B CN 202011083593 A CN202011083593 A CN 202011083593A CN 112307438 B CN112307438 B CN 112307438B
Authority
CN
China
Prior art keywords
signal
input end
output
gate
key
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.)
Active
Application number
CN202011083593.4A
Other languages
English (en)
Other versions
CN112307438A (zh
Inventor
苏振宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202011083593.4A priority Critical patent/CN112307438B/zh
Publication of CN112307438A publication Critical patent/CN112307438A/zh
Application granted granted Critical
Publication of CN112307438B publication Critical patent/CN112307438B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting 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
    • G06F21/72Protecting 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 in cryptographic circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

Abstract

本发明提供了扫描锁定电路、安全隔离装置、芯片及安全隔离方法,电路包括若干逻辑处理链路,每一条逻辑处理链路均包括依次串联的输入异或门、测试扫描链和输出异或门,任一输入异或门的输入端均连接第一信号输入端、第二信号输入端、第三信号输入端,任一输出异或门的输入端均连接信号输出端、第二信号输入端、第三信号输入端;第二信号输入端、第三信号输入端分别连接一与门的输入端,与门的输出端分别与每一个输出异或门的输入端连接;第二信号输入端、第三信号输入端分别连接一与非门的输入端,所述与非门的输出端分别与每一个输出异或门的输入端连接。本发明在生产厂测试芯片前后实现IC功能的锁定和激活,从而有效保护开发者的知识产权。

Description

一种扫描锁定电路、安全隔离装置、芯片及安全隔离方法
技术领域
本发明涉及芯片设计技术领域,尤其是一种扫描锁定电路、安全隔离装置、芯片及安全隔离方法。
背景技术
在集成电路(IC)芯片的设计开发过程中,设计者将设计完成后的IP(知识产权)核等功能单元交付给生产厂,由生产厂生产晶圆和模具后进行测试,测试通过后进行芯片的装配和封装后最终投入到市场。
然而,一些不受信任的芯片生产厂可能会在公开市场上销售未经过测试、非法复制、假冒篡改的IC芯片,并且随着假冒技术复杂程度的提高,越来越难发现假冒的IC芯片。
因此有必要对芯片的生产加工过程进行安全控制,维护芯片开发者的自身权益。
发明内容
本发明提供了一种芯片测试的安全隔离装置、方法及芯片,用于解决现有芯片生产加工过程安全控制不完善的问题。
为实现上述目的,本发明采用下述技术方案:
本发明第一方面提供了一种扫描锁定电路,包括第一信号输入端、第二信号输入端、第三信号输入端、信号输出端、若干逻辑处理链路,每一条逻辑处理链路均包括依次串联的输入异或门、测试扫描链和输出异或门,任一输入异或门的输入端均连接第一信号输入端、第二信号输入端、第三信号输入端,任一输出异或门的输入端均连接信号输出端、第二信号输入端、第三信号输入端;所述第二信号输入端、第三信号输入端分别连接一与门的输入端,所述与门的输出端分别与每一个输出异或门的输入端连接;所述第二信号输入端、第三信号输入端分别连接一与非门的输入端,所述与非门的输出端分别与每一个输出异或门的输入端连接。
本发明第二方面提供了一种安全隔离装置,所述的装置包括上述的扫描锁定电路,以及功能锁定模块,用于实现对功能逻辑单元和IP核的锁定;一次性可编辑模块,用于生成并存储随机值,基于随机值生成第一密钥和第二密钥;测试解锁模块,用于生成并输出测试解锁信号至扫描锁定电路,以实现对测试功能的解锁;扫描锁定模块,用于生成并输出扫描锁定信号至扫描锁定电路,以实现对扫描功能的锁定;功能解锁模块,用于生成并输出功能解锁信号对功能逻辑单元和IP核进行解锁。
进一步的,所述的功能锁定模块包括:
功能逻辑锁定单元,用于利用锁定信号锁定写保护引脚,实现对功能逻辑单元的写保护;
IP核锁定单元,用于利用使能信号控制临时授权文件生效,实现对IP核的锁定。
进一步的,所述的一次性可编辑模块包括:
随机值生成单元,用于使用随机方式生成随机值;
公钥生成单元,用于基于加密算法生成第一公钥、第一私钥、第二公钥、第二私钥;
第一密钥生成单元,用于使用第一私钥和随机值加密生成第一密钥;
第二密钥生成单元,用于使用第二私钥和随机值加密生成第二密钥;
存储单元,用于存储随机值。
进一步的,所述的测试解锁模块包括:
第一明文生成单元,用于利用第一公钥解密第一密钥,恢复出第一明文;
测试解锁信号生成单元,用于在判断第一明文和随机值相同时,输出测试解锁信号至扫描锁定电路的第二信号输入端。
进一步的,所述的扫描锁定模块包括:
第二明文生成单元,用于利用第二公钥解密第二密钥,恢复出第二明文;
扫描锁定信号生成单元,用于在判断第二明文和随机值相同时,输出扫描锁定信号至扫描锁定电路的第三信号输入端。
进一步的,所述的功能解锁模块包括:
第三明文生成单元,用于利用第二公钥解密第二密钥,恢复出第三明文;
功能解锁信号生成单元,用于在判断第三明文和随机值相同时,输出功能解锁信号;
功能逻辑单元解锁单元,用于接收功能解锁信号,触发写保护引脚电平状态改变,解除功能逻辑单元的写保护状态;
IP核解锁单元,用于接收功能解锁信号,触发使能信号状态改变使临时授权文件失效,解除对IP核的锁定。
本发明第三方面提供了一种芯片,该芯片具有自身的功能模块或逻辑模块,在此基础之上,该芯片还包含上述的安全隔离装置。
本发明第四方面提供了一种安全隔离方法,所述方法包括以下步骤:
S1:芯片设计完成后,锁定芯片的IP核和功能逻辑单元;
S2:生成并存储随机值,基于随机值生成第一密钥和第二密钥;
S3:利用第一密钥解锁对芯片测试的权限,启动芯片测试;
S4:测试通过后,利用第二密钥锁定扫描电路并解锁芯片功能IP核和功能逻辑单元。
进一步的,所述步骤S1的具体实现方法为:
S11:设置功能锁定信号并发送至写保护引脚,控制写保护寄存器实现写保护功能;
S12:调整使能信号,控制临时授权文件生效以锁定IP核。
进一步的,所述步骤S2的具体实现方法为:
S21:生成并存储一个随机值到一次性可编辑区域;
S22:利用加密算法生成第一公钥、第一私钥、第二公钥、第二私钥;
S23:使用第一私钥和随机值加密生成第一密钥;
S24:使用第二私钥和随机值加密生成第二密钥。
进一步的,所述步骤S3的具体实现方法为:
S31:获取第一公钥和第一密钥,利用第一公钥解密第一密钥,恢复出第一明文;
S32:判断第一明文和随机值是否相同,若相同,进入S33;若不同,返回S31;
S33:输出测试解锁信号至扫描锁定电路的第二信号输入端,输入的测试向量经扫描链后输出值不变,扫描电路解锁;
S34:执行测试操作并上传测试结果。
进一步的,,步骤S33中,所述输入的测试向量经扫描链后输出值不变具体为:
测试输入向量和测试解锁信号经异或运算后,输出至扫描链;
测试解锁信号经第二输入端输入,第三输入端无输入,第二输入端和第三输入端信号不同,分别经过与门和与非门,输出至异或门的输入端,并与扫描链的输出端进行异或运算,得到输出结果与测试输入向量相同的组合逻辑,其中扫描链的输出作为异或门的第一输入,与门的输出作为异或门的第二输入,与非门的输出作为异或门的第三输入。
进一步的,所述步骤S4中,锁定扫描电路的具体实现方法为:
获取第二公钥和第二密钥,利用第二公钥解密第二密钥,恢复出第二明文;
在第二明文与芯片预存随机数相同时,输出扫描锁定信号至扫描锁定电路的第三信号输入端,此时输入的测试向量经扫描链后输出值翻转,扫描电路锁定。
进一步的,所述输入的测试向量经扫描链后输出值翻转具体为:
测试输入向量和扫描锁定信号经异或运算后,输出至扫描链;
扫描锁定信号经第三输入端输入,第二输入端保留测试解锁信号,第二输入端和第三输入端信号相同,分别经过与门和与非门,输出至异或门的输入端,并与扫描链的输出端进行异或运算,得到输出结果与测试输入向量相反的组合逻辑,其中扫描链的输出作为异或门的第一输入,与门的输出作为异或门的第二输入,与非门的输出作为异或门的第三输入。
进一步的,所述步骤S4中,解锁芯片功能IP核和功能逻辑单元的具体实现方法为:
利用第二公钥解密第二密钥,恢复出第三明文;
在判断第三明文和随机值相同时,输出功能解锁信号;
功能解锁信号触发写保护引脚电平状态改变,解除功能逻辑单元的写保护状态;
同时,功能解锁信号触发使能信号状态改变,使临时授权文件失效,解除对IP核的锁定。
进一步的,当临时授权文件失效后,通过加载正式授权文件激活IP核,使IP核处于可信状态。
发明内容中提供的效果仅仅是实施例的效果,而不是发明所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:
通过设计了一个可实现逻辑翻转的扫描锁定电路,结合输入和输出的不同定义了扫描功能开启和锁定的状态,使得生产厂的整个测试过程处于设计方的控制之下,保证了设计方知识产权的安全。
在扫描锁定电路的基础上,通过增加功能锁定模块来实现对功能逻辑单元和IP核的锁定,并配以一次性可编辑模块、测试解锁模块、扫描锁定模块、功能解锁模块等辅助模块,共同构建了安全隔离装置,整个安全隔离装置不仅能够实现测试阶段扫描功能管控,还能保证测试阶段中功能逻辑单元和IP核的锁定,通过该途径可以确保生产测试过程的安全,以防止假冒,从而有效保护开发者的知识产权,维护其合法权益,保证了出厂芯片的安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明扫描锁定电路的原理示意图;
图2是本发明安全隔离装置的结构原理示意图;
图3是本发明功能锁定模块的锁定原理示意图;
图4是本发明功能锁定模块的解锁原理示意图;
图5是本发明安全隔离方法的流程示意图。
具体实施方式
为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
本发明公开的扫描锁定电路,其功能结构从原理上包括第一信号输入端、第二信号输入端、第三信号输入端、信号输出端、若干逻辑处理链路,每一条逻辑处理链路均包括依次串联的输入异或门、测试扫描链和输出异或门,任一输入异或门的输入端均连接第一信号输入端、第二信号输入端、第三信号输入端,任一输出异或门的输入端均连接信号输出端、第二信号输入端、第三信号输入端;所述第二信号输入端、第三信号输入端分别连接一与门的输入端,所述与门的输出端分别与每一个输出异或门的输入端连接;所述第二信号输入端、第三信号输入端分别连接一与非门的输入端,所述与非门的输出端分别与每一个输出异或门的输入端连接。
基于上述功能原理,本发明实施例中给出了一种可具体应用的扫描锁定电路,该扫描锁定电路的具体结构命名和功能阐述如图1所示,具体包括:
1)测试输入信号(Test_In),作为第一信号输入,用来输入测试输入向量;
2)测试解锁信号(TKey_out),作为第二信号输入,该信号的生成逻辑为:通过接收芯片开发者发送的第一密钥(Test_Key),调用RSA模块对其进行解密,恢复出明文,通过比较模块(CMP)与预期结果进行比对,比对通过后发送TKey_out信号;
3)扫描锁定信号(FKey_out),作为第三信号输入,该信号的生成逻辑为:功能是接收芯片开发者发送的第二密钥(Function_Key),调用RSA模块对其进行解密,恢复出明文,通过比较模块(CMP)与预期结果进行比对,比对通过后发送;
4)扫描链输入控制逻辑(XOR_IN):由n个异或门(XOR)组成,XOR_IN的输入端连接Test_In和TKey_out、FKey_out信号,XOR_IN的输出端连接至测试扫描链的输入端;
5)扫描链输出控制逻辑(XOR_OUT):同样由n个异或门(XOR)组成,XOR_OUT的输入端连接至扫描链的输出以及AND、nAND门的输出,XOR_OUT的输出作为信号输出;
6)控制逻辑(AND,nAND):包括一个与门(AND)和一个与非门(nAND),AND的输入端连接至TKey_out、FKey_out,输出端连接至XOR_OUT;nAND的输入端连接至TKey_out、FKey_out,输出端连接至XOR_OUT。
上述扫描锁定电路的功能实现原理为:
在该扫描锁定电路中,由于受XOR_IN、XOR_OUT以及AND和nAND的逻辑控制,当TKey_out≠FKey_out时,测试向量的输入经过扫描链后输出值不变,即当测试向量输入为“1101”时,输出为“1101”,扫描电路工作正常;当TKey_out=FKey_out时,测试向量的输入经过扫描链后输出值会翻转,即当测试向量输入为“1101”时,输出为“0010”,扫描电路工作异常。
该扫描锁定电路的作用是在开发者完成芯片设计后,锁定芯片的设计功能,只提供第一密钥Test_Key给生产厂,生产厂验证Test_Key后进行芯片测试,此时由于没有第二密钥Function_Key,使得TKey_out≠FKey_out,扫描电路工作正常,生产厂能够正常进行芯片测试;当测试完成后,并且芯片开发者验证测试结果通过后,发送第二密钥Function_Key解锁芯片的设计功能,再加上Function_Key经过第二密钥解密模块(K_Mod2)后,输出值FKey_out=TKey_out,使扫描电路的输出翻转,锁定扫描电路,从而防止生产厂从未锁定的芯片中提取任何信息。
在上述扫描锁定电路的基础上,本发明实施例还提供了一种安全隔离装置,如图2所示,该安全隔离装置不仅包含上述的扫描锁定电路,还包括功能锁定模块、一次性可编辑模块、测试解锁模块、扫描锁定模块、功能解锁模块。
除扫描锁定电路以外,安全隔离装置中其它模块的功能为:
一次性可编辑模块(OTP)用于生成并存储随机值,基于随机值生成第一密钥和第二密钥,该模块包括:
随机值生成单元,用于使用随机方式为每个芯片生成一个随机值(Random)。
公钥生成单元,利用数字签名RSA算法生成第一公钥(Pub_Key1)、第一私钥(Pri_Key1)、第二公钥(Pub_Key2)、第二私钥(Pri_Key2)。
第一密钥生成单元,利用私钥Pri_Key1对Random进行数字签名,生成第一密钥Test_Key,即Test_Key=ENC(Random)Pri_Key1,ENC代表加密运算。由于在生成第一密钥Test_Key时加入了芯片开发者的数字签名,使得生产厂无法进行篡改,如果生产厂对Test_Key进行篡改,就不能生成正确的TKey_out信号,使得生产厂不能进行芯片测试过程。
第二密钥生成单元,利用私钥Pri_Key2对Random进行数字签名,生成第二密钥Function_Key,即Function_Key=ENC(Random)Pri_Key2,ENC代表加密运算。由于生成第二密钥Function_Key时也加入了数字签名,使得恶意人员无法进行篡改,如果对Function_Key篡改,就不能使Function_Lock信号变为低电平,无法解锁芯片的功能,确保了只有未锁定的芯片才能有正确的功能,只有芯片开发者发送正确的功能密钥后芯片才能正确的运行。
存储单元,用于存储随机值(Random),存储单元的存储区域为一次编程区域,写入数值后不能修改,可以防止恶意人员对其进行篡改;另外由于每个芯片的Random不一样,从而能够防止恶意人员通过克隆的手段对芯片进行假冒复制,防止过度生产。
功能锁定电路,如图3所示,用于实现对功能逻辑单元和IP核的锁定,其包含的具体实现单元为:
功能逻辑锁定单元,用于控制写保护寄存器实现写保护功能,主要实现逻辑为:通过将写保护引脚WP连接到锁定信号(Function_Lock),此时WP=‘1’,从而只能对功能逻辑实现读操作。
IP核锁定单元,用于利用使能信号控制临时授权文件生效,实现对IP核的锁定,主要实现逻辑为:利用使能信号EN=‘1’,从而控制临时授权文件(License临时文件)起作用。
测试解锁模块用于生成并输出测试解锁信号至扫描锁定电路,以实现对测试功能的解锁;所述的测试解锁模块包括:
第一明文生成单元,用于利用第一公钥(Pub_Key1)解密第一密钥,恢复出第一明文Random1。
测试解锁信号生成单元,用于在判断第一明文Random1和随机值Random相同时,输出测试解锁信号(TKey_out)至扫描锁定电路作为第二信号输入。
扫描锁定模块用于生成并输出扫描锁定信号至扫描锁定电路,以实现对扫描功能的锁定,所述的扫描锁定模块包括:
第二明文生成单元,用于利用第二公钥(Pub_Key2)解密第二密钥,恢复出第二明文Random2。
扫描锁定信号生成单元,用于在判断第二明文Random2和随机值Random相同时,输出扫描锁定信号(FKey_out)至扫描锁定电路作为第三信号输入。
功能解锁模块用于生成并输出功能解锁信号对功能逻辑单元和IP核进行解锁,所述的功能解锁模块包括:
第三明文生成单元,用于利用第二公钥解密第二密钥,恢复出第三明文Random3。
功能解锁信号生成单元,用于在判断第三明文Random3和随机值Random相同时,输出功能解锁信号,此时,功能解锁信号为扫描锁定电路的测试输出信号(Test_out)。
功能逻辑单元解锁单元,用于接收功能解锁信号,触发写保护引脚电平状态改变,解除功能逻辑单元的写保护状态,具体实现逻辑如图4所示:Random3=Random后使Function_Lock信号输出低电平,由于Function_Lock=‘0’,从而使功能逻辑的写保护引脚WP=‘0’,解锁功能逻辑模块的写保护状态。
IP核解锁单元,用于接收功能解锁信号,触发使能信号状态改变使临时授权文件失效,解除对IP核的锁定,具体实现逻辑如图4所示:Random3=Random后使Function_Lock信号输出低电平,当Function_Lock=‘0’时,触发使能信号EN=‘0’使License临时文件无效。
此外,由于上述的安全隔离装置可以应用于任何功能的芯片上,因此本发明实施例还提供了应用上述安全隔离装置的芯片,作为本申请的保护对象。
本发明实施例还提供了一种安全隔离方法,将上述安全隔离装置在芯片测试过程中的具体应用进行了详细阐述,如图5所示,所述的方法包括以下步骤:
本发明第四方面提供了一种安全隔离方法,所述方法包括以下步骤:
S1:芯片设计完成后,锁定芯片的IP核和功能逻辑单元。所述步骤S1的具体实现原理为:
锁定功能逻辑单元是通过写保护寄存器实现的,写保护引脚WP连接到Function_Lock信号,此时WP=‘1’,从而控制写保护寄存器实现写保护功能,只能对功能逻辑实现读操作,而无法对功能逻辑实现写操作,因此在芯片测试期间可以有效防止篡改。
对IP核的锁定:使能信号EN=‘1’,从而控制临时的授权文件(License临时文件)起作用,该文件仅用于芯片在测试期间工作,芯片测试完成后使临时License文件无效;即使在测试阶段对IP核进行了篡改,芯片通过测试后在正式投入市场之前,通过加载正式的License文件使IP核重新激活后恢复可信的状态,因此能够保证IP核的安全性。
S2:生成并存储随机值,基于随机值生成第一密钥和第二密钥。所述步骤S2的具体实现过程为:
首先:芯片开发者为芯片生成一个随机值Random,并写入一次性可编程模块(OTP)中,其中的一次性可编程模块(OTP),可以是芯片中的一次性可编辑区域,也可以是单独设置的具有一次性可编辑功能的存储单元。
其次,芯片开发者利用数字签名RSA算法生成2对公钥-私钥对(Pub_Key1,Pri_Key1)、(Pub_Key2,Pri_Key2),利用私钥Pri_Key1对Random进行数字签名,即加密运算,生成第一密钥Test_Key,Test_Key=ENC(Random)Pri_Key1,ENC代表加密运算;利用私钥Pri_Key2对Random进行数字签名,生成第二密钥Function_Key,Function_Key=ENC(Random)Pri_Key2,ENC代表加密运算。
S3:利用第一密钥解锁对芯片测试的权限,启动芯片测试。所述步骤S3的具体实现方法为:
开发者将第一密钥Test_Key和公钥Pub_Key1一起发送给生产厂,生产厂输入Test_Key和Pub_Key1后,扫描锁定电路中的解密模块K_Mod1利用Pub_Key1对Test_Key解密,恢复出随机值Random1,即Random1=DEC(Test_Key)Pub_Key1,DEC代表解密操作。K_Mod1的比较单元CMP比对Random1与Random,Random1=Random后输出TKey_out信号至扫描锁定电路作为第二信号输入,输入的测试向量经扫描链后输出值不变,扫描电路解锁,允许生产厂对芯片进行测试,测试结果发送给开发者确认。
其中,测试向量经扫描链后输出值不变的具体原理为:
测试输入向量和测试解锁信号经异或运算后,输出至扫描链;
测试解锁信号经第二输入端输入,第三输入端无输入,第二输入端和第三输入端信号不同,分别经过与门和与非门,输出至异或门的输入端,并与扫描链的输出端进行异或运算,得到输出结果与测试输入向量相同的组合逻辑,其中扫描链的输出作为异或门的第一输入,与门的输出作为异或门的第二输入,与非门的输出作为异或门的第三输入。
S4:测试验证结果符合预期后,芯片开发者发送第二密钥Function_Key和第二公钥Pub_Key2,扫描锁定电路中的解密模块K_Mod2利用Pub_Key2对Function_Key解密,恢复出随机值Random2;K_Mod2的比较单元CMP比对Random2与Random,当Random2=Random后输出FKey_out信号,由于FKey_out=TKey_out,使扫描电路的输出翻转,从而锁定扫描电路。
其中,测试向量经扫描链后输出值翻转的具体原理为:
测试输入向量和扫描锁定信号经异或运算后,输出至扫描链;
扫描锁定信号经第三输入端输入,第二输入端保留测试解锁信号,第二输入端和第三输入端信号相同,分别经过与门和与非门,输出至异或门的输入端,并与扫描链的输出端进行异或运算,得到输出结果与测试输入向量相反的组合逻辑,其中扫描链的输出作为异或门的第一输入,与门的输出作为异或门的第二输入,与非门的输出作为异或门的第三输入。
当芯片解锁投入市场后,由于扫描锁定电路中输出值FKey_out=TKey_out,使扫描电路的输出翻转,锁定扫描电路,从而能够防止恶意人员从未锁定的芯片中提取任何信息。
在进行上述步骤的同时,功能锁定模块中的解密模块K_Mod3也利用Pub_Key2对Function_Key解密,恢复出随机值Random3;K_Mod3的比较单元CMP比对Random3与Random,当Random3=Random后使Function_Lock信号输出低电平,解锁芯片的设计功能,具体如图4所示,由于Function_Lock=‘0’,从而使功能逻辑的写保护引脚WP=‘0’,解锁功能逻辑模块的写保护状态;同时触,EN=‘0’使License临时文件无效,开发者再使用License正式文件激活IP核。
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。

Claims (7)

1.一种扫描锁定电路,其特征是,包括第一信号输入端、第二信号输入端、第三信号输入端、信号输出端、若干逻辑处理链路,每一条逻辑处理链路均包括依次串联的输入异或门、测试扫描链和输出异或门,任一输入异或门的输入端均连接第一信号输入端、第二信号输入端、第三信号输入端,任一输出异或门的输入端均连接信号输出端、第二信号输入端、第三信号输入端;所述第二信号输入端、第三信号输入端分别连接一与门的输入端,所述与门的输出端分别与每一个输出异或门的输入端连接;所述第二信号输入端、第三信号输入端分别连接一与非门的输入端,所述与非门的输出端分别与每一个输出异或门的输入端连接;
第一信号输入端输入的第一信号为测试输入信号,第二信号输入端输入的第二信号为测试解锁信号,第三信号输入端输入的第三信号为扫描锁定信号,信号输出端为扫描锁定电路的输出端,用于输出测试输出信号。
2.一种安全隔离装置,其特征是,所述的装置包括如权利要求1所述的扫描锁定电路,以及
功能锁定模块,用于实现对功能逻辑单元和IP核的锁定;
一次性可编辑模块,用于生成并存储随机值,基于随机值生成第一密钥和第二密钥;
测试解锁模块,用于生成并输出测试解锁信号至扫描锁定电路,以实现对测试功能的解锁;
扫描锁定模块,用于生成并输出扫描锁定信号至扫描锁定电路,以实现对扫描功能的锁定;
功能解锁模块,用于生成并输出功能解锁信号对功能逻辑单元和IP核进行解锁;
所述的一次性可编辑模块包括:
随机值生成单元,用于使用随机方式生成随机值;
公钥生成单元,用于基于加密算法生成第一公钥、第一私钥、第二公钥、第二私钥;
第一密钥生成单元,用于使用第一私钥和随机值加密生成第一密钥;
第二密钥生成单元,用于使用第二私钥和随机值加密生成第二密钥;
存储单元,用于存储随机值;
所述的测试解锁模块包括:
第一明文生成单元,用于利用第一公钥解密第一密钥,恢复出第一明文;
测试解锁信号生成单元,用于在判断第一明文和随机值相同时,输出测试解锁信号至扫描锁定电路的第二信号输入端;
所述的扫描锁定模块包括:
第二明文生成单元,用于利用第二公钥解密第二密钥,恢复出第二明文;
扫描锁定信号生成单元,用于在判断第二明文和随机值相同时,输出扫描锁定信号至扫描锁定电路的第三信号输入端;
所述的功能解锁模块包括:
第三明文生成单元,用于利用第二公钥解密第二密钥,恢复出第三明文;
功能解锁信号生成单元,用于在判断第三明文和随机值相同时,输出功能解锁信号;
功能逻辑单元解锁单元,用于接收功能解锁信号,触发写保护引脚电平状态改变,解除功能逻辑单元的写保护状态;
IP核解锁单元,用于接收功能解锁信号,触发使能信号状态改变使临时授权文件失效,解除对IP核的锁定。
3.根据权利要求2所述的一种安全隔离装置,其特征是,所述的功能锁定模块包括:
功能逻辑锁定单元,用于利用锁定信号锁定写保护引脚,实现对功能逻辑单元的写保护;
IP核锁定单元,用于利用使能信号控制临时授权文件生效,实现对IP核的锁定。
4.一种芯片,其特征是,包含权利要求2-3任意一项所述的安全隔离装置。
5.一种安全隔离方法,其特征是,基于权利要求1所述的一种扫描锁定电路来实现,所述方法包括以下步骤:
S1:芯片设计完成后,锁定芯片的IP核和功能逻辑单元;
S2:生成并存储随机值,基于随机值生成第一密钥和第二密钥;
S3:利用第一密钥解锁对芯片测试的权限,启动芯片测试;
S4:测试通过后,利用第二密钥锁定扫描电路并解锁芯片功能IP核和功能逻辑单元;
所述步骤S2的具体实现方法为:
S21:生成并存储一个随机值到一次性可编辑区域;
S22:利用加密算法生成第一公钥、第一私钥、第二公钥、第二私钥;
S23:使用第一私钥和随机值加密生成第一密钥;
S24:使用第二私钥和随机值加密生成第二密钥;
所述步骤S3的具体实现方法为:
S31:获取第一公钥和第一密钥,利用第一公钥解密第一密钥,恢复出第一明文;
S32:判断第一明文和随机值是否相同,若相同,进入S33;若不同,返回S31;
S33:输出测试解锁信号至扫描锁定电路的第二信号输入端,输入的测试向量经扫描链后输出值不变,扫描电路解锁;
S34:执行测试操作并上传测试结果;
步骤S33中,所述输入的测试向量经扫描链后输出值不变具体为:
测试输入向量和测试解锁信号经异或运算后,输出至扫描链;
测试解锁信号经第二输入端输入,第三输入端无输入,第二输入端和第三输入端信号不同,分别经过与门和与非门,输出至异或门的输入端,并与扫描链的输出端进行异或运算,得到输出结果与测试输入向量相同的组合逻辑,其中扫描链的输出作为异或门的第一输入,与门的输出作为异或门的第二输入,与非门的输出作为异或门的第三输入;
所述步骤S4中,锁定扫描电路的具体实现方法为:
获取第二公钥和第二密钥,利用第二公钥解密第二密钥,恢复出第二明文;
在第二明文与芯片预存随机数相同时,输出扫描锁定信号至扫描锁定电路的第三信号输入端,此时输入的测试向量经扫描链后输出值翻转,扫描电路锁定;
所述输入的测试向量经扫描链后输出值翻转具体为:
测试输入向量和扫描锁定信号经异或运算后,输出至扫描链;
扫描锁定信号经第三输入端输入,第二输入端保留测试解锁信号,第二输入端和第三输入端信号相同,分别经过与门和与非门,输出至异或门的输入端,并与扫描链的输出端进行异或运算,得到输出结果与测试输入向量相反的组合逻辑,其中扫描链的输出作为异或门的第一输入,与门的输出作为异或门的第二输入,与非门的输出作为异或门的第三输入;
所述步骤S4中,解锁芯片功能IP核和功能逻辑单元的具体实现方法为:
利用第二公钥解密第二密钥,恢复出第三明文;
在判断第三明文和随机值相同时,输出功能解锁信号;
功能解锁信号触发写保护引脚电平状态改变,解除功能逻辑单元的写保护状态;
同时,功能解锁信号触发使能信号状态改变,使临时授权文件失效,解除对IP核的锁定。
6.根据权利要求5所述的一种安全隔离方法,其特征是,所述步骤S1的具体实现方法为:
S11:设置功能锁定信号并发送至写保护引脚,控制写保护寄存器实现写保护功能;
S12:调整使能信号,控制临时授权文件生效以锁定IP核。
7.根据权利要求5所述的一种安全隔离方法,其特征是,当临时授权文件失效后,通过加载正式授权文件激活IP核,使IP核处于可信状态。
CN202011083593.4A 2020-10-12 2020-10-12 一种扫描锁定电路、安全隔离装置、芯片及安全隔离方法 Active CN112307438B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011083593.4A CN112307438B (zh) 2020-10-12 2020-10-12 一种扫描锁定电路、安全隔离装置、芯片及安全隔离方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011083593.4A CN112307438B (zh) 2020-10-12 2020-10-12 一种扫描锁定电路、安全隔离装置、芯片及安全隔离方法

Publications (2)

Publication Number Publication Date
CN112307438A CN112307438A (zh) 2021-02-02
CN112307438B true CN112307438B (zh) 2022-06-17

Family

ID=74489809

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011083593.4A Active CN112307438B (zh) 2020-10-12 2020-10-12 一种扫描锁定电路、安全隔离装置、芯片及安全隔离方法

Country Status (1)

Country Link
CN (1) CN112307438B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106707139A (zh) * 2017-01-03 2017-05-24 大唐微电子技术有限公司 一种扫描链测试装置及实现方法
CN108896903A (zh) * 2018-06-13 2018-11-27 天津大学 基于逻辑加密的逐次验证型安全扫描链装置和方法
CN110456260A (zh) * 2019-07-01 2019-11-15 南京邮电大学 一种密钥隔离安全扫描链电路

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106707139A (zh) * 2017-01-03 2017-05-24 大唐微电子技术有限公司 一种扫描链测试装置及实现方法
CN108896903A (zh) * 2018-06-13 2018-11-27 天津大学 基于逻辑加密的逐次验证型安全扫描链装置和方法
CN110456260A (zh) * 2019-07-01 2019-11-15 南京邮电大学 一种密钥隔离安全扫描链电路

Also Published As

Publication number Publication date
CN112307438A (zh) 2021-02-02

Similar Documents

Publication Publication Date Title
Trimberger et al. FPGA security: Motivations, features, and applications
CN102301375B (zh) 用于市场返修的认证调试访问
US9887844B2 (en) Method for safeguarding a system-on-a-chip
ES2619635T3 (es) Método y sistema para personalización de chip de tarjeta inteligente
Hu Solving today’s design security concerns
US11416639B2 (en) PQA unlock
Cui et al. A new active IC metering technique based on locking scan cells
CN112307438B (zh) 一种扫描锁定电路、安全隔离装置、芯片及安全隔离方法
US11899827B2 (en) Establishing trust in untrusted IC testing and provisioning environment
US11574079B2 (en) Multi-stage provisioning of secret data
CN101799789A (zh) 芯片及其存储器数据保护装置与其保护方法
Mohammad et al. Required policies and properties of the security engine of an SoC
Peterson Developing tamper-resistant designs with ultrascale and ultrascale+ FPGAs
US20200401690A1 (en) Techniques for authenticating and sanitizing semiconductor devices
US11954201B2 (en) Framework for obfuscation based watermarking
TWI744892B (zh) 電子系統及電子系統的操作方法
CN102236754B (zh) 数据保密方法以及使用此数据保密方法的电子装置
Azar Infrastructure Supporting Logic Locking Check for updates
GB2605168A (en) An integrated circuit having a secure area
McNeil Solving today's design security concerns
Danger Overview of Protections against IC Counterfeiting and Hardware Trojan Horses
CN116185847A (zh) 一种支持芯片安全调试的控制方法
Threats Hardware Metering
Tehranipoor Hardware Metering
Feller et al. Design Security and Cyber-Physical Threats

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