CN104025500A - 使用在物理上不可克隆的函数的安全密钥存储 - Google Patents

使用在物理上不可克隆的函数的安全密钥存储 Download PDF

Info

Publication number
CN104025500A
CN104025500A CN201180076155.8A CN201180076155A CN104025500A CN 104025500 A CN104025500 A CN 104025500A CN 201180076155 A CN201180076155 A CN 201180076155A CN 104025500 A CN104025500 A CN 104025500A
Authority
CN
China
Prior art keywords
key
processor
logic
encryption
nonvolatile memory
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.)
Granted
Application number
CN201180076155.8A
Other languages
English (en)
Other versions
CN104025500B (zh
Inventor
李江滔
A·拉詹
R·麦斯
S·K·马修
R·K·克里西那莫西
E·布里克尔
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Priority to CN201710494807.9A priority Critical patent/CN107612685A/zh
Publication of CN104025500A publication Critical patent/CN104025500A/zh
Application granted granted Critical
Publication of CN104025500B publication Critical patent/CN104025500B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry

Abstract

此处所公开的某些实现提供了用于向集成电路/处理器提供密钥的技术和配置。处理器可以包括在物理上不可克隆的函数组件,该组件可以至少部分地基于处理器的至少一个物理特征来生成唯一硬件密钥。硬件密钥可以用于加密诸如秘密密钥之类的密钥。加密密钥可以存储在处理器的存储器中。可以验证加密密钥。可以通过可通信地隔离处理器的至少一个组件来保护密钥的完整性。

Description

使用在物理上不可克隆的函数的安全密钥存储
技术领域
本发明的一些实施例一般涉及处理器的制造。更具体而言,本发明的一些实施例涉及安全密钥管理以及向处理器提供密钥。
背景技术
在制造过程中,向集成电路或处理器提供密钥并将它们存储在集成电路或处理器中。密钥可以存储在集成电路或处理器的熔丝中,并可以根据集成电路或处理器的类型是唯一的。可以将密钥馈送给各种安全引擎或协处理器并由它们消费。
通常,密钥可以被分类为类别1或类别2密钥。类别1密钥包括与诸如密钥生成器之类的至少一个实体共享的随机秘密密钥。在集成电路或处理器的制造过程中,类别1密钥可以是由集成电路或处理器自动生成的,存储在其中,并揭示给至少一个其他实体,或者,类别1密钥可以由密钥生成实体从外部生成,并存储在集成电路或处理器中。类别1密钥的非限制性示例包括提供密钥、客户密钥以及条件访问密钥。类别2密钥包括从对集成电路或处理器来说是未知的但是对诸如密钥生成实体之类的至少一个实体已知的主秘密导出的秘密密钥。与类别1密钥不同,类别2密钥不能自动生成。类别2密钥是由密钥生成实体生成的,并在制造过程中存储在集成电路或处理器中。类别2密钥的非限制性示例包括高带宽数字内容保护(HDCP)密钥、增强型隐私标识符(EPID)密钥以及高级访问内容系统(AACS)密钥。
密钥可以存储在具有特殊类型的安全熔丝的非易失性存储器中。安全熔丝可以具有若干个安全措施,使它们比常规熔丝不太易受物理攻击的影响。然而,这些安全措施使安全熔丝就管芯区域而言比诸如通用高密度熔丝之类的常规熔丝更加昂贵。
附图简述
参考附图阐述具体实施方式。在附图中,附图标记中最左边的数字标识该附图标记首次出现的附图。在不同附图中使用同一附图标记指示相似或相同的项或特征。
图1示出了根据某些实现的用于向处理器提供密钥的示例性密钥提供和测试环境。
图2示出了根据某些实现的用于向处理器提供密钥的另一示例性密钥提供环境。
图3示出了根据某些实现的包括给处理器提供密钥的示例性过程的流程图。
图4示出了根据某些实现的用于向处理器提供密钥的另一示例性密钥提供环境。
图5示出了根据某些实现的包括给处理器提供密钥的另一示例性过程的流程图。
图6示出了根据某些实现的包括生成验证符的示例性过程的流程图。
图7示出了根据某些实现的包括生成验证符的另一示例性过程的流程图。
图8示出了根据某些实现的具有安全密钥管理器组件的处理器的示例性架构。
图9示出了根据某些实现的具有安全密钥管理器组件的处理器的另一示例性架构。
图10是被提供了密钥的系统的说明性架构的框图。
具体实施方式
密钥提供和测试总览
图1示出了用于向处理器提供密钥的示例性密钥提供和测试环境100。密钥提供和测试环境100可以包括密钥生成器102、密钥提供器/测试器104以及处理器106。密钥生成器102可以生成密钥(K1)108。密钥(K1)108可以是共享的密钥类型密钥(例如,类别1密钥和/或类别2密钥)。
密钥提供器/测试器104从密钥生成器102接收密钥(K1)108。密钥提供器/测试器104给处理器106提供密钥(K2)110。在某些情况下,密钥(K2)110可以与密钥(K1)108相同。在其他情况下,密钥(K2)110可以与密钥(K1)108不同,但是对应于密钥(K1)108。例如,密钥提供器/测试器104可以加密密钥(K1)108以生成密钥(K2)110。
处理器106可以包括安全密钥管理器组件112和处理器核114。安全密钥管理器组件112可以给处理器核114提供密钥116,其中,密钥116可以在数字上和/或功能上与密钥(K1)108相同。
外部密钥加密
图2示出了用于向处理器提供密钥的示例性密钥提供环境200。
处理器106的安全密钥管理器组件112可以包括非易失性存储器202、密钥密码组件204以及在物理上不可克隆的函数(PUF)组件206。非易失性存储器202可以包括可编程序只读存储器(PROM)、场可编程序只读存储器(FPROM)和/或一次性的可编程非易失性存储器(OTP NVM)。非易失性存储器202可以包括CMOS(互补型金属氧化物半导体)制造的单元的金属熔丝和/或反熔丝,且该熔丝(和/或反熔丝)可以有选择地烧断或损坏以编程非易失性存储器202。
密钥密码组件204可以是解密组件,并可以是只硬件组件。例如,密钥密码组件204可以是用于提供密码函数的固定逻辑电路,并可以包括专用电路、逻辑单元、微代码等等中的一个或多个。密钥密码组件204可以使用对称密钥算法,诸如,但不仅限于,Twofish、Serpent、高级加密标准(AES)、Blowfish、CAST5、CAST-128、RC4、数据加密标准(DES)、Triple DES(3DES),以及国际数据加密算法(IDEA)。
PUF组件206可以是基于处理器106的一个或多个物理特征生成唯一硬件密钥(KH)208的只硬件组件。例如,PUF组件206可以是固定逻辑电路,并可以包括专用电路、逻辑单元、微代码等等中的一个或多个。处理器106的一个或多个物理特征可以归因于制造变化,这些制造变化可能是无法控制的,可能是处理器106的集成电路制造的结果。例如,是相同的设计的集成电路可能由于制造参数(诸如掺杂剂浓度和线宽度)的变化而具有时间差异。PUF组件206可以测量处理器106的各种组件的时间响应,并可以至少基于测量到的时间响应,生成硬件密钥(KH)208。PUF组件206可以给密钥提供器/测试器104和密钥密码组件204提供硬件密钥(KH)208。
密钥提供器/测试器104从密钥生成器102接收密钥(K1)108,并从处理器106接收硬件密钥(KH)208。密钥提供器/测试器104可以包括存储器设备210和密码设备212。密钥(K1)108和硬件密钥(KH)208可以至少临时存储在存储器设备210中。密码设备212可以包括加密模块和解密模块。密码设备212可以使用对称密钥算法,诸如,但不仅限于,Twofish、Serpent、高级加密标准(AES)、Blowfish、CAST5、CAST-128、RC4、数据加密标准(DES)、Triple DES(3DES),以及国际数据加密算法(IDEA)。
密码设备212可以利用硬件密钥(KH)208加密密钥(K1)108,以生成加密密钥(E[K1])214。密钥提供器/测试器104可以提供加密密钥(E[K1])214和将加密密钥(E[K1])214存储到非易失性存储器202中的控制信号216。
在加密密钥(E[K1])214存储在非易失性存储器202中之后,密钥提供器/测试器104可以读取非易失性存储器202以检索存储的加密密钥(E[K1])214。密码设备212可以利用硬件密钥(KH)208解密从非易失性存储器202中检索到的加密密钥(E[K1])214,以恢复密钥(K1)108。密钥提供器/测试器104可以将恢复的密钥(K1)108与从存储器设备210检索到的密钥(K1)108的副本进行比较。至少基于比较,密钥提供器/测试器104可以验证处理器106。如果恢复的密钥(K1)108和从存储器设备210检索到的密钥(K1)108的副本不相同,则密钥提供器/测试器104可以不能验证处理器106。
安全密钥管理器组件112保护密钥(K1)108的完整性。安全密钥管理器组件112可以通过不保留密钥(K1)108的副本来保护密钥(K1)108的完整性。如此,对安全密钥管理器组件112的读取密钥(K1)108的物理攻击将失败。另外,安全密钥管理器组件112还可以通过不保留硬件密钥(KH)208的副本来保护密钥(K1)108的完整性。如此,攻击者不能从安全密钥管理器组件112读取硬件密钥(KH)208,因此,不能访问硬件密钥(KH)208,以加密密钥(E[K1])214进行解密。对处理器106的物理攻击可能会导致处理器106的物理特征的变化。在某些实施例中,处理器106的物理特征的变化可能会导致PUF组件206不再生成可用于对加密密钥(E[K1])214进行解密的硬件密钥(KH)208的有效副本。相反,PUF组件206可以,由于处理器106的物理变化的结果,生成不能用于对加密密钥(E[K1])214进行解密的硬件密钥(KH)208的不同的版本。
在对处理器106的验证和/或最后测试过程中,密钥提供器/测试器104可以将安全密钥管理器组件112与处理器106外部的设备/实体隔离,不通信。密钥提供器/测试器104可以烧断处理器106的熔丝和/或反熔丝,和/或设置在通信方面将安全密钥管理器组件112与外部设备/实体隔离的内部标志/比特。在某些实施例中,安全密钥管理器组件112可以只与处理器核114进行通信。
在图3、5、6和7的流程图中,每一个方框都可以表示可以以硬件、固件、软件或其组合来实现的一个或多个操作。然而,在某些实施例中,某些框可以表示可以只以硬件实现的一个或多个操作,在又一些其他实施例中,某些框可以表示可以只以硬件或固件实现的一个或多个操作。在硬件的上下文中,框可以表示可由安全密钥管理器组件112执行以执行列举的操作的基于硬件的逻辑。在软件或固件的上下文中,框可以表示计算机可执行指令,当由处理器执行时,导致处理器执行列举的操作。一般而言,计算机可执行指令包括执行特定功能或实现特定抽象数据类型的例程、程序、对象、模块、组件、数据结构等等。描述框图的次序并不旨在被解释为限制,并且任意数量的所描述的操作可以按任何次序组合和/或并行地执行以实现过程。出于讨论的目的,图3、5、6和7的过程300、500、600和700分别将参考如上文所描述的密钥提供环境200,以及如下面所描述的400中的一个或多个来描述,虽然也可以使用其他模型、系统和环境来实现这些过程。
图3示出了包括给处理器106提供密钥(K1)108的示例性过程300的流程图。过程400可以由密钥提供器/测试器104和安全密钥管理器组件112来执行。
在302,密钥提供器/测试器104可以从密钥生成器102接收密钥(K1)108。在某些实施例中,密钥提供器/测试器104可以至少临时将接收到的密钥(K1)108存储在存储器设备210中。在成功地验证处理器106或成功地验证若干个处理器106之后,例如,在处理器106的产品运行之后,密钥提供器/测试器104可以从存储器设备206中删除密钥(K1)108。
在304,密钥提供器/测试器104可以通过控制信号216来质询PUF组件206。
在306,PUF组件206可以响应于来自密钥提供器/测试器104的质询,生成硬件密钥(KH)208。
在308,密钥提供器/测试器104可以从处理器106检索硬件密钥(KH)208。在某些实施例中,密钥提供器/测试器104可以从安全密钥管理器组件112读取硬件密钥(KH)208,在其他实施例中,密钥提供器/测试器104可以从非易失性存储器202中读取硬件密钥(KH)208。在某些实施例中,密钥提供器/测试器104可以至少临时将读取的硬件密钥(KH)208存储在存储器设备210中。在成功地验证处理器106之后,密钥提供器/测试器104可以从存储器设备206删除硬件密钥(KH)208,以便没有其他实体可以获取硬件密钥(KH)208。
在310,密钥提供器/测试器104可以利用硬件密钥(KH)208来加密密钥(K1)108。利用硬件密钥(KH)208加密密钥(K1)108可以生成加密密钥(E[K1])214。
在312,密钥提供器/测试器104可以向处理器106提供加密密钥(E[K1])214。在某些实施例中,密钥提供器/测试器104可以向非易失性存储器202写入加密密钥(E[K1])214。在某些实施例中,密钥提供器/测试器104可以通过控制信号216向非易失性存储器202编程加密密钥(E[K1])214。在某些实施例中,密钥提供器/测试器104可以通过控制信号216,烧断非易失性存储器202的熔丝(或反熔丝),以将加密密钥(E[K1])214存储、写入或编程到非易失性存储器202中。
在314,密钥提供器/测试器104可以从处理器106检索加密密钥(E[K1])214。在某些实施例中,密钥提供器/测试器104可以通过借由控制信号216发信号通知处理器106来从处理器106检索加密密钥(E[K1])214,且处理器106可以向密钥提供器/测试器104提供加密密钥(E[K1])214。在某些实施例中,密钥提供器/测试器104可以通过控制信号216发信号通知安全密钥管理器组件112,且安全密钥管理器组件112可以向密钥提供器/测试器104提供加密密钥(E[K1])214。在某些实施例中,密钥提供器/测试器104可以从非易失性存储器202读取加密密钥(E[K1])214。
在316,密钥提供器/测试器104可以验证加密密钥(E[K1])214。密钥提供器/测试器104可以利用硬件密钥(KH)208来解密检索到的加密密钥(E[K1])214。在某些实施例中,密钥提供器/测试器104可以从存储器设备210中检索硬件密钥(KH)208。在其他实施例中,密钥提供器/测试器104可以从处理器106检索硬件密钥(KH)208。在某些实施例中,密钥提供器/测试器104可以从非易失性存储器202中读取硬件密钥(KH)208。对加密密钥(E[K1])的解密恢复密钥(K1)108。密钥提供器/测试器104可以将恢复的密钥(K1)108与密钥(K1)108的已知有效版本进行比较。密钥(K1)108的已知有效版本可以是从存储器设备210检索到的副本或从密钥生成器102接收到的副本。如果密钥(K1)108的已知有效版本和恢复的密钥(K1)108相同,则密钥提供器/测试器104可以验证加密密钥(E[K1])214。
在318,密钥提供器/测试器104可以保护安全密钥管理器组件112的完整性。密钥提供器/测试器104可以提供将安全密钥管理器组件112与处理器106外部的源/设备隔离的控制信号216。例如,密钥提供器/测试器104可以发信号通知处理器106的组件防止从外部访问安全密钥管理器组件112。密钥提供器/测试器104可以烧断处理器106的熔丝,或反熔丝,以防止从外部访问安全密钥管理器组件112。在某些实施例中,密钥提供器/测试器104可以防止从外部访问PUF组件206,而同时允许从外部访问安全密钥管理器组件112的至少一个其他组件。
在某些实施例中,硬件密钥(KH)208不被写入到处理器106的非易失性存储器202或其他存储器中。每当密码组件204需要密钥硬件密钥(KH)208时,PUF组件206都可以生成硬件密钥(KH)208。即使安全密钥管理器组件112的其他组件是可从外部被访问的,密钥提供器/测试器104也可以通过防止从外部访问PUF组件206,保护安全密钥管理器组件112的完整性。由于硬件密钥(KH)208不被写入到处理器106的非易失性存储器202或其他存储器中,在密钥提供器/测试器104保护安全密钥管理器组件112的完整性之后,从处理器106读取硬件密钥(KH)208的尝试将不会成功。
在320,密钥提供器/测试器104可以完成对处理器106的测试。在处理器106通过密钥提供器/测试器104的测试,密钥提供器/测试器104可以验证处理器106。
内部密钥加密
图4示出了用于向处理器提供密钥的示例性密钥提供环境400。在此实施例中,硬件密钥(KH)208的安全性可以通过不向密钥提供器/测试器104或处理器106外部的任何实体、组件或设备提供硬件密钥(KH)208来进一步增强。处理器106可以被制造为,使得硬件密钥(KH)208不从处理器106的外面分发,也不从处理器106的外面可被访问。
处理器106的安全密钥管理器组件112可以包括非易失性存储器202、密钥密码组件204、在物理上不可克隆的函数(PUF)组件206以及内嵌自测试器(BIST)组件402。
密钥密码组件204可以是加密与解密组件,并可以是只硬件组件。密钥密码组件204可以使用对称密钥算法,诸如,但不仅限于,Twofish、Serpent、高级加密标准(AES)、Blowfish、CAST5、CAST-128、RC4、数据加密标准(DES)、Triple DES(3DES),以及国际数据加密算法(IDEA)。
PUF组件206可以是基于处理器106的一个或多个物理特征来生成唯一硬件密钥(KH)208的物理组件。PUF组件206可以给密钥密码组件204提供硬件密钥(KH)208。PUF组件206可以与诸如密钥提供器/测试器104之类的外部设备/实体隔离。PUF组件206与外部设备/实体的隔离可以防止硬件密钥(KH)208被从处理器106的外面分发,或可被访问。
BIST组件402可以检查加密密钥(E[K1])214的有效性,并可以给密钥提供器/测试器104提供验证符404。BIST组件402可以是用于执行此处所讨论的至少某些操作的固定逻辑电路,并可以包括专用电路、逻辑单元、微代码等等中的一个或多个。验证符404可以提供加密密钥(E[K1])214是否有效的指示。例如,验证符404可以包括指出加密密钥(E[K1])214是否有效(例如,1=有效,0=无效)的标志(例如,1/0)。作为另一个示例,验证符404可以包括诸如密文之类的内容,从该密文,密钥提供器/测试器104可以判断加密密钥(E[K1])214是否有效。
密钥提供器/测试器104从密钥生成器102接收密钥(K1)108。在某些实施例中,密钥提供器/测试器104可以至少临时将密钥(K1)108存储在存储器设备210中。密钥提供器/测试器104可以向处理器106提供密钥(K1)108和将加密密钥(E[K1])214存储到非易失性存储器202中的控制信号216。在某些实施例中,密钥提供器/测试器104可以向密钥密码组件204提供密钥(K1)108,并可以向BIST组件402提供密钥(K1)108。
控制信号216可以指示处理器106生成加密密钥(E[K1])214,并将加密密钥(E[K1])214存储到非易失性存储器202中。控制信号216可以导致PUF组件206生成硬件密钥(KH)208。密钥密码组件204接收密钥(K1)108和硬件密钥(KH)208。密钥密码组件204可以使用对称密码算法,利用硬件密钥(KH)208来加密密钥(K1)108,由此,生成加密密钥(E[K1])214。加密密钥(E[K1])214存储在非易失性存储器202中。
控制信号216可以指示处理器106验证加密密钥(E[K1])214。可以从非易失性存储器202中检索存储的加密密钥(E[K1])214,并提供给密钥密码组件204。密钥密码组件204可以利用硬件密钥(KH)208来对加密密钥(E[K1])214进行解密,由此,揭示密钥(K1)108的声称的副本。BIST组件402可以接收验证指示符(V/I)406和密钥(K1)108。
在某些实施例中,验证指示符406可以是据称与密钥(K1)108相同的密钥。BIST组件402可以将密钥108与验证指示符406进行比较。如果验证指示符406和密钥(K1)108相同,则BIST组件402可以验证加密密钥(E[K1])214。BIST组件402可以生成指出加密密钥(E[K1])214是否有效的验证符404,并可以将验证符404提供到密钥提供器/测试器104。
在某些实施例中,验证指示符406可以是由密钥密码组件204所生成的密文。密钥密码组件204可以利用密钥(K1)108的已揭示的声称的副本,加密由密钥提供器/测试器104已知的数据,由此生成密文。BIST组件402可以将密文的至少一部分包括在验证符404中。密钥提供器/测试器104的密码设备212可以利用密钥(K1)108来加密已知数据,由此,生成参考密文。密钥提供器/测试器104可以将参考密文的至少一部分与验证符404进行比较,并判断加密密钥(E[K1])214是否有效。
在某些实施例中,验证指示符406可以是由密钥密码组件204所生成的数据/文本。密钥密码组件204可以利用密钥(K1)108的已揭示的声称的副本,解密由密钥提供器/测试器104已知的数据,由此生成数据/文本。BIST组件402可以将数据/文本的至少一部分包括在验证符404中。密钥提供器/测试器104的密码设备212可以将验证符404中所包括的数据/文本的至少一部分与已知参考数据/文本进行比较,并判断加密密钥(E[K1])214是否有效。
在某些实施例中,验证指示符406可以是散列值。密钥密码组件204可以对密钥(K1)108的已揭示的声称的副本,执行由密钥提供器/测试器104已知的散列函数,由此生成可识别的内容。BIST组件402可以将散列值的至少一部分包括在验证符404中。密钥提供器/测试器104的密码设备212通过对密钥(K1)108执行相同散列函数并将参考散列值与验证符406中的散列值进行比较来生成参考散列值。
图5示出了包括给处理器106提供密钥(K1)108的示例性过程500的流程图。过程500可以由密钥提供器/测试器104和安全密钥管理器组件112来执行。
在502,密钥提供器/测试器104可以从密钥生成器102接收密钥(K1)108。在某些实施例中,密钥提供器/测试器104可以至少临时将接收到的密钥(K1)108存储在存储器设备210中。在其他实施例中,接收到的密钥(K1)108不被存储在存储器设备210中。
在504,密钥提供器/测试器104可以通过控制信号216来质询PUF组件206。
在506,PUF组件206可以响应于来自密钥提供器/测试器104的质询,生成硬件密钥(KH)208。
在508,密钥提供器/测试器104可以向处理器106提供密钥(K1)108。在某些实施例中,密钥提供器/测试器104可以向安全密钥管理器组件112提供密钥(K1)108,在其他实施例中,密钥提供器/测试器104可以向密钥密码组件204提供密钥(K1)108。
在510,密钥密码组件204可以利用硬件密钥(KH)208来加密密钥(K1)108。利用硬件密钥(KH)208加密密钥(K1)108生成加密密钥(E[K1])214。
在512,加密密钥(E[K1])214可以存储在非易失性存储器202中。密钥提供器/测试器104可以提供允许加密密钥(E[K1])214被写入或被编程到非易失性存储器202中的控制信号216。控制信号216可以允许非易失性存储器202的熔丝(或反熔丝)被烧断。
在514,BIST组件402生成验证符404。
在516,可以将验证符404提供到密钥提供器/测试器104。在某些实施例中,密钥提供器/测试器104可以从BIST组件402中读取验证符404。在其他实施例中,处理器106可以将验证符404传输到密钥提供器/测试器104。
在518,密钥提供器/测试器104可以至少部分地基于验证符404,来验证加密密钥(E[K1])214。在某些实施例中,验证符404可以包括指出加密密钥(E[K1])214是否有效(例如,1=有效,0=无效)的标志(例如,1/0)。在其他实施例中,验证符404可以包括密钥提供器/测试器104可识别的可识别内容,且密钥提供器/测试器104可以至少部分地基于可识别的内容,验证加密密钥(E[K1])214。例如,可识别的内容可以是密钥提供器/测试器104可以利用密钥(K1)108解密的密文,或可以是密钥提供器/测试器104可以与参考数据/文本进行比较的数据/文本,或可以是密钥提供器/测试器104可以与参考散列值进行比较的散列值(例如,密钥提供器/测试器104可以至少部分地基于密钥(K1)108生成参考散列值),或可以是据称与密钥(K1)108相同的密钥的一部分。
在520,密钥提供器/测试器104可以保护安全密钥管理器组件112的完整性。密钥提供器/测试器104可以提供将安全密钥管理器组件112与处理器106外部的源/设备隔离的控制信号216。例如,密钥提供器/测试器104可以发信号通知处理器106的组件防止从外部访问安全密钥管理器组件112。密钥提供器/测试器104可以烧断处理器106的熔丝,或反熔丝,以防止从外部访问安全密钥管理器组件112。
在某些实施例中,硬件密钥(KH)208不被写入到处理器106的非易失性存储器202或其他存储器中。每当密钥密码组件204需要密钥硬件密钥(KH)208时,PUF组件206都可以生成硬件密钥(KH)208。即使安全密钥管理器组件112的其他组件是可从外部被访问的,密钥提供器/测试器104也可以通过防止从外部访问PUF组件206,保护安全密钥管理器组件112的完整性。由于硬件密钥(KH)208不被写入到处理器106的非易失性存储器202或其他存储器中,在密钥提供器/测试器104保护安全密钥管理器组件112的完整性之后,从处理器106读取硬件密钥(KH)208的尝试将不会成功。
在522,密钥提供器/测试器104可以完成对处理器106的测试。在处理器106通过密钥提供器/测试器104的测试后,密钥提供器/测试器104可以验证处理器106。
图6示出了用于生成验证符404的示例性过程600的流程图。过程500可以由密钥提供器/测试器104和安全密钥管理器组件112来执行。
在602,可以从非易失性存储器202中检索加密密钥(E[K1])214。
在604,密钥提供器/测试器104可以通过控制信号216来质询PUF组件206。
在606,PUF组件206可以响应于来自密钥提供器/测试器104的质询,生成硬件密钥(KH)208。
在608,密钥密码组件204可以利用硬件密钥(KH)208来解密检索到的加密密钥(E[K1])214。利用硬件密钥(KH)208对加密密钥(E[K1])214进行解密揭示据称与密钥(K1)108相同的密钥。
在610,据称与密钥(K1)108相同的密钥的至少一部分可以被包括在验证符404中。
图7示出了用于生成验证符404的另一示例性过程700的流程图。过程700可以由密钥提供器/测试器104和安全密钥管理器组件112来执行。
在702,可以从非易失性存储器202中检索加密密钥(E[K1])214。
在704,密钥提供器/测试器104可以通过控制信号216来质询PUF组件206。
在706,PUF组件206可以响应于来自密钥提供器/测试器104的质询,生成硬件密钥(KH)208。
在708,密钥密码组件204可以利用硬件密钥(KH)208来解密检索到的加密密钥(E[K1])214。利用硬件密钥(KH)208对加密密钥(E[K1])214进行解密揭示据称与密钥(K1)108相同的密钥。
在710,密钥密码组件204可以生成可识别的内容,即,密钥提供器/测试器/提供器104可识别的内容。密钥密码组件204可以利用密钥(K1)108的已揭示的声称的副本,加密由密钥提供器/测试器104已知的数据,由此生成密钥提供器/测试器104可识别的密文。密钥密码组件204可以利用密钥(K1)108的已揭示的声称的副本,解密由密钥提供器/测试器104已知的密文,由此生成密钥提供器/测试器104可识别的文本。密钥密码组件204可以对密钥(K1)108的已揭示的声称的副本,执行密钥提供器/测试器104已知的散列函数,由此生成可识别的内容。密钥密码组件204可以提供密钥(K1)108的已揭示的声称的副本的一部分,由此,生成可识别的内容。
在712,BIST组件402可以将可识别的内容的至少一部分包括在验证符404中。
示例性架构
图8示出了具有安全密钥管理器组件802的处理器102的示例性架构800。安全密钥管理器组件802可以包括非易失性存储器804、密钥密码组件806和PUF组件808。非易失性存储器804可以包括熔丝810和/或反熔丝812。在某些实施例中,通过烧断熔丝810和/或反熔丝812,加密密钥(E[K1])214可以被写入/被编程到非易失性存储器804中。
在某些实施例中,安全密钥管理器组件802、非易失性存储器804、密钥密码组件806和PUF组件808可以与安全密钥管理器组件112、非易失性存储器202、密钥密码组件204和PUF组件206相同或类似。
处理器106可以包括触点814、互连816和初始化器组件818。初始化器组件818可以是用于执行此处所讨论的至少某些操作的固定逻辑电路,并可以包括专用电路、逻辑单元、微代码等等中的一个或多个。触点814提供与外部设备的电的连接,而互连816提供与处理器106的内部组件的电的连接。
密钥提供器/测试器104在测试和/或验证处理器106时给初始化器组件818提供控制信号216。初始化器组件818可以对控制信号216作出响应,以测试和验证处理器106的组件。密钥提供器/测试器104可以与初始化器组件818接口以给处理器106提供密钥(K1)108。初始化器组件818的操作可以以硬件、固件、软件,或其组合来实现。在某些实施例中,密钥提供器/测试器104可以在初始化器组件818中设置在通信方面将安全密钥管理器组件802与外部设备隔离开的标志和/或比特。通常,密钥提供器/测试器104可以在对处理器106的最后测试/验证过程中设置这样的标志和/或比特。
在某些实施例中,触点814和/或初始化器组件818可以包括熔丝820和/或反熔丝822。密钥提供器/测试器104可以烧断在通信方面将安全密钥管理器组件802与外部设备隔离开的熔丝820和/或反熔丝822。例如,密钥提供器/测试器104可以烧断初始化器组件818的熔丝820和/或反熔丝822,这可以防止初始化器组件818与安全密钥管理器组件802进行进一步的通信。作为另一个示例,密钥提供器/测试器104可以烧断触点814的熔丝820和/或反熔丝822,这可以将互连816a与触点814隔离开。通常,密钥提供器/测试器104可以在对处理器106的最后测试/验证过程中烧断熔丝820和/或反熔丝822。
图9示出了具有安全密钥管理器组件802的处理器102的另一示例性架构900。安全密钥管理器组件802可以包括BIST组件902。BIST组件902可以检查加密密钥(E[K1])214的有效性,并可以给密钥提供器/测试器104提供验证符404。
在某些实施例中,安全密钥管理器组件802、非易失性存储器804、密钥密码组件806、PUF组件808以及BIST组件902可以与安全密钥管理器组件112、非易失性存储器202、密钥密码组件204、PUF组件206以及BIST组件402相同。
此处所描述的示例性环境和架构只是适用于某些实现的示例,并不旨在对可以实现此处所描述的进程、组件和特征的环境、架构以及框架的使用范围或功能提出任何限制。因此,此处的实现可用于众多环境或架构,并且可以在通用或专用计算系统或具有处理能力的其他设备中实现。一般而言,参考附图描述的任何功能都可使用软件、硬件(例如,固定逻辑电路)或这些实现的组合来实现。本文所使用的术语“模块”、“机制”、或“组件”一般表示可被配置成实现规定功能的软件、硬件或软件和硬件的组合。例如,在软件实现的情况下,术语“模块”、“机制”、或“组件”可表示当在一个或多个处理设备(例如,CPU或处理器)上执行时执行指定任务或操作的程序代码(和/或声明型指令)。程序代码可被储存在一个或多个计算机可读存储器设备或其它计算机存储设备中。因此,此处所描述的过程、组件和模块可由计算机程序产品来实现。
此外,本发明提供了如在附图中描述和示出的各种示例实现。然而,本发明不限于此处所描述并示出的实现,而可扩展到其他实现,如本领域技术人员已知或将变得已知的。说明书中对“一个实现”、“该实现”、“这些实现”或“一些实现”的引用意味着所述特定特征、结构或特性被包括在至少一个实现中,并且这些短语在说明书各处的出现不一定都指代同一实现。
说明性系统
图10是被提供密钥的系统的说明性架构的框图。系统1000可以包括一个或多个处理器1002-1,...,1002-N(其中,N是>1的正整数),每一个处理器都可以包括一个或多个处理器核1004-1,...,1004-M(其中,M是>1的正整数)。在某些实现中,如上文所讨论的,处理器1002可以是单核处理器,而在其他实现中,处理器1002可以具有大量的处理器核,每一个处理器核都可以包括图10中所示出的某些或全部组件。例如,每一个处理器核1004-1,...,1004-M都可以包括用于与寄存器组1008-1,...,1008-M进行交互和/或执行此处所讨论的至少某些操作的逻辑1006的实例。逻辑1006可以包括专用电路、逻辑单元、微代码等等中的一个或多个。
可以通过与本地互连1016连接在一起的集成的存储器控制器(IMC)1010,操作处理器1002和处理器核1004,以对存储器1012进行读和写。处理器1002和处理器核1004也可以执行存储在存储器1012或其他计算机可读介质中的计算机可读指令。存储器1012可包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据之类的信息的以任何类型的技术来实现的易失性和非易失性存储器和/或可移动和不可移动介质。这样的存储器可以包括,但不仅限于,RAM、ROM、EEPROM、闪存或其他存储器技术。在有多个处理器核1004的情况下,在某些实现中,多个处理器核1004可以可以共享可以通过本地互连1016访问的共享缓存1014。
另外,可以提供存储器1018用于存储数据、代码、程序、日志等等。存储器1018可以通过互连1042可被访问,可以包括固态存储器、磁盘存储器、RAID存储系统、存储器阵列、网络附属存储、存储区域网络、云存储器、CD-ROM、数字多功能盘(DVD)或其他光存储器、磁带盒、磁带,或可用于存储所希望的信息并可以被计算设备访问的任何其他介质。取决于系统1000的配置,存储器1012和/或存储器1018可以是计算机可读存储介质,并可以是非瞬时的介质。
在各实施例中,本地互连1016也可以与图形控制器(GFX)1020进行通信以提供图形处理。在某些实施例中,本地互连1016可以与系统代理1022进行通信。系统代理1022可以与连接显示引擎1026、PCIe1028,以及DMI1030的中枢1024进行通信。
存储器1012可以存储可由处理器1002执行的功能性组件。在某些实现中,这些功能性组件包括可由处理器1002执行的指令或程序1032。图10中所示出的示例功能性组件还包括管理系统1000的操作的操作系统(OS)1034。
系统1000可以包括可以通过互连1042可被访问的一个或多个通信设备1036,且通信设备1036可以包括用于允许通过诸如一个或多个网络1038之类的通信链路与各种其他设备进行通信的一个或多个接口和硬件组件。例如,通信设备1036可以通过因特网、有线电视网、蜂窝网络、无线网络(例如,Wi-Fi、蜂窝式)和有线网络中的一个或多个促进通信。用于通信的组件可以至少部分地取决于选择的网络和/或环境的类型。用于通过这样的网络进行通信的协议和组件是已知的,此处将不详细地讨论。
系统1000还可以进一步配备有可以通过互连1042可被访问的各种输入/输出(I/O)设备1040。这样的I/O设备1040可以包括显示器、各种用户接口控件(例如,按钮、操纵杆、键盘、触摸屏等等),音频扬声器、连接端口等等。可以提供可以包括系统总线、点对点接口、芯片组或其他合适的连接和组件的互连1024,以在处理器1002、存储器1012、存储器1018、通信设备1036以及I/O设备1040之间实现通信。
结论
尽管用对结构特征和/或方法动作专用的语言描述了本主题,但所附权利要求书中定义的主题不限于上述具体特征或动作。相反,上述具体特征和动作是作为实现权利要求的示例形式公开的。本发明旨在覆盖所公开的实现的任一和所有改编或变型,并且所附权利要求书不应被解释为限于说明书中所公开的具体实现。相反,本文的范围完全由所附权利要求书以及这些权利要求所授权的等效技术方案的完整范围来确定。

Claims (27)

1.一种处理器,包括:
至少一个互连;
其中存储了加密的第一密钥的非易失性存储器;
至少部分地基于所述处理器的至少一个唯一物理特征来生成硬件密钥的第一逻辑;以及
通过所述至少一个互连,连接到所述非易失性存储器和所述第一逻辑的第二逻辑,所述第二逻辑利用至少所述硬件密钥来解密所述加密的第一密钥以揭示所述第一密钥。
2.如权利要求1所述的处理器,其特征在于,所述硬件密钥是所述处理器所特有的。
3.如权利要求1所述的处理器,其特征在于,所述第二逻辑只是解密组件。
4.如权利要求1所述的处理器,其特征在于,所述非易失性存储器包括仅一次性的可编程存储器。
5.如权利要求4所述的处理器,其特征在于,所述非易失性存储器包括至少一个熔丝。
6.如权利要求4所述的处理器,其特征在于,所述非易失性存储器包括包括至少一个反熔丝。
7.如权利要求1所述的处理器,其特征在于,所述第二逻辑包括是解密组件和加密组件。
8.如权利要求1所述的处理器,还包括:
至少一个触点;以及
在第一时间在所述至少一个触点和所述非易失性存储器、所述第一逻辑以及所述第二逻辑中的至少一个之间提供通信路径的第三逻辑,其中,在晚于所述第一时间的第二时间,所述第三逻辑永久地禁用所述通信路径。
9.如权利要求1所述的处理器,其特征在于,在所述处理器的制造过程中,在第一时间,所述第一逻辑响应于来自外部设备的质询,为所述第二逻辑以及为所述外部设备,生成所述硬件密钥,其中,所述外部设备使用所述硬件密钥来加密所述第一密钥,将所述加密的第一密钥存储在所述非易失性存储器中,并从所述非易失性存储器中读取所述加密的第一密钥,其中,在所述处理器的所述制造过程中,在晚于所述第一时间的第二时间,所述处理器106接收将所述非易失性存储器、所述第一逻辑以及所述第二逻辑中的至少一个与所述处理器外部的全部设备永久地隔离的控制信号。
10.如权利要求1所述的处理器,还包括:
生成指出存储在所述非易失性存储器中的所述加密的第一密钥是否有效的验证符的第三逻辑,其中,在所述处理器的制造过程中,在第一时间,所述第一逻辑响应于来自外部设备的质询,为所述第二逻辑以及为所述第三逻辑,生成所述硬件密钥,其中,所述第二逻辑利用至少所述硬件密钥来解密所述加密的第一密钥以揭示声称的第一密钥,并至少基于所述声称的第一密钥,给所述第三逻辑提供验证指示符,其中,所述第三逻辑至少基于所述验证指示符,生成所述验证符。
11.如权利要求10所述的处理器,其特征在于,所述处理器106被制造为,使得所述非易失性存储器决不会被所述处理器外部的设备可读或可写。
12.如权利要求10所述的处理器,其特征在于,在所述处理器的所述制造过程中,在晚于所述第一时间的第二时间,所述处理器106接收将所述非易失性存储器、所述第一逻辑以及所述第二逻辑中的至少一个与所述处理器外部的全部设备永久地隔离的控制信号。
13.一种向处理器提供密钥的方法,包括:
接收由所述处理器的第一逻辑所生成的唯一硬件密钥;
将加密的第一密钥永久地存储在所述处理器的非易失性存储器中;
检测所述存储的加密的第一密钥是否有效;以及
响应于检测到所述存储的加密的第一密钥有效,将所述处理器的所述第一逻辑以及所述非易失性存储器中的至少一个与所述处理器外部的全部源隔离。
14.如权利要求13所述的方法,其特征在于,所述将加密的第一密钥永久地存储在所述处理器的非易失性存储器中包括:
在所述处理器外部的密码设备处,利用所述硬件密钥来加密所述第一密钥;以及
由所述处理器外部的设备,将所述加密的第一密钥写入到所述非易失性存储器中。
15.如权利要求14所述的方法,其特征在于,所述检测所述存储的加密的第一密钥是否有效包括:
由所述处理器外部的设备,从所述非易失性存储器中读取所述加密的第一密钥;
在所述处理器外部的所述密码设备处,利用所述硬件密钥解密所述读取的加密的第一密钥,以揭示声称的第一密钥;以及
在所述检测所述存储的加密的第一密钥是否有效时使用所述声称的第一密钥的至少一部分。
16.如权利要求14所述的方法,其特征在于,所述将所述处理器的所述第一逻辑和所述非易失性存储器中的至少一个与所述处理器外部的全部源隔离包括:
由所述处理器外部的设备,向所述处理器提供控制信号;以及
响应于所述控制信号,永久地禁用至少一个通信路径。
17.如权利要求13所述的方法,还包括:
由所述处理器的所述第一逻辑,响应于由所述处理器外部的设备所提供的外部控制信号,生成所述唯一硬件密钥;
其中,接收由所述处理器的第一逻辑所生成的唯一硬件密钥包括在所述处理器内部的第二逻辑处接收所述唯一硬件密钥;以及
其中,所述将加密的第一密钥永久地存储在所述处理器的非易失性存储器中包括:
在所述第二逻辑处接收所述第一密钥;
在所述处理器外部的所述密码设备中的利用所述硬件密钥来加密所述第一密钥;以及
接收允许所述加密的第一密钥被写入到所述非易失性存储器中的控制信号。
18.如权利要求17所述的方法,其特征在于,所述检测所述存储的加密的第一密钥是否有效包括:
由所述第二逻辑,从所述非易失性存储器中读取所述加密的第一密钥;
在所述第二逻辑中利用所述硬件密钥解密所述读取的加密的第一密钥,以揭示声称的第一密钥;以及
在所述处理器内,生成至少部分地基于所述声称的第一密钥的至少一部分指出所述加密的第一密钥是否有效的验证符;以及
将所述验证符提供到所述处理器外部的设备。
19.如权利要求17所述的方法,其特征在于,所述将所述处理器的所述第一逻辑和所述非易失性存储器中的至少一个与所述处理器外部的全部源隔离包括:
由所述处理器外部的设备,向所述处理器提供控制信号;以及
响应于所述控制信号,永久地禁用至少一个通信路径。
20.一种向处理器提供密钥的方法,包括:
由处理器内的第一逻辑至少部分地基于所述处理器的至少一个物理特征生成唯一硬件密钥;
至少基于所述硬件密钥,利用所述处理器的第二逻辑加密第一密钥,其中,所述密码组件接收;以及
将加密的第一密钥永久地存储在所述处理器的非易失性存储器中。
21.如权利要求20所述的方法,还包括:
制造所述处理器,以便所述处理器的所述非易失性存储器决不会直接被所述处理器外部的设备可访问。
22.如权利要求20所述的方法,还包括:
判断所述存储的加密的第一密钥是否有效;以及
响应于控制信号,将所述处理器的所述第一逻辑以及所述第二逻辑中的至少一个与所述处理器外部的全部源隔离。
23.如权利要求22所述的方法,还包括:
由所述第二逻辑,从所述非易失性存储器中读取所述加密的第一密钥;
在所述第二逻辑中利用所述硬件密钥解密所述读取的加密的第一密钥,以揭示声称的第一密钥;以及
在所述处理器内,生成至少部分地基于所述声称的第一密钥的至少一部分指出所述加密的第一密钥是否有效的验证符;以及
将所述验证符提供到所述处理器外部的设备。
24.一种系统,包括:
至少一个处理器,包括:
至少一个互连;
其中存储了加密的第一密钥的非易失性存储器;
至少部分地基于所述处理器的至少一个唯一物理特征来生成硬件密钥的第一逻辑;以及
通过所述至少一个互连,连接到所述非易失性存储器和所述第一逻辑的第二逻辑,所述第二逻辑利用至少所述硬件密钥来解密所述加密的第一密钥以揭示所述第一密钥。
25.如权利要求24所述的系统,还包括:
利用所述硬件密钥加密参考密钥并将所述经加密的参考密钥提供到所述至少一个处理器的密钥提供器,其中,所述参考密钥是所述第一密钥。
26.如权利要求25所述的系统,其特征在于,所述密钥提供器通过一下步骤验证存储在所述非易失性存储器中的所述加密的第一密钥:
从所述非易失性存储器中检索所述经加密的第一密钥,
至少利用所述硬件密钥来解密所述检索到的经加密的第一密钥以揭示所述第一密钥,
将所述已揭示的第一密钥与所述参考密钥进行比较,以及
至少基于所述已揭示的第一密钥和所述参考密钥的所述比较,检测所述已揭示的第一密钥和所述参考密钥是相同的。
27.如权利要求24所述的系统,还包括:
将所述第一密钥和控制信号提供到所述至少一个处理器的密钥提供器,其中,所述至少一个处理器的所述第一逻辑响应于所述控制信号来生成所述硬件密钥,其中,响应于所述控制信号,所述第二逻辑利用所述硬件密钥来加密所述第一密钥,并将所述经加密的第一密钥存储在所述非易失性存储器中。
CN201180076155.8A 2011-12-29 2011-12-29 使用在物理上不可克隆的函数的安全密钥存储 Active CN104025500B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710494807.9A CN107612685A (zh) 2011-12-29 2011-12-29 使用在物理上不可克隆的函数的安全密钥存储

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2011/067881 WO2013101085A1 (en) 2011-12-29 2011-12-29 Secure key storage using physically unclonable functions

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201710494807.9A Division CN107612685A (zh) 2011-12-29 2011-12-29 使用在物理上不可克隆的函数的安全密钥存储

Publications (2)

Publication Number Publication Date
CN104025500A true CN104025500A (zh) 2014-09-03
CN104025500B CN104025500B (zh) 2017-07-25

Family

ID=48698321

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201710494807.9A Pending CN107612685A (zh) 2011-12-29 2011-12-29 使用在物理上不可克隆的函数的安全密钥存储
CN201180076155.8A Active CN104025500B (zh) 2011-12-29 2011-12-29 使用在物理上不可克隆的函数的安全密钥存储

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201710494807.9A Pending CN107612685A (zh) 2011-12-29 2011-12-29 使用在物理上不可克隆的函数的安全密钥存储

Country Status (4)

Country Link
US (3) US9544141B2 (zh)
CN (2) CN107612685A (zh)
TW (1) TWI483139B (zh)
WO (1) WO2013101085A1 (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI609581B (zh) * 2015-06-22 2017-12-21 Mitsubishi Electric Corp Authenticity product identification device, authentic product identification system and authentic product identification method
CN107911215A (zh) * 2017-11-21 2018-04-13 中国银行股份有限公司 一种hsm密钥的验证方法及装置
CN107924645A (zh) * 2015-08-06 2018-04-17 本质Id有限责任公司 具有物理不可克隆功能的加密设备
CN108140085A (zh) * 2015-10-12 2018-06-08 微软技术许可有限责任公司 使用最少的硬件资源的可信平台
CN108538880A (zh) * 2017-03-02 2018-09-14 旺宏电子股份有限公司 半导体元件及具有此半导体元件的装置
CN108781219A (zh) * 2016-03-14 2018-11-09 艾锐势有限责任公司 电缆调制解调器反克隆
CN109286495A (zh) * 2017-07-21 2019-01-29 展讯通信(上海)有限公司 Dcp公钥的保护方法、装置及hdcp设备
CN109286488A (zh) * 2017-07-21 2019-01-29 展讯通信(上海)有限公司 Hdcp关键密钥保护方法
CN111723409A (zh) * 2019-03-22 2020-09-29 旺宏电子股份有限公司 集成电路、存储器电路以及用于操作集成电路的方法
CN111783919A (zh) * 2019-04-04 2020-10-16 利盟国际有限公司 在银行卡或身份证中的用于安全性的物理不可克隆功能
CN112069553A (zh) * 2019-06-10 2020-12-11 熵码科技股份有限公司 电子系统及电子系统的操作方法

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107612685A (zh) 2011-12-29 2018-01-19 英特尔公司 使用在物理上不可克隆的函数的安全密钥存储
US20140006806A1 (en) * 2012-06-23 2014-01-02 Pomian & Corella, Llc Effective data protection for mobile devices
KR101332517B1 (ko) * 2012-08-21 2013-11-22 한양대학교 산학협력단 인증 정보 처리 장치 및 방법
US8928347B2 (en) 2012-09-28 2015-01-06 Intel Corporation Integrated circuits having accessible and inaccessible physically unclonable functions
US9742563B2 (en) 2012-09-28 2017-08-22 Intel Corporation Secure provisioning of secret keys during integrated circuit manufacturing
JP6030925B2 (ja) 2012-11-12 2016-11-24 ルネサスエレクトロニクス株式会社 半導体装置及び情報処理システム
US9165163B2 (en) * 2012-11-30 2015-10-20 Broadcom Corporation Secure delivery of processing code
US8938792B2 (en) 2012-12-28 2015-01-20 Intel Corporation Device authentication using a physically unclonable functions based key generation system
US10984116B2 (en) 2013-04-15 2021-04-20 Calamu Technologies Corporation Systems and methods for digital currency or crypto currency storage in a multi-vendor cloud environment
US9225512B1 (en) * 2013-05-01 2015-12-29 Xilinx, Inc. Encryption and decryption using a physically unclonable function
US20150143130A1 (en) * 2013-11-18 2015-05-21 Vixs Systems Inc. Integrated circuit provisioning using physical unclonable function
WO2015148659A1 (en) * 2014-03-25 2015-10-01 Mai Kenneth Wei-An Methods for generating reliable responses in physical unclonable functions (pufs) and methods for designing strong pufs
TWI506469B (zh) * 2014-07-31 2015-11-01 Elitegroup Computer Sys Co Ltd 資料保密方法、電子裝置和外部儲存裝置
US9614669B1 (en) * 2014-11-17 2017-04-04 Q-Net Security, Inc. Secure network communications using hardware security barriers
US9674162B1 (en) * 2015-03-13 2017-06-06 Amazon Technologies, Inc. Updating encrypted cryptographic key pair
US9893885B1 (en) 2015-03-13 2018-02-13 Amazon Technologies, Inc. Updating cryptographic key pair
US10003467B1 (en) 2015-03-30 2018-06-19 Amazon Technologies, Inc. Controlling digital certificate use
US9479340B1 (en) 2015-03-30 2016-10-25 Amazon Technologies, Inc. Controlling use of encryption keys
US20170126414A1 (en) * 2015-10-28 2017-05-04 Texas Instruments Incorporated Database-less authentication with physically unclonable functions
CA2952941C (en) * 2016-01-08 2018-12-11 Sidense Corp. Puf value generation using an anti-fuse memory array
US10476680B2 (en) * 2016-02-03 2019-11-12 Ememory Technology Inc. Electronic device with self-protection and anti-cloning capabilities and related method
EP3482336A4 (en) * 2016-08-02 2019-12-04 Paul Lewis JURISDICTION INDEPENDENT DATA STORAGE IN A MULTI-VENDOR-CLOUD ENVIRONMENT
US20180102908A1 (en) * 2016-10-11 2018-04-12 Tyfone, Inc. Fine grain reconfigurable building block for ic protection and obfuscation
US10223531B2 (en) * 2016-12-30 2019-03-05 Google Llc Secure device state apparatus and method and lifecycle management
JP6882666B2 (ja) * 2017-03-07 2021-06-02 富士通株式会社 鍵生成装置および鍵生成方法
US11354390B2 (en) * 2017-06-04 2022-06-07 Apple Inc. Biometric authentication with user input
US10643006B2 (en) * 2017-06-14 2020-05-05 International Business Machines Corporation Semiconductor chip including integrated security circuit
US10915464B2 (en) 2017-09-12 2021-02-09 Ememory Technology Inc. Security system using random number bit string
EP3454318B1 (en) * 2017-09-12 2022-05-11 eMemory Technology Inc. Security system with entropy bits generated by a puf
US10505521B2 (en) * 2018-01-10 2019-12-10 Ememory Technology Inc. High voltage driver capable of preventing high voltage stress on transistors
US11050575B2 (en) * 2018-01-10 2021-06-29 Ememory Technology Inc. Entanglement and recall system using physically unclonable function technology
KR102432451B1 (ko) * 2018-01-10 2022-08-12 삼성전자주식회사 반도체 장치 및 반도체 장치의 동작 방법
US10839872B2 (en) * 2018-07-03 2020-11-17 Ememory Technology Inc. Random bit cell using an initial state of a latch to generate a random bit
US11216575B2 (en) 2018-10-09 2022-01-04 Q-Net Security, Inc. Enhanced securing and secured processing of data at rest
US10528754B1 (en) 2018-10-09 2020-01-07 Q-Net Security, Inc. Enhanced securing of data at rest
WO2020078591A1 (en) * 2018-10-17 2020-04-23 Nokia Solutions And Networks Oy Secure cryptoprocessor
NL2022902B1 (en) * 2019-04-09 2020-10-20 Univ Delft Tech Integrated circuit device for loT applications
US20210111899A1 (en) * 2019-09-10 2021-04-15 Lexmark International, Inc. Cryptoanchor reader
US11768611B2 (en) 2020-04-02 2023-09-26 Axiado Corporation Secure boot of a processing chip
US11663472B2 (en) 2020-06-29 2023-05-30 Google Llc Deep neural network processing for a user equipment-coordination set
US20220103354A1 (en) * 2020-09-25 2022-03-31 Renesas Electronics Corporation Secure encryption key generation and management in open and secure processor environments
US11480613B2 (en) * 2020-12-18 2022-10-25 Arm Limited Method and/or system for testing devices in non-secured environment
EP4047587A1 (en) * 2021-02-22 2022-08-24 HENSOLDT Sensors GmbH Chip device and method for a randomized logic encryption
EP4060537A1 (en) * 2021-03-17 2022-09-21 Secure Thingz Limited A method and system for securely provisioning electronic devices
US20220353062A1 (en) * 2021-05-03 2022-11-03 InfoKeyVault Technology Co., Ltd. Integrated circuit module functioning for information security
TWI827465B (zh) * 2023-02-13 2023-12-21 國立臺灣科技大學 成對加解密方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020129261A1 (en) * 2001-03-08 2002-09-12 Cromer Daryl Carvis Apparatus and method for encrypting and decrypting data recorded on portable cryptographic tokens
US20030177401A1 (en) * 2002-03-14 2003-09-18 International Business Machines Corporation System and method for using a unique identifier for encryption key derivation
CN1961268A (zh) * 2004-03-19 2007-05-09 诺基亚有限公司 带加密协处理器的装置
CN101251879A (zh) * 2006-12-29 2008-08-27 英特尔公司 用于保护数据的方法和装置

Family Cites Families (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5799080A (en) 1995-07-13 1998-08-25 Lsi Logic Corporation Semiconductor chip having identification/encryption code
US7088459B1 (en) 1999-05-25 2006-08-08 Silverbrook Research Pty Ltd Method and system for providing a copy of a printed page
US6823454B1 (en) 1999-11-08 2004-11-23 International Business Machines Corporation Using device certificates to authenticate servers before automatic address assignment
US7310821B2 (en) 2001-08-27 2007-12-18 Dphi Acquisitions, Inc. Host certification method and system
US7162644B1 (en) * 2002-03-29 2007-01-09 Xilinx, Inc. Methods and circuits for protecting proprietary configuration data for programmable logic devices
US7840803B2 (en) 2002-04-16 2010-11-23 Massachusetts Institute Of Technology Authentication of integrated circuits
TW588243B (en) 2002-07-31 2004-05-21 Trek 2000 Int Ltd System and method for authentication
US7475254B2 (en) * 2003-06-19 2009-01-06 International Business Machines Corporation Method for authenticating software using protected master key
US7949877B2 (en) 2003-06-30 2011-05-24 Realnetworks, Inc. Rights enforcement and usage reporting on a client device
US20050039016A1 (en) 2003-08-12 2005-02-17 Selim Aissi Method for using trusted, hardware-based identity credentials in runtime package signature to secure mobile communications and high-value transaction execution
EP3798874A1 (en) 2003-08-26 2021-03-31 Panasonic Intellectual Property Corporation of America Program execution device
GB0413034D0 (en) * 2004-06-10 2004-07-14 Scient Generics Ltd Secure workflow engine
CN101044514A (zh) 2004-10-18 2007-09-26 皇家飞利浦电子股份有限公司 安全传感器芯片
US7813507B2 (en) 2005-04-21 2010-10-12 Intel Corporation Method and system for creating random cryptographic keys in hardware
EP1927067A2 (en) 2005-09-14 2008-06-04 Koninklijke Philips Electronics N.V. Device, system and method for determining authenticity of an item
US8660964B2 (en) * 2006-06-30 2014-02-25 Hewlett-Packard Development Company, L.P. Secure device licensing
US9244863B2 (en) * 2007-02-05 2016-01-26 Intel Deutschland Gmbh Computing device, with data protection
US8290150B2 (en) * 2007-05-11 2012-10-16 Validity Sensors, Inc. Method and system for electronically securing an electronic device using physically unclonable functions
US9214183B2 (en) 2007-06-12 2015-12-15 Nxp B.V. Secure storage
US8472620B2 (en) 2007-06-15 2013-06-25 Sony Corporation Generation of device dependent RSA key
US8661552B2 (en) * 2007-06-28 2014-02-25 Microsoft Corporation Provisioning a computing system for digital rights management
WO2009024913A2 (en) 2007-08-22 2009-02-26 Intrinsic Id Bv Identification of devices using physically unclonable functions
EP2214117B1 (en) * 2007-09-19 2012-02-01 Verayo, Inc. Authentication with physical unclonable functions
US20090080659A1 (en) * 2007-09-21 2009-03-26 Texas Instruments Incorporated Systems and methods for hardware key encryption
US8564023B2 (en) * 2008-03-06 2013-10-22 Xilinx, Inc. Integrated circuit with MOSFET fuse element
US8966660B2 (en) * 2008-08-07 2015-02-24 William Marsh Rice University Methods and systems of digital rights management for integrated circuits
EP2330533B1 (en) 2008-09-24 2021-02-17 Panasonic Intellectual Property Management Co., Ltd. Recording/reproducing system, recording medium device, and recording/reproducing device
CN102165458B (zh) 2008-09-26 2015-05-27 皇家飞利浦电子股份有限公司 认证装置和用户
US7761714B2 (en) 2008-10-02 2010-07-20 Infineon Technologies Ag Integrated circuit and method for preventing an unauthorized access to a digital value
US8683210B2 (en) 2008-11-21 2014-03-25 Verayo, Inc. Non-networked RFID-PUF authentication
JP5423088B2 (ja) 2009-03-25 2014-02-19 ソニー株式会社 集積回路、暗号通信装置、暗号通信システム、情報処理方法、及び暗号通信方法
US8379856B2 (en) 2009-06-17 2013-02-19 Empire Technology Development Llc Hardware based cryptography
US8370787B2 (en) 2009-08-25 2013-02-05 Empire Technology Development Llc Testing security of mapping functions
US8387071B2 (en) 2009-08-28 2013-02-26 Empire Technology Development, Llc Controlling integrated circuits including remote activation or deactivation
WO2011048126A1 (en) 2009-10-21 2011-04-28 Intrinsic Id B.V. Distribution system and method for distributing digital information
US8402401B2 (en) 2009-11-09 2013-03-19 Case Western University Protection of intellectual property cores through a design flow
US20110154501A1 (en) 2009-12-23 2011-06-23 Banginwar Rajesh P Hardware attestation techniques
KR101727130B1 (ko) 2010-01-20 2017-04-14 인트린직 아이디 비브이 암호화 키를 획득하기 위한 디바이스 및 방법
US8458489B2 (en) 2010-03-25 2013-06-04 Empire Technology Development Llc Differential uncloneable variability-based cryptography
US20110299678A1 (en) * 2010-06-07 2011-12-08 Alexander Roger Deas Secure means for generating a specific key from unrelated parameters
US8848477B2 (en) 2010-10-04 2014-09-30 Intrinsic Id B.V. Physical unclonable function with improved start-up behavior
US8694778B2 (en) 2010-11-19 2014-04-08 Nxp B.V. Enrollment of physically unclonable functions
KR20120056018A (ko) 2010-11-24 2012-06-01 삼성전자주식회사 범프들과 테스트 패드들이 십자 모양으로 배열되는 반도체 장치
US20120137137A1 (en) 2010-11-30 2012-05-31 Brickell Ernest F Method and apparatus for key provisioning of hardware devices
US8386990B1 (en) 2010-12-07 2013-02-26 Xilinx, Inc. Unique identifier derived from an intrinsic characteristic of an integrated circuit
JP5225412B2 (ja) 2011-03-03 2013-07-03 株式会社東芝 通信装置および通信方法
WO2012122994A1 (en) 2011-03-11 2012-09-20 Kreft Heinz Off-line transfer of electronic tokens between peer-devices
US20130141137A1 (en) 2011-06-01 2013-06-06 ISC8 Inc. Stacked Physically Uncloneable Function Sense and Respond Module
EP2680485B1 (en) 2011-06-02 2016-04-06 Mitsubishi Electric Corporation Key information generation device and key information generation method
JP2013031151A (ja) 2011-06-20 2013-02-07 Renesas Electronics Corp 暗号通信システムおよび暗号通信方法
JP5770026B2 (ja) 2011-06-20 2015-08-26 ルネサスエレクトロニクス株式会社 半導体装置
DE102011079259B9 (de) 2011-07-15 2013-11-28 Infineon Technologies Ag Bitfehlerkorrektur zur Beseitigung von altersbedingten Fehlern in einem Bitmuster
CN102393890B (zh) 2011-10-09 2014-07-16 广州大学 一种抗物理入侵和旁路攻击的密码芯片系统及其实现方法
US8700916B2 (en) 2011-12-02 2014-04-15 Cisco Technology, Inc. Utilizing physically unclonable functions to derive device specific keying material for protection of information
US20130147511A1 (en) 2011-12-07 2013-06-13 Patrick Koeberl Offline Device Authentication and Anti-Counterfeiting Using Physically Unclonable Functions
CN107612685A (zh) 2011-12-29 2018-01-19 英特尔公司 使用在物理上不可克隆的函数的安全密钥存储
US8525549B1 (en) 2012-02-23 2013-09-03 International Business Machines Corporation Physical unclonable function cell and array
US8750502B2 (en) 2012-03-22 2014-06-10 Purdue Research Foundation System on chip and method for cryptography using a physically unclonable function
US10079678B2 (en) 2012-07-24 2018-09-18 Intel Corporation Providing access to encrypted data
US9742563B2 (en) 2012-09-28 2017-08-22 Intel Corporation Secure provisioning of secret keys during integrated circuit manufacturing
US8954735B2 (en) 2012-09-28 2015-02-10 Intel Corporation Device, method, and system for secure trust anchor provisioning and protection using tamper-resistant hardware
US8928347B2 (en) 2012-09-28 2015-01-06 Intel Corporation Integrated circuits having accessible and inaccessible physically unclonable functions
US8938792B2 (en) 2012-12-28 2015-01-20 Intel Corporation Device authentication using a physically unclonable functions based key generation system
US9391617B2 (en) 2013-03-15 2016-07-12 Intel Corporation Hardware-embedded key based on random variations of a stress-hardened inegrated circuit

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020129261A1 (en) * 2001-03-08 2002-09-12 Cromer Daryl Carvis Apparatus and method for encrypting and decrypting data recorded on portable cryptographic tokens
US20030177401A1 (en) * 2002-03-14 2003-09-18 International Business Machines Corporation System and method for using a unique identifier for encryption key derivation
CN1961268A (zh) * 2004-03-19 2007-05-09 诺基亚有限公司 带加密协处理器的装置
CN101251879A (zh) * 2006-12-29 2008-08-27 英特尔公司 用于保护数据的方法和装置

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI609581B (zh) * 2015-06-22 2017-12-21 Mitsubishi Electric Corp Authenticity product identification device, authentic product identification system and authentic product identification method
CN107924645B (zh) * 2015-08-06 2021-06-25 本质Id有限责任公司 具有物理不可克隆功能的加密设备
CN107924645A (zh) * 2015-08-06 2018-04-17 本质Id有限责任公司 具有物理不可克隆功能的加密设备
CN108140085B (zh) * 2015-10-12 2021-12-03 微软技术许可有限责任公司 用于提供可信平台的设备和方法
CN108140085A (zh) * 2015-10-12 2018-06-08 微软技术许可有限责任公司 使用最少的硬件资源的可信平台
CN108781219A (zh) * 2016-03-14 2018-11-09 艾锐势有限责任公司 电缆调制解调器反克隆
CN108781219B (zh) * 2016-03-14 2021-08-03 艾锐势有限责任公司 电缆调制解调器反克隆
CN108538880A (zh) * 2017-03-02 2018-09-14 旺宏电子股份有限公司 半导体元件及具有此半导体元件的装置
CN108538880B (zh) * 2017-03-02 2020-11-10 旺宏电子股份有限公司 半导体元件及具有此半导体元件的装置
CN109286488A (zh) * 2017-07-21 2019-01-29 展讯通信(上海)有限公司 Hdcp关键密钥保护方法
CN109286495A (zh) * 2017-07-21 2019-01-29 展讯通信(上海)有限公司 Dcp公钥的保护方法、装置及hdcp设备
CN107911215A (zh) * 2017-11-21 2018-04-13 中国银行股份有限公司 一种hsm密钥的验证方法及装置
CN111723409A (zh) * 2019-03-22 2020-09-29 旺宏电子股份有限公司 集成电路、存储器电路以及用于操作集成电路的方法
CN111783919A (zh) * 2019-04-04 2020-10-16 利盟国际有限公司 在银行卡或身份证中的用于安全性的物理不可克隆功能
CN112069553A (zh) * 2019-06-10 2020-12-11 熵码科技股份有限公司 电子系统及电子系统的操作方法
CN112069553B (zh) * 2019-06-10 2024-04-26 熵码科技股份有限公司 电子系统及电子系统的操作方法

Also Published As

Publication number Publication date
US10284368B2 (en) 2019-05-07
US9544141B2 (en) 2017-01-10
CN107612685A (zh) 2018-01-19
CN104025500B (zh) 2017-07-25
US20170126405A1 (en) 2017-05-04
WO2013101085A1 (en) 2013-07-04
TWI483139B (zh) 2015-05-01
TW201346618A (zh) 2013-11-16
US20170288869A1 (en) 2017-10-05
US20140201540A1 (en) 2014-07-17

Similar Documents

Publication Publication Date Title
CN104025500A (zh) 使用在物理上不可克隆的函数的安全密钥存储
EP3454318B1 (en) Security system with entropy bits generated by a puf
US9483664B2 (en) Address dependent data encryption
EP2506488B1 (en) Secure dynamic on-chip key programming
CN104252881B (zh) 半导体集成电路及系统
JP2022528070A (ja) 運転中の緊急車両のidの検証
JP2006295872A (ja) 機器固有鍵の生成方法、これを用いた機密情報処理機能を備えた機密情報lsi、これを搭載したホスト機器、これに用いられる認証機能付き記録媒体、および認証機能を備えた記録媒体付き携帯端末
US9152576B2 (en) Mode-based secure microcontroller
US8774407B2 (en) System and method for executing encrypted binaries in a cryptographic processor
CN110659506A (zh) 基于密钥刷新对存储器进行重放保护
CN107925574B (zh) 秘密数据的安全编程
US9471413B2 (en) Memory device with secure test mode
CN102523088A (zh) 一种软件与fpga联合加密和保护系统的方法
US20080104396A1 (en) Authentication Method
KR20190058302A (ko) 반도체 장치, 인증 시스템 및 인증 방법
US9069988B2 (en) Detecting key corruption
EP2945092B1 (en) Memory device with secure test mode
CN102236754A (zh) 数据保密方法以及使用此数据保密方法的电子装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant