CN110602058B - 芯片激活装置、方法及计算机可读存储介质 - Google Patents
芯片激活装置、方法及计算机可读存储介质 Download PDFInfo
- Publication number
- CN110602058B CN110602058B CN201910776735.6A CN201910776735A CN110602058B CN 110602058 B CN110602058 B CN 110602058B CN 201910776735 A CN201910776735 A CN 201910776735A CN 110602058 B CN110602058 B CN 110602058B
- Authority
- CN
- China
- Prior art keywords
- key
- chip
- public key
- key pair
- pair
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
一种芯片激活方法,包括:将芯片激活端存储的主密钥对的公钥发送给芯片;控制芯片以主密钥对的公钥对随机密钥对的公钥进行加密,并将加密后的公钥发送给芯片激活端;控制芯片激活端利用主密钥对的私钥对加密后的公钥进行解密,得到随机密钥对的公钥;控制芯片激活端基于主密钥对的私钥及随机密钥对的公钥对芯片密钥进行签名与加密,得到密钥签名,并将密钥签名发送给芯片;控制芯片基于主密钥对的公钥及随机密钥对的私钥对密钥签名进行验证与解密,得到芯片密钥;及控制芯片利用所述芯片密钥执行激活流程。本发明还提供一种芯片激活装置及计算机可读存储介质。上述芯片激活装置、方法及计算机可读存储介质,可提高芯片激活过程中的安全性。
Description
技术领域
本发明涉及集成电路技术领域,尤其涉及一种芯片激活装置、方法及计算机可读存储介质。
背景技术
很多芯片设计商并不会建立产线来生产芯片,一般是委托代工方来进行芯片量产。芯片的混淆逻辑电路一般在非关键路径上增加关键门,关键门连接公共密钥寄存器,只有存入正确的芯片密钥,芯片才能被激活实现正常功能。现有芯片激活通道一般是由代工方为芯片和芯片设计商提供,芯片设计商通过激活通道将持有的芯片密钥传送至待激活芯片,以进行激活。当代工方不可信时,代工方可能会通过上述激活过程窃取芯片密钥,进而代工方可绕过芯片设计商不停的激活芯片,将给芯片设计商和芯片购买方造成损失。
发明内容
有鉴于此,有必要提供一种芯片激活装置、方法及计算机可读存储介质,其可提高芯片激活过程中的安全性。
本发明一实施方式提供一种芯片激活方法,用于对待激活芯片进行激活,所述方法包括:
将芯片激活端存储的主密钥对的公钥发送给所述待激活芯片;
控制所述待激活芯片以所述主密钥对的公钥对随机密钥对的公钥进行加密,其中所述随机密钥对由所述待激活芯片生成;
将加密后的所述随机密钥对的公钥发送给所述芯片激活端;
控制所述芯片激活端利用所述主密钥对的私钥对加密后的所述随机密钥对的公钥进行解密,得到所述随机密钥对的公钥;
控制所述芯片激活端基于所述主密钥对的私钥及所述随机密钥对的公钥对芯片密钥进行签名与加密,得到密钥签名,其中所述芯片密钥预先存储于所述芯片激活端;
将所述密钥签名发送给所述待激活芯片;
控制所述待激活芯片基于所述主密钥对的公钥及所述随机密钥对的私钥对所述密钥签名进行验证与解密,得到所述芯片密钥;及
控制所述待激活芯片利用所述芯片密钥执行激活流程。
优选地,所述随机密钥对由所述待激活芯片基于预设随机规则产生,所述随机密钥对被存储在一次性可编程内存中。
优选地,所述方法还包括:
利用所述代工方为所述芯片激活端与所述待激活芯片创建用于进行数据交互的网络通道;
其中,所述网络通道包含有所述代工方的数字签名、通道创建时间戳及所述待激活芯片的序列号。
优选地,所述基于所述主密钥对的私钥及所述随机密钥对的公钥对所述芯片密钥进行签名与加密,得到密钥签名的步骤包括:
基于所述主密钥对的私钥对所述芯片密钥进行签名;及
利用所述随机密钥对的公钥对签名后的芯片密钥进行加密,得到所述密钥签名。
优选地,所述基于所述主密钥对的私钥及所述随机密钥对的公钥对所述芯片密钥进行签名与加密,得到密钥签名的步骤包括:
基于所述随机密钥对的公钥对所述芯片密钥进行加密;及
利用所述主密钥对的私钥对加密后的芯片密钥进行签名,得到所述密钥签名。
优选地,所述方法还包括:
控制所述芯片激活端利用所述主密钥对的私钥对所述随机密钥对的公钥进行加密,得到加密公钥。
优选地,所述将所述密钥签名发送给所述待激活芯片的步骤包括:
将所述密钥签名及所述加密公钥发送给所述待激活芯片。
优选地,所述方法还包括:
控制所述待激活芯片利用所述主密钥对的公钥对所述加密公钥进行解密,并判断解密得到的公钥是否与所述随机密钥对的公钥相同;
若解密得到的公钥与所述随机密钥对的公钥相同,则对所述密钥签名执行解密与验证操作;及
若解密得到的公钥与所述随机密钥对的公钥不相同,则在一次性可编程内存中记录代工所述待激活芯片的代工方的作恶信息。
本发明一实施方式提供一种芯片激活装置,所述装置包括处理器及存储器,所述存储器上存储有若干计算机程序,所述处理器用于执行存储器中存储的计算机程序时实现上述芯片激活方法的步骤。
本发明一实施方式还提供一种计算机可读存储介质,所述计算机可读存储介质存储有多条指令,多条所述指令可被一个或者多个处理器执行,以实现上述的芯片激活方法的步骤。
与现有技术相比,上述芯片激活装置、方法及计算机可读存储介质,芯片在激活过程中使用芯片设计方的公钥对自身的公钥进行加密,进而使得代工方无法知道芯片所持有的公钥,可提高芯片激活的安全性。
附图说明
图1是本发明一实施方式的芯片激活***的架构示意图。
图2是本发明一实施方式的芯片激活装置的功能模块图。
图3是本发明一实施方式的芯片激活程序的功能模块图。
图4是本发明一实施方式的芯片激活方法的流程图。
主要元件符号说明
如下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
进一步需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
请参阅图1,为本发明芯片激活***较佳实施例的示意图。
所述芯片激活***1包括芯片激活端11、代工方12及多个芯片13a-13c(图1以三个芯片13a、13b、13c为例进行举例说明)。芯片13a-13c由芯片设计方进行研发设计,芯片激活端11可以使芯片设计方所拥有的服务器,代工方12接受芯片设计方的委托量产芯片13a-13c。每一芯片13a-13c在生产完成后,需要存入芯片设计方持有的芯片密钥,芯片13a-13c才能被激活使用。芯片13a-13c可以是同一型号的芯片,芯片设计方可以为一种型号的芯片设计一芯片密钥,所述芯片密钥可以预先存储在所述芯片激活端11上。在本发明的其他实施方式中,芯片13a-13c可以是具有不同的型号。
在一实施方式中,每一芯片13a-13c内部可包含有混淆逻辑电路(图未示),当存入正确的密钥后,芯片13a-13c可被激活使用。代工方12可以为芯片13a-13c和芯片激活端11提供用于进行数据交互的网络通道,以执行芯片激活流程。
请同时参阅图2,所述芯片激活装置100可以包括存储器10、处理器20以及存储在所述存储器10中并可在所述处理器20上运行的芯片激活程序30。所述处理器20执行所述芯片激活程序30时实现芯片激活方法实施例中的步骤,例如图4所示的步骤S400~S414。或者,所述处理器20执行所述芯片激活程序30时实现图3中各模块的功能,例如模块101~108。
所述芯片激活程序30可以被分割成一个或多个模块,所述一个或者多个模块被存储在所述存储器10中,并由所述处理器20执行,以完成本发明。所述一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,所述指令段用于描述所述芯片激活程序30在所述芯片激活装置100中的执行过程。例如,所述芯片激活程序30可以被分割成图3中的第一发送模块101、第一控制模块102、第二发送模块103、第二控制模块104、第三控制模块105、第三发送模块106、第四控制模块107及激活模块108。各模块具体功能参见下图3中各模块的功能。
本领域技术人员可以理解,所述示意图仅是芯片激活装置100的示例,并不构成对芯片激活装置100的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述芯片激活装置100还可以包括网络接入设备、总线等。
所称处理器20可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者所述处理器20也可以是任何常规的处理器等,所述处理器20可以利用各种接口和总线连接芯片激活装置100的各个部分。
所述存储器10可用于存储所述芯片激活程序30和/或模块,所述处理器20通过运行或执行存储在所述存储器10内的计算机程序和/或模块,以及调用存储在存储器10内的数据,实现所述芯片激活装置100的各种功能。所述存储器10可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart MediaCard,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
在一实施方式中,所述芯片激活装置100可以集成在所述芯片激活端11中。所述芯片激活装置100也可以部分集成在所述芯片激活端11中,部分集成在代工方12中,所述芯片激活装置100还可以独立于所述芯片激活端11及所述代工方12。
图3为本发明芯片激活程序较佳实施例的功能模块图。
参阅图3所示,芯片激活程序30可以包括第一发送模块101、第一控制模块102、第二发送模块103、第二控制模块104、第三控制模块105、第三发送模块106、第四控制模块107及激活模块108。在一实施方式中,上述模块可以为存储于所述存储器10中且可被所述处理器20调用执行的可程序化软件指令。可以理解的是,在其他实施方式中,上述模块也可为固化于所述处理器20中的程序指令或固件(firmware)。
可以理解的,每一芯片13a-13c的激活流程基本相同,以下以激活芯片13a为例进行举例说明。
所述第一发送模块101用于将所述芯片激活端11存储的主密钥对(MK-pub,MK-pri)的公钥MK-pub发送给所述芯片13a。
在一实施方式中,芯片设计方在芯片13a的开发设计阶段可以生成芯片密钥CK,主密钥对(MK-pub,MK-pri)可以在芯片开发设计阶段或者其他适当时间(优选为执行芯片激活流程时间前)生成,所述芯片设计方可以将所述芯片密钥CK与所述主密钥对(MK-pub,MK-pri)存储在所述芯片激活端11上。芯片密钥CK可用于激活芯片13a,主密钥对(MK-pub,MK-pri)可以在后续芯片激活端11与芯片13a进行数据交换时,对交互数据进行加密。MK-pub为主密钥对的公钥,MK-pri为主密钥对的私钥。
在一实施方式中,为了实现芯片激活端11与芯片13a的数据交互,芯片激活端11与芯片13a之间需建立有进行数据交互的网络通道。具体地,可以通过所述代工方12为所述芯片激活端11与所述芯片13a创建用于进行数据交互的网络通道,所述网络通道优选包含有所述代工方12的数字签名、该通道的创建时间戳及所述芯片13a的序列号等信息,进而可以通过校验该三项标签信息来确认网络通道确由代工方12发起,提高数据传输的安全性。当网络通道构建后,芯片激活端11与芯片13a之间可以进行数据交互。当所述芯片激活端11生成主密钥对(MK-pub,MK-pri)后,所述第一发送模块101可以将主密钥对(MK-pub,MK-pri)的公钥MK-pub发送给所述芯片13a。
可以理解的,芯片激活端11与芯片13a在进行数据交互前需要先验证网络通道的可靠性,比如验证代工方12的数字签名及芯片13a的序列号,当验证通过后,芯片激活端11与芯片13a可通过该网络通道进行数据交互,当验证不通过时,表明当前网络通道不可信,芯片激活端11与芯片13a不通过该网络通道进行数据交互。
所述第一控制模块102用于控制所述芯片13a以所述主密钥对(MK-pub,MK-pri)的公钥MK-pub对随机密钥对(RCK-pub,RCK-pri)的公钥RCK-pub进行加密。
在一实施方式中,随机密钥对(RCK-pub,RCK-pri)可由所述芯片13a生成。当所述芯片13a初次上电时,所述芯片13a将会自动产生随机密钥对(RCK-pub,RCK-pri)。所述芯片13a可以基于预设随机规则产生随机密钥对(RCK-pub,RCK-pri),所述随机密钥对(RCK-pub,RCK-pri)可被存储在芯片13a的一次性可编程内存(OTP ROM)中,比如可以是PROM或FPROM等一次性永久烧入。所述预设随机规则可以根据实际需求确定,可以是芯片13a中内置的随机程序。
在一实施方式中,当芯片13a接收到主密钥对(MK-pub,MK-pri)的公钥MK-pub时,所述第一控制模块102可以控制所述芯片13a以所述主密钥对(MK-pub,MK-pri)的公钥MK-pub对随机密钥对(RCK-pub,RCK-pri)的公钥RCK-pub进行加密,得到加密后的随机密钥对的公钥EncryptMK-pub(RCK-pub)。
所述第二发送模块103用于将加密后的随机密钥对的公钥EncryptMK-pub(RCK-pub)发送给所述芯片激活端11。
在一实施方式中,当所述芯片13a完成对随机密钥对(RCK-pub,RCK-pri)的公钥RCK-pub加密时,所述第二发送模块103可以将加密后的随机密钥对的公钥EncryptMK-pub(RCK-pub)发送给所述芯片激活端11。由于芯片13a使用了主密钥对(MK-pub,MK-pri)的公钥MK-pub对随机密钥对(RCK-pub,RCK-pri)的公钥RCK-pub进行加密,进而使得代工方12无法通过网络通道截取芯片13a所生成的随机密钥对(RCK-pub,RCK-pri)的公钥RCK-pub。
所述第二控制模块104用于控制所述芯片激活端11利用所述主密钥对(MK-pub,MK-pri)的私钥MK-pri对加密后的所述随机密钥对的公钥EncryptMK-pub(RCK-pub)进行解密,得到所述随机密钥对(RCK-pub,RCK-pri)的公钥RCK-pub。
在一实施方式中,由于芯片13a是以所述主密钥对(MK-pub,MK-pri)的公钥MK-pub对随机密钥对(RCK-pub,RCK-pri)的公钥RCK-pub进行加密,当芯片激活端11接收到加密后的随机密钥对的公钥EncryptMK-pub(RCK-pub)时,所述第二控制模块104可以控制所述芯片激活端11利用主密钥对(MK-pub,MK-pri)的私钥MK-pri对加密后的所述随机密钥对的公钥EncryptMK-pub(RCK-pub)进行解密,得到所述随机密钥对(RCK-pub,RCK-pri)的公钥RCK-pub。该解密方式可以表示为:DecryptMK-pri(EncryptMK-pub(RCK-pub))。
所述第三控制模块105用于控制所述芯片激活端11基于所述主密钥对(MK-pub,MK-pri)的私钥MK-pri及所述随机密钥对(RCK-pub,RCK-pri)的公钥RCK-pub对芯片密钥CK进行签名与加密,得到第一密钥签名IK1。
在一实施方式中,所述第三控制模块105可以控制所述芯片激活端11基于所述主密钥对(MK-pub,MK-pri)的私钥MK-pri对所述芯片密钥CK进行签名,再利用所述随机密钥对(RCK-pub,RCK-pri)的公钥RCK-pub对签名后的芯片密钥SignMK-pri(CK)进行加密,得到所述第一密钥签名IK1。此时,所述第一密钥签名IK1可以表示为:IK1=EncryptRCK-pub(SignMK-pri(CK))。
所述第三发送模块106用于将所述第一密钥签名IK1发送给芯片13a。
在一实施方式中,当所述第一密钥签名IK1被生成时,所述第三发送模块106可以将所述第一密钥签名IK1发送给芯片13a。
所述第四控制模块107用于控制所述芯片13a基于所述主密钥对(MK-pub,MK-pri)的公钥MK-pub及所述随机密钥对(RCK-pub,RCK-pri)的私钥RCK-pri对所述第一密钥签名IK1进行验证与解密,得到所述芯片密钥CK。
在一实施方式中,所述第四控制模块107可以控制所述芯片13a利用所述主密钥对(MK-pub,MK-pri)的公钥MK-pub验证第一密钥签名IK1,然后再通过所述随机密钥对(RCK-pub,RCK-pri)的私钥RCK-pri对验证后的第一密钥签名进行解密,得到芯片密钥CK。所述第四控制模块107对所述第一密钥签名IK1进行验证与解密可以表示为:CK=DecryptRCK-pri(VerifyMK-pub(IK1))。
在一实施方式中,所述第三控制模块105还可以控制所述芯片激活端11基于所述随机密钥对(RCK-pub,RCK-pri)的公钥RCK-pub对所述芯片密钥CK进行加密,再利用所述主密钥对(MK-pub,MK-pri)的私钥MK-pri对加密后的芯片密钥EncryptRCK-pub(CK))进行签名,得到所述第二密钥签名IK2。此时,所述第二密钥签名IK2可以表示为:IK2=SignMK-pri(EncryptRCK-pub(CK))。第二密钥签名IK2与第一密钥签名IK1的生成方式不同,改变了加密和签名的顺序,由于代工方12无法获取芯片激活端11所拥有的私钥MK-pri,因此无法知道芯片激活端11关于芯片密钥CK的签名。进而代工方12无法伪造芯片设计方关于芯片密钥CK的签名,使得代工方12无法绕过芯片设计方进行批量违规激活芯片。
所述第三控制模块105还用于控制所述芯片激活端11利用所述主密钥对(MK-pub,MK-pri)的私钥MK-pri对所述随机密钥对(RCK-pub,RCK-pri)的公钥RCK-pub进行加密,得到加密公钥EncryptMK-pri(RCK-pub)。所述第三发送模块106还用于将所述第二密钥签名IK2及所述加密公钥EncryptMK-pri(RCK-pub)发送给所述芯片13a。所述第四控制模块107还用于控制所述芯片13a利用所述主密钥对(MK-pub,MK-pri)的公钥MK-pub对所述加密公钥EncryptMK-pri(RCK-pub)进行解密,以检查芯片激活端11所得到的公钥RCK-pub是否正确。具体地,所述第四控制模块107可以判断解密得到的公钥是否与所述随机密钥对(RCK-pub,RCK-pri)的公钥RCK-pub相同,即确认DecryptMK-pub(EncryptMK-pri(RCK-pub))是否等于RCK-pub;若解密得到的公钥与所述随机密钥对(RCK-pub,RCK-pri)的公钥RCK-pub相同,认定代工方12可信,则所述第四控制模块107可以对所述第二密钥签名IK2执行解密与验证操作。所述第四控制模块107可以控制所述芯片13a利用所述随机密钥对(RCK-pub,RCK-pri)的私钥RCK-pri对第二密钥签名IK2进行解密,再利用所述主密钥对(MK-pub,MK-pri)的公钥MK-pub对解密后的第二密钥签名进行验证,得到芯片密钥CK。所述第四控制模块107对所述第二密钥签名IK2进行验证与解密可以表示为:CK=VerifyMK-pub(DecryptRCK-pri(IK2))。
若解密得到的公钥与所述随机密钥对(RCK-pub,RCK-pri)的公钥RCK-pub不相同,认定代工方12不可信,则第四控制模块107控制所述芯片13a在一次性可编程内存中记录代工方12的作恶信息。
可以理解的,即使代工方12作恶,将自身的公钥Man-pub以芯片激活端11所持有的公钥MK-pub进行加密冒充,那么芯片激活端11传回的加密公钥则是EncryptMK-pri(Man-pub),将会导致解密得到的公钥与随机密钥对(RCK-pub,RCK-pri)的公钥RCK-pub不相同,可以确认代工方12不可信,芯片13a将会在OTP ROM中记录不可擦除的代工方作恶信息,导致代工方信誉崩溃,代工方12违规成本高。即使代工方12通过芯片激活端11的公钥MK-pub解密DecryptMK-pub(EncryptMK-pri(RCK-pub))得到芯片13a的公钥RCK-pub,由于芯片激活过程不可逆,该信息无法利用继续进行作恶。并且,由于代工方12不知道芯片设计方所拥有的私钥MK-pri,代工方12无法将自身的公钥Man-pub以芯片设计方的私钥MK-pri进行签名来伪造发送给芯片13a。
所述激活模块108用于控制所述芯片13a利用所述芯片密钥CK执行激活流程。
在一实施方式中,当所述芯片13a得到芯片密钥CK后,所述激活模块108可以控制所述芯片13a利用所述芯片密钥CK执行激活流程,芯片13a被激活后,即可正常使用。
图4为本发明一实施方式中芯片激活方法的流程图。根据不同的需求,所述流程图中步骤的顺序可以改变,某些步骤可以省略。图4同样以激活芯片13a为例进行说明。
步骤S400,将所述芯片激活端11存储的主密钥对(MK-pub,MK-pri)的公钥MK-pub发送给所述芯片13a。
步骤S402,控制所述芯片13a以所述主密钥对(MK-pub,MK-pri)的公钥MK-pub对随机密钥对(RCK-pub,RCK-pri)的公钥RCK-pub进行加密。
步骤S404,将加密后的随机密钥对的公钥EncryptMK-pub(RCK-pub)发送给所述芯片激活端11。
步骤S406,控制所述芯片激活端11利用所述主密钥对(MK-pub,MK-pri)的私钥MK-pri对加密后的所述随机密钥对的公钥EncryptMK-pub(RCK-pub)进行解密,得到所述随机密钥对(RCK-pub,RCK-pri)的公钥RCK-pub。
步骤S408,控制所述芯片激活端11基于所述主密钥对(MK-pub,MK-pri)的私钥MK-pri及所述随机密钥对(RCK-pub,RCK-pri)的公钥RCK-pub对芯片密钥CK进行签名与加密,得到第一密钥签名IK1。
步骤S410,将所述第一密钥签名IK1发送给芯片13a。
步骤S412,控制所述芯片13a基于所述主密钥对(MK-pub,MK-pri)的公钥MK-pub及所述随机密钥对(RCK-pub,RCK-pri)的私钥RCK-pri对所述第一密钥签名IK1进行验证与解密,得到所述芯片密钥CK。
步骤S414,控制所述芯片13a利用所述芯片密钥CK执行激活流程。
上述芯片激活装置、方法及计算机可读存储介质,可以使得代工方无法绕过芯片设计方违规进行芯片激活,提高芯片激活的安全性,且一旦代工方进行作恶,可自动在芯片内留下不可擦除的作恶记录,影响代工方信誉,使得代工方作恶成本高,实现进一步降低代工方作恶的可能性。
对本领域的技术人员来说,可以根据本发明的发明方案和发明构思结合生产的实际需要做出其他相应的改变或调整,而这些改变和调整都应属于本发明所公开的范围。
Claims (8)
1.一种芯片激活方法,用于对待激活芯片进行激活,其特征在于,所述方法包括:
将芯片激活端存储的主密钥对的公钥发送给所述待激活芯片;
控制所述待激活芯片以所述主密钥对的公钥对随机密钥对的公钥进行加密,其中所述随机密钥对由所述待激活芯片生成;
将加密后的所述随机密钥对的公钥发送给所述芯片激活端;
控制所述芯片激活端利用所述主密钥对的私钥对加密后的所述随机密钥对的公钥进行解密,得到所述随机密钥对的公钥;
控制所述芯片激活端基于所述主密钥对的私钥及所述随机密钥对的公钥对芯片密钥进行签名与加密,得到密钥签名,其中所述芯片密钥预先存储于所述芯片激活端;
控制所述芯片激活端利用所述主密钥对的私钥对所述随机密钥对的公钥进行加密,得到加密公钥;
将所述密钥签名及所述加密公钥发送给所述待激活芯片;
控制所述待激活芯片利用所述主密钥对的公钥对所述加密公钥进行解密,并判断解密得到的公钥是否与所述随机密钥对的公钥相同;
若解密得到的公钥与所述随机密钥对的公钥相同,则控制所述待激活芯片基于所述主密钥对的公钥及所述随机密钥对的私钥对所述密钥签名进行验证与解密,得到所述芯片密钥;及
控制所述待激活芯片利用所述芯片密钥执行激活流程。
2.如权利要求1所述的方法,其特征在于,所述随机密钥对由所述待激活芯片基于预设随机规则产生,所述随机密钥对被存储在一次性可编程内存中。
3.如权利要求1所述的方法,其特征在于,所述待激活芯片由代工方生产,所述方法还包括:
利用所述代工方为所述芯片激活端与所述待激活芯片创建用于进行数据交互的网络通道;
其中,所述网络通道包含有所述代工方的数字签名、通道创建时间戳及所述待激活芯片的序列号。
4.如权利要求1所述的方法,其特征在于,所述基于所述主密钥对的私钥及所述随机密钥对的公钥对所述芯片密钥进行签名与加密,得到密钥签名的步骤包括:
基于所述主密钥对的私钥对所述芯片密钥进行签名;及
利用所述随机密钥对的公钥对签名后的芯片密钥进行加密,得到所述密钥签名。
5.如权利要求1所述的方法,其特征在于,所述基于所述主密钥对的私钥及所述随机密钥对的公钥对所述芯片密钥进行签名与加密,得到密钥签名的步骤包括:
基于所述随机密钥对的公钥对所述芯片密钥进行加密;及
利用所述主密钥对的私钥对加密后的芯片密钥进行签名,得到所述密钥签名。
6.如权利要求3所述的方法,其特征在于,所述方法还包括:
若解密得到的公钥与所述随机密钥对的公钥不相同,则在一次性可编程内存中记录所述代工方的作恶信息。
7.一种芯片激活装置,所述装置包括处理器及存储器,所述存储器上存储有若干计算机程序,其特征在于,所述处理器用于执行存储器中存储的计算机程序时实现如权利要求1-6任一项所述的芯片激活方法的步骤。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有多条指令,多条所述指令可被一个或者多个处理器执行,以实现如权利要求1-6任一项所述的芯片激活方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910776735.6A CN110602058B (zh) | 2019-08-22 | 2019-08-22 | 芯片激活装置、方法及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910776735.6A CN110602058B (zh) | 2019-08-22 | 2019-08-22 | 芯片激活装置、方法及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110602058A CN110602058A (zh) | 2019-12-20 |
CN110602058B true CN110602058B (zh) | 2020-10-30 |
Family
ID=68855061
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910776735.6A Active CN110602058B (zh) | 2019-08-22 | 2019-08-22 | 芯片激活装置、方法及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110602058B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101286842A (zh) * | 2008-05-26 | 2008-10-15 | 西安西电捷通无线网络通信有限公司 | 一种利用公钥密码技术的密钥分配及其公钥在线更新方法 |
CN102185691A (zh) * | 2011-03-31 | 2011-09-14 | 中山大学深圳研究院 | 基于数字家庭的综合业务卡信息加密方法 |
CN104980928A (zh) * | 2014-04-03 | 2015-10-14 | 华为终端有限公司 | 一种用于建立安全连接的方法、设备及*** |
US20160301532A1 (en) * | 2015-04-13 | 2016-10-13 | Infineon Technologies Ag | Device security |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101286840B (zh) * | 2008-05-29 | 2014-07-30 | 西安西电捷通无线网络通信股份有限公司 | 一种利用公钥密码技术的密钥分配方法及其*** |
CN102064944B (zh) * | 2010-11-30 | 2013-01-09 | 飞天诚信科技股份有限公司 | 一种安全发卡方法、发卡设备和*** |
-
2019
- 2019-08-22 CN CN201910776735.6A patent/CN110602058B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101286842A (zh) * | 2008-05-26 | 2008-10-15 | 西安西电捷通无线网络通信有限公司 | 一种利用公钥密码技术的密钥分配及其公钥在线更新方法 |
CN102185691A (zh) * | 2011-03-31 | 2011-09-14 | 中山大学深圳研究院 | 基于数字家庭的综合业务卡信息加密方法 |
CN104980928A (zh) * | 2014-04-03 | 2015-10-14 | 华为终端有限公司 | 一种用于建立安全连接的方法、设备及*** |
US20160301532A1 (en) * | 2015-04-13 | 2016-10-13 | Infineon Technologies Ag | Device security |
Also Published As
Publication number | Publication date |
---|---|
CN110602058A (zh) | 2019-12-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Simpson et al. | Offline hardware/software authentication for reconfigurable platforms | |
US9558330B2 (en) | Technologies for digital rights managment of 3D printable models | |
CN107770159B (zh) | 车辆事故数据记录方法及相关装置、可读存储介质 | |
EP2506488B1 (en) | Secure dynamic on-chip key programming | |
CN107004083B (zh) | 设备密钥保护 | |
EP2907067B1 (en) | Method and system for smart card chip personalization | |
CN112187544B (zh) | 固件升级方法、装置、计算机设备及存储介质 | |
EP3360070B1 (en) | Data processing device | |
US20130019105A1 (en) | Secure software and hardware association technique | |
US11023621B2 (en) | System and method for authenticating and IP licensing of hardware modules | |
JP2011508997A (ja) | デバイス上の機能を制御するためのシステムおよび方法 | |
US9678898B2 (en) | Chip verification | |
US9959403B2 (en) | Information processing system for mutual authentication between communication device and storage | |
CN112311718B (zh) | 检测硬件的方法、装置、设备及存储介质 | |
JP6387908B2 (ja) | 認証システム | |
CN111628863B (zh) | 一种数据签名的方法、装置、电子设备及存储介质 | |
CN114221762A (zh) | 一种私钥存储方法、读取方法、管理装置、设备及介质 | |
KR102551592B1 (ko) | 자동차의 주행거리 조작을 방지하는 방법 및 이를 사용한 주행거리기록장치 | |
CN110602058B (zh) | 芯片激活装置、方法及计算机可读存储介质 | |
KR101656092B1 (ko) | 비동기적인 인증을 갖는 보안 컴퓨팅 시스템 | |
JP2005215945A (ja) | 情報処理装置、ソフトウェアの実行を許可する記憶装置、および、ソフトウェア実行方法 | |
CN110210189B (zh) | 软件验证方法、软硬件绑定方法及其可编程器件 | |
CN108242997A (zh) | 安全通信的方法与设备 | |
WO2020088515A1 (zh) | Pos用户公钥安全认证方法、装置和终端设备 | |
CN114024702A (zh) | 信息安全保护的方法以及计算设备 |
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 |