CN108243008B - 用于生成秘密信息的系统和方法 - Google Patents

用于生成秘密信息的系统和方法 Download PDF

Info

Publication number
CN108243008B
CN108243008B CN201711404471.9A CN201711404471A CN108243008B CN 108243008 B CN108243008 B CN 108243008B CN 201711404471 A CN201711404471 A CN 201711404471A CN 108243008 B CN108243008 B CN 108243008B
Authority
CN
China
Prior art keywords
bit
puf
helper data
challenge
threshold
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
CN201711404471.9A
Other languages
English (en)
Other versions
CN108243008A (zh
Inventor
J-L·当热
P·阮
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.)
Secure IC SAS
Original Assignee
Secure IC SAS
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 Secure IC SAS filed Critical Secure IC SAS
Publication of CN108243008A publication Critical patent/CN108243008A/zh
Application granted granted Critical
Publication of CN108243008B publication Critical patent/CN108243008B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0877Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • H04L9/3278Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response using physically unclonable functions [PUF]
    • 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/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
    • 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

本发明的实施例提供了一种包括物理不可克隆功能(PUF)电路的用于生成秘密信息的电子系统,所述PUF电路被配置为响应于应用于所述PUF电路的挑战而提供所述PUF的物理变量的两个值之间的差。系统被配置为在登记阶段应用一组挑战,并且测量由PUF响应于每个挑战而提供的物理变量差。该系统包括:‑帮助数据生成器(2),其被配置为生成包括一组比特的帮助数据,所述帮助数据的比特与每个所应用的挑战相关联地被生成,所述帮助数据生成器被配置为根据由PUF响应于相关联的挑战的应用而提供的物理变量差来生成每个帮助数据比特,‑秘密信息生成器(3),其被配置为在使用阶段期间生成包括至少一个比特的秘密密钥,所述密钥的每个比特是通过应用所述一组挑战中的挑战而生成的,所述秘密信息生成器(3)被配置为根据对应于所应用的挑战的帮助数据比特以及根据由PUF响应于所应用的挑战而提供的物理变量差来确定密钥的每个比特。

Description

用于生成秘密信息的系统和方法
技术领域
本发明总体上涉及数据和设备安全领域,具体涉及用于从物理不可克隆功能(PUF)生成秘密信息的方法和设备。
背景技术
PUF越来越多地用于包含秘密数据的许多电子设备中,以增强安全性并使得这种设备抵抗针对设备的攻击。不同类型的攻击可以从外部针对电子设备以尝试访问这样的数据,诸如侧信道攻击、电迁移(诸如功耗、电磁发射、操作持续时间等)、成像、故障注入等等。
PUF用于许多应用中,例如识别、认证和密钥生成。尽管有用于保护用于在存储器中存储秘密比特的电子设备的传统方法,但物理不可克隆功能(PUF)设备的每个实例具有将挑战映射到响应的独特且不可预知的方式。
PUF是以物理结构体现的物理实体,其在物理实体的每个物理实例中都是相同的,并在被提供输入(称为“挑战”)时产生称为“响应”的特定输出。具体响应的值取决于每个实例的物理微观结构的独特性。在制造过程中的微小变化和随机物理因素是不可预测和不可控制的,这使得在设备中体现的物理实体的每个实例都是唯一的。具体输出之间的差异是由于在制造过程中引入了微小的工艺和材料变化。因此,PUF确保给定设备的PUF 输出的知识不会危害其他制造的设备。PUF可以被包含在集成电路(例如 CMOS集成电路)中。PUF可以用于各种应用,例如芯片的认证,加密密钥的生成,PRNG的种子等等。
包含PUF的物理结构由至少一个随机组件组成。PUF对特定挑战的响应是通过以激励的形式将输入提交给物理系统,并将激励和物理系统之间的相互作用所产生的行为映射给输出来获得的。
PUF固有地具有防篡改性质。如果攻击者试图拆解PUF来观察其运行情况,则这也将扰乱PUF的随机元素以及输入和输出之间的映射。通过逆向工程获得的PUF结构的知识没有揭示PUF值。
PUF电路的质量是一个主要的挑战。PUF电路的质量可能与许多性质或度量如可靠性有关。PUF的可靠性是指以确定性方式提供对于给定输入的响应的性质。由于不可靠的PUF可能会意外地提供另一PUF的输出并易于受到机器学习攻击,因此可以将这种性质特别地视为安全性质。PUF性质已经在Yohei Hori,Takahiro Yoshida,Toshihiro Katashita和Akashi Satoh 的“Quantitative and Statistical Performance Evaluation ofArbiter Physically Unclonable Functions on FPGAs”,International Conference onReconfigurable Computing and FPGA,IEEE,2110,pp.298-303中进行了分析。
因此,PUF的可靠性是指PUF对于给定的挑战始终会产生相同的响应所依据的性质。
特别是,基于延迟的PUF对噪声和其他环境变化(如温度,电源电压和电磁干扰)非常敏感。事实上,基于延迟的PUF是基于对诸如时间差的非常轻微的物理差异的测量。由于噪声的原因,即使在相同的集成电路上对于相同的挑战,每次评估的输出也可能会略有不同。因此,这样的PUF 遭受低可靠性水平。因此,例如,由于环境影响和热噪声,对基于延迟的 PUF应用的相同挑战的响应可能会不同。
然而,在诸如密钥生成的PUF的大多数应用中,需要PUF的完美可靠性。
在现有的方法中,已知在PUF实现中添加校正块以使PUF比特可靠或仅保持可靠的比特。这种校正块基于利用表示公共词的帮助数据(也被称为“安全草图”)的纠错码(ECC)。如Dodis,Y.,Reyzin,L.,和Smith, A.(2104,5月),Fuzzy extractors:How to generatestrong keys from biometrics and other noisy data在Advances in cryptology-Eurocrypt 2104(pp.523-521), Springer Berlin Heidelberg中所公开的,这种方法来自称为“模糊提取器 (fuzzy extractors)”的生物计量识别系统。
模糊提取器或密钥提取器PUF也可以用来从物理微结构中提取唯一的强密码密钥。每次评估PUF时都重构相同的唯一密钥。模糊提取器将重复的嘈杂的秘密读数转换成相同的均匀分布的密钥。为了消除噪音,它们使用初始登记阶段,读取秘密的第一噪音读数,并产生非秘密的帮助数据(在随后的读数中使用的数据)。
传统上,帮助数据表示与PUF相关联的公共词。在紧接制造IC设备之后进行的登记阶段,帮助数据被生成一次。登记阶段对应于在受控环境内从外部向PUF电路注入秘密。
在传统方法中,帮助数据是需要用ECC校正块检测和纠正潜在错误的码字。已知用于从ECC的码字或ECC的组合构造帮助数据的各种方式。帮助数据通常通过随机地或根据特定标准(码字的总长度等)从纠错码中选择码字来构造。然后,执行码字级联和附加比特级联的操作,例如异或操作。现有的纠错码包括例如BCH码,Reed-Muller码,Golay码,Reed-Solomon 码,LDPC码等。
PUF中使用的当前纠错技术增加了与低代码设备不兼容的复杂度级别。
因此需要改进的方法和设备,以非常低的复杂性确保高可靠性的PUF。
发明内容
为了解决这些和其他问题,提供了一种包括物理不可克隆功能(PUF) 电路的用于生成秘密信息的电子系统,所述PUF被配置为响应于应用于 PUF电路的挑战而提供PUF的物理变量的两个值之间的差。系统可以被配置为在登记阶段期间应用一组挑战,并且测量由PUF响应于每个挑战而提供的物理变量差。该系统可以包括帮助数据生成器,其被配置为生成包括一组比特的帮助数据,帮助数据的比特与每个应用的挑战相关联地被生成,帮助数据生成器被配置为根据由PUF响应于相关联的挑战的应用而提供的物理变量差来生成每个帮助数据比特。该系统还可以包括秘密信息生成器,该秘密信息生成器被配置为生成包括至少一个比特的秘密密钥,该密钥的每个比特是在使用阶段期间通过应用该组挑战中的挑战而生成的。秘密信息生成器可以被配置为根据与所应用的挑战对应的帮助数据比特以及根据 PUF响应于所应用的挑战而提供的物理变量差来确定密钥的每个比特。
在一个实施例中,帮助数据生成器可以被配置为应用至少一个比特提取函数来生成每个帮助数据比特,每个比特提取函数被配置为返回比特值并且取决于与物理变量差有关的条件。
至少一个比特提取函数的条件还可以取决于物理变量差相对于至少一个可靠性阈值S的值。
该至少一个比特提取函数可以包括一个比特提取函数,其被配置为:
-如果物理变量差严格高于负的可靠性阈值,或严格地低于可靠性阈值,则返回等于1的比特值;
-如果物理变量差严格低于负的可靠性阈值或严格高于唯一可靠性阈值,则返回等于零的比特。
在实施例中,秘密信息生成器可以被配置为根据帮助数据比特的值来选择至少一个比特提取函数中的一个,并且应用选择的比特提取函数来生成密钥比特。
所选择的比特提取函数的条件还可以取决于物理变量差相对于至少一个可靠性阈值的值,秘密信息生成器包括辅助阈值生成器,其被配置为在使用阶段期间确定至少一个可靠性阈值,使用所述至少一个可靠性阈值来应用所述比特提取函数。
物理变量差可以是PUF电路的两个路径之间的延迟差,辅助阈值生成器被配置为使用包括表示当前阈值的参考阈值和参考时间的参考参数来确定每个可靠性阈值的值,参考阈值和参考时间是在登记阶段期间被生成的,参考时间表示响应于在登记阶段期间对PUF应用给定的参考挑战而在PUF 的输出处测量的时间差。
辅助阈值生成器可以被配置为通过将校正因子应用于参考可靠性阈值而在使用阶段期间更新每个可靠性阈值。
校正因子可以从以下各项的乘积来确定:
-参考阈值,以及
-响应于在使用阶段期间给定的参考挑战的应用而在PUF输出处测量的时间与参考时间之间的比率。
在一个实施例中,参考阈值可以通过计算物理变量差的分布的标准偏差来确定。
参考阈值可以被选择为等于标准偏差与低于1的选定因子的乘积。
在实施例中,在登记阶段期间生成的帮助数据可以包括第一部分和第二部分,第一部分包括帮助数据比特,帮助数据生成器被配置为将参考阈值和参考时间插入帮助数据的第二部分。
参考阈值和/或参考时间可以被编码。
在实施例中,辅助阈值生成器可以被配置为通过应用异或运算将所述参考参数与使用所述第一比特提取函数获得的密钥比特级联来对每个参考参数进行编码,所述辅助阈值生成器被配置为通过在所述参考参数与使用选择的比特提取函数获得的密钥比特之间应用异或运算来对每个参考参数进行解码。
辅助阈值生成器可以被配置为在使用阶段期间使用在登记阶段期间针对所应用的挑战测量的物理变量差值的概率分布来确定可靠性阈值。
在一个实施例中,所述可靠性阈值可以包括一个可靠性阈值,所述辅助可靠性阈值生成器被配置为确定所述可靠性阈值,使得所述物理变量差的绝对值取严格地大于所述可靠性阈值的值的概率等于低于1的预定义概率值。
还提供了一种使用物理不可克隆功能(PUF)电路来生成秘密信息的方法,所述PUF电路被配置为响应于应用到所述PUF电路的挑战而在所述 PUF的两个路径之间提供物理变量差。该方法可以包括在登记阶段期间应用一组挑战,并且测量由PUF响应于每个挑战而提供的物理变量差。该方法可以进一步包括:
-生成包括一组比特的帮助数据,所述帮助数据的比特与每个所应用的挑战相关联地被生成,生成帮助数据的步骤包括根据由所述PUF响应于相关联的挑战的应用而测量的物理变量差来生成每个帮助数据比特,
-在使用阶段期间生成包括至少一个比特的秘密密钥,所述密钥的每个比特是通过应用所述一组挑战中的挑战而生成的,所述密钥的每个比特是根据与所应用的挑战对应的帮助数据比特以及根据PUF响应所应用的挑战而提供的物理变量差来确定的。
本发明的实施例还提供用于生成秘密信息的电子系统,其包括物理不可克隆功能(PUF)电路,所述PUF电路被配置为响应于应用到PUF电路的挑战而提供PUF的物理变量的两个值之间的差。系统可以被配置为在登记阶段应用一组挑战并且测量由PUF响应于每个挑战而提供的物理变量差。该系统可以包括被配置为生成包括一组比特的帮助数据的帮助数据生成器,帮助数据的比特与每个应用的挑战相关联地被生成,帮助数据生成器被配置为从PUF响应于相关联的挑战的应用而提供的物理变量差来生成每个帮助数据比特。帮助数据生成器可以包括比特提取函数选择器,该比特提取函数选择器被配置为在至少第一比特提取函数和第二比特提取函数中选择比特提取函数,该选择根据物理变量差的值以及至少一个可靠性阈值来执行,所述帮助数据生成器被配置为应用所述选择的比特提取函数来生成每个帮助数据比特。该系统还可以包括秘密信息生成器,用于在使用阶段期间从帮助数据中提取秘密信息。
每个比特提取函数可以被配置为根据与物理变量差有关的条件来返回比特值。至少一个比特提取函数的条件可以取决于物理变量差相对于至少一个可靠性阈值的值。
在其中可靠性阈值包括唯一可靠性阈值的实施例中,比特提取函数选择器(20)可以被配置为选择:
-第一比特提取函数,如果物理变量差位于以负的可靠性阈值为中心的第一区间中或位于以可靠性阈值为中心的第二区间中,
-第二比特提取函数,如果物理变量差位于以零为中心的第三区间中,
第一、第二和第三区间的范围等于最大噪声级别的两倍。
唯一可靠性阈值可以根据对于在登记阶段应用的许多挑战测量的物理变量差的概率分布来确定。
可以在登记阶段确定唯一可靠性阈值,使得物理变量差严格低于负的可靠性阈值或严格高于可靠性阈值的概率等于预定义的概率值,预定义的概率值严格低于1。
第一比特提取函数的条件可以取决于物理变量差的符号,并且第二比特提取函数的条件与物理变量差相对于唯一可靠性阈值的值相关。
第一比特提取函数可以被配置为:
-如果物理变量差严格为正,则返回等于1的比特;
-如果物理变量差为负或等于零,则返回等于零的比特。
第二比特提取函数可以被配置为:
-如果物理变量差严格高于负的可靠性阈值或严格低于可靠性阈值,则返回等于1的比特值;
-如果物理变量差严格低于负的可靠性阈值或严格高于可靠性阈值,则返回等于零的比特。
在可靠性阈值包括第一可靠性阈值和第二可靠性阈值的实施例中,第一可靠性阈值严格地高于第二可靠性阈值,可靠性阈值严格为正,比特提取函数选择器可以被配置为选择:
-第一比特提取函数,如果物理变量差位于以负的第二可靠性阈值为中心的第一区间中或位于以第一可靠性阈值为中心的第二区间中,
-第二比特提取函数,如果物理变量差位于以负的第一可靠性阈值为中心的第三区间中或位于以第二可靠性阈值为中心的第四区间中,
第一、第二、第三和第四区间的范围等于最大噪声级别的两倍。
第一可靠性阈值可以严格地高于第二可靠性阈值和最大噪声级别的两倍之和。
每个比特提取函数的条件可以取决于物理变量差相对于第一和第二可靠性阈值的值。
在使用两个可靠性阈值的实施例中,第一比特提取函数可以被配置为:
-如果物理变量差严格地大于负的第一可靠性阈值并且低于负的第二可靠性阈值,则返回等于1的比特;
-否则返回等于零的比特。
第二比特提取函数可以被配置为:
-如果物理变量差严格地大于负的第二可靠性阈值且低于第一可靠性阈值,则返回等于1的比特;
-否则返回等于零的比特。
秘密信息生成器可以被配置为根据帮助数据比特的值来选择比特提取函数中的一个,并且应用所选择的比特提取函数来生成密钥比特。
还提供了一种使用物理不可克隆功能(PUF)电路来生成秘密信息的方法,所述PUF电路被配置为响应于应用到所述PUF电路的挑战而提供在所述PUF的两个路径之间的物理变量差。该方法可以包括在登记阶段期间应用一组挑战,并且测量由PUF响应于每个挑战而提供的物理变量差。该方法可以进一步包括:
-生成包括一组比特的帮助数据,所述帮助数据的比特与每个所应用的挑战相关联地被生成,生成帮助数据的步骤包括根据由所述PUF响应于相关联的挑战的应用而测量的物理变量差来生成每个帮助数据比特,
其中生成帮助数据的步骤包括:
-在至少第一比特提取函数和第二比特提取函数中选择比特提取函数,所述选择根据所述物理变量差的值以及至少一个可靠性阈值来执行,所述选择的比特提取函数被应用于生成每个帮助数据比特,
该方法还包括在使用阶段期间从帮助数据中提取秘密信息。
因此,本发明的实施例允许生成帮助数据,该帮助数据确保基于延迟的PUF的所有输出比特都是可靠的,从而提供高度可靠的PUF,而不需要校正机制。
附图说明
现在将参照附图通过举例的方式来描述本发明的实施例,在附图中相似的附图标记表示类似的元件,并且其中:
-图1表示根据某些实施例的包括基于延迟的物理不可克隆功能 (PUF)电路的用于生成秘密信息的电子系统;
-图2示出了根据某些实施例的帮助数据生成器的结构;
-图3示出了表示在PUF处测量的时间差的概率分布的三个图,并且示出了根据某些实施例的比特提取函数的选择;
-图4示出了根据另一个实施例的表示PUF物理输出的分布的三个图;
-图5表示根据一个实施例的用于生成具有动态更新可靠性阈值的秘密信息的电子系统;
-图6示出了根据某些实施例的表示在PUF处测量的时间差的概率分布的图;
-图7描绘了根据某些实施例的帮助数据生成方法的初步阶段;
-图8是根据某些实施例的帮助数据生成方法的流程图;
-图9是根据某些实施例的描绘帮助数据比特确定的流程图;
-图10描绘了根据一个实施例的在登记阶段期间实现的比特提取选择;
-图11描绘了在登记阶段期间应用第一选择提取方法的步骤;
-图12描绘了针对当前挑战应用第二选择提取方法的步骤;
-图13描绘了根据一个实施例的在使用阶段期间实现的密钥生成方法;
-图14描绘了根据另一个实施例的密钥提取方法的初步阶段;
-图15描绘根据图14的实施例的在使用阶段期间实现的密钥生成方法;
-图16是示出根据图14的实施例的确定可靠性阈值的步骤的流程图;
-图17是描绘根据某些实施例的密钥比特确定步骤的流程图;
-图18示出了密钥生成的示例;并且
-图19示出了根据另一个实施例的用于生成秘密信息的电子系统。
具体实施方式
本发明的实施例提供一种包括物理不可克隆功能(PUF)电路的用于生成秘密信息的电子系统,所述PUF电路被配置为响应于应用于所述PUF电路的挑战而提供所述PUF的物理变量的两个值之间的差异,所述系统被配置为在登记阶段期间应用一组挑战,并且测量由PUF响应于每个挑战而提供的物理变量差。
该系统可以包括帮助数据生成器,其被配置为生成包括一组比特的帮助数据,帮助数据的比特与每个所应用的挑战相关联地被生成。帮助数据生成器可以被配置为根据由PUF响应于相关联的挑战的应用而提供的物理变量差来生成每个帮助数据比特。
在实施例中,该系统可以包括秘密信息生成器,用于从帮助数据中提取秘密信息。
在实施例中,该系统可以包括秘密信息生成器,该秘密信息生成器被配置为在使用阶段期间生成包括至少一个比特的秘密密钥,该密钥的每个比特通过应用在该组挑战中的挑战而被生成,秘密信息生成器被配置为从与所应用的挑战相对应的帮助数据比特以及从由PUF响应于所应用的挑战而提供的物理变量差来确定密钥的每个比特。
在另一替代或补充实施例中,帮助数据生成器可以包括比特提取函数选择器,被配置为在至少第一比特提取函数和第二比特提取函数中选择比特提取函数,该选择是根据物理变量差的值以及至少一个可靠性阈值来执行的,帮助数据生成器被配置为应用选择的比特提取函数来生成每个帮助数据比特。在这样的实施例中,系统可以进一步包括秘密信息生成器,用于在使用阶段期间从帮助数据中提取秘密信息。
每个比特提取函数可以被配置为根据与物理变量差有关的条件来返回比特值。至少一个比特提取函数的条件可以取决于物理变量差相对于至少一个可靠性阈值的值。可靠性阈值可以根据针对在登记阶段期间应用的许多挑战而测量的物理变量差的概率分布来确定。
参考图1,示出了用于可靠地从PUF 10生成秘密信息的电子系统100。 PUF 10可以在电子系统100中实现。电子系统100可以被实现为包括集成电路(IC)和/或诸如现场可编程门阵列(FPGA)、微处理器、数字信号处理器(DSP)等的可编程逻辑的电子电路设备。
在本发明的一个应用中,从PUF 10生成的秘密信息可以是包括一组比特的密码密钥。
在这样的应用中,每当系统需要密钥,就从PUF生成密钥。
PUF 10被配置为当用某个输入(被称为“挑战”)查询时产生可测量的输出(称为“响应”)。应该指出的是,PUF本身不是数学意义上的“函数”。事实上,对PUF的挑战可能有不止一种可能的响应。然而,针对给定挑战的可能答案的数量是有限的,并且期望地对于高可靠性的PUF仅等于一个。 PUF指定由特定(物理)系统执行或作用于特定(物理)系统的过程。
由应用的挑战和对应的测量的响应形成的一对被称为挑战-响应对或“CRP”。挑战与由特定PUF 10产生的响应之间的关系被称为PUF的CRP 行为。
应用于PUF 10的挑战序列和作为应用每个挑战的结果而获得的响应包括比特串的序列。在一些实施例中,解码和量化步骤可以被应用于模拟物理激励作为挑战,并且从然后获得的模拟效果的测量得到响应。
获得特定PUF对给定挑战的响应而不访问特定PUF所基于的特定物理系统是不可行的。PUF因此实现一组挑战-响应对(CRP),使得分离的逻辑上相同的设备产生不同的CRP,即使对于设计者也是不可预知的。换句话说,挑战-响应对CRP耦合到唯一的物理设备(因此,PUF的“不可克隆”性质)。因此,PUF功能允许使用其固有的物理性质来识别对象。
应用于PUF 10的每个挑战包括一组比特(或“比特串”)。一个挑战可以用一个比特矢量表示。为了生成p比特密码密钥,至少应用了p个挑战,每个挑战用于产生密码密钥的一个比特。
PUF 10可以是被配置为响应于应用到PUF电路的挑战而提供PUF的物理变量的两个值之间的差异的任何类型的PUF。物理变量表示诸如光相关量、电压、延迟等的物理量。由PUF测量的物理变量差可以是PUF的类型特定的。
在一些实施例中,物理变量可以是延迟,PUF 10提供PUF的两个路径之间的延迟差(以下也称为“时间差”),这两个路径对应于:
-PUF的两个相同的路径,物理变量差被定义为在第一路径的输出处测量的时间与在第二路径的输出处测量的时间之间的差;或者
-PUF的相同路径的两种配置,物理变量差被定义为以下之间的差:
■在路径的输出处测量的时间,如根据第一配置所配置的那样,以及
■在路径的输出处测量的时间,如根据第二配置所配置的那样。
适用于测量延迟差的PUF包括诸如仲裁器PUF,环形振荡器PUF,环形PUF之类的基于延迟的PUF(也称为“延迟本征PUF”)。基于延迟的PUF 是嵌入在集成电路(IC)设备上的数字本征PUF(也称为“硅PUF”),其基于由规则数字基元形成的构建块。基于延迟的PUF基于数字延迟测量。嵌入基于延迟的PUF的IC设备100可以在没有外部仪器的情况下查询和读出PUF。在基于延迟的PUF中,优选地在设备内计算挑战和响应。基于延迟的PUF可能接受许多挑战。例如,在基于延迟的PUF中,延迟由挑战比特来控制,从而提供了大量的挑战组合。
更具体地,基于延迟的PUF可以被实现为包括至少一对结构相同/对称的子电路(包括逻辑和互连)的电路,并且测量两个子电路的输出之间的任何延迟差。
例如,仲裁器PUF可以是具有多比特输入X的电路,并且基于由两个相同的子电路定义的两个路径之间的相对延迟差来计算1比特输出Y。输入比特通过控制PUF电路的组件来确定延迟路径。该电路可以为每个输入X 创建一对延迟路径。为了评估特定输入的输出,向两个路径同时提供上升信号,信号通过两个延迟路径竞争,并且处理块处理来自每个路径的信号来导出PUF输出Y。
基于延迟的PUF的两个对称子电路中的每一个可以包括一组块,其中至少一些块由应用到PUF的挑战的比特来控制。在诸如仲裁器PUF的某些类型的基于延迟的PUF中,PUF元素是相同的,并且PUF块的数量等于挑战中包括的比特的数量(挑战的每个比特与PUF块相关联,该比特作为控制比特被输入到对应的PUF块)。
给定具有n比特(C=c1...ci...cn)的输入挑战C,在基于延迟的PUF中建立竞争条件。两个信号沿由所应用的挑战配置的PUF电路的两条路径传播(两条路径对应于两个对称/相同的子电路)。两个信号进行比较,以确定哪一个先来(竞争条件)。诸如锁存器之类的仲裁器块根据仲裁器块输入处首先到达的信号产生一比特响应。
两个信号(通常是顶部信号和底部信号)通过至少一个延迟级被馈送,每个级对应于PUF块。PUF块的激活或操作由挑战C(C=c1c2...cn)的比特ci控制。每个挑战对应于延迟路径的不同配置。
挑战的比特控制相似的PUF元件(例如,用于仲裁器PUF(APUF),环形振荡器PUF(ROPUF)或蝶形PUF(BPUF)的开关盒)。例如,环形振荡器PUF,挑战控制第i个环形振荡器(以特定频率振荡的延迟环路)的激活,PUF挑战促使限定竞争信号的两个路径的两个环形振荡器的选择。
在基于延迟的PUF中,为了生成一比特响应,通过应用至少一个挑战来测量时间微分变量。基于延迟的PUF的两个子电路具有相同的布局,使得从两个子电路发出的两个信号之间的延迟差仅主要取决于工艺变化。
每个级k的延迟差对应于响应于所应用的挑战C的顶部信号和底部信号之间的延迟差。
给定挑战C=c1,...cn的总延迟差ΔDC对应于为每个级计算的各个延迟的总和。
两个信号之间的最终时间差是最后一级n之后的时间差,并且由PUF 输出的响应比特r是根据总时间差的符号来定义的。
在基于延迟的PUF的输出处测量的延迟差(通常以微微秒计)通常近似为高斯分布。当发生诸如电源电压变化的环境变化时,在传统的基于延迟的PUF中,可能翻转响应比特,从而影响PUF的可靠性。
根据本发明的各种实施例,电子系统100被配置为根据由PUF 10测量的量差来生成帮助数据,该帮助数据可用于生成高度可靠的秘密信息,诸如高度可靠的秘密密钥比特。特别地,帮助数据的比特指示可靠的密钥比特。
本发明的某些实施例的以下描述将参照基于延迟的PUF仅出于说明的目的进行,基于延迟的PUF测量两个路径之间的延迟差(对应于PUF的两个分开的且相同的路径或相同路径的两个配置),帮助数据是从这种延迟差 (以下称为“DELTA值”)生成的。
如本文所使用的,术语“可靠性”是指PUF的性质,根据该性质,无论环境因素和热噪声如何,PUF 10将总是针对给定的挑战产生相同的响应。可靠性可以通过误码率来表示,误码表示预期响应和输出响应之间的差异。
为了生成密码密钥的每一比特,根据本发明的某些实施例的电子系统 100可以按照两个阶段进行操作:
-在登记阶段,创建一组p个挑战-响应对CRP(p挑战在下文中被称为p登记挑战,p至少等于1)。然后,通过应用p个挑战来生成包括至少p 个比特的帮助数据,每个挑战被用于生成帮助数据的一个比特。对于每个挑战,测量响应于所应用的挑战而在PUF输出处获得的延迟差(“DELTA 值”),并且使用至少一个可靠性阈值从DELTA值确定帮助数据比特。这样获得的这组挑战和帮助数据可以被存储在例如本地非易失性存储器中或外部服务器中。
-在使用阶段,可以通过应用p个登记的挑战来提取p比特密码密钥;对于每个登记的挑战,可以从与所应用的挑战相对应的帮助数据比特以及从由PUF响应于在使用阶段期间应用的挑战而输出的延迟差(“DELTA”值)来确定密钥比特,而不需要使用纠错。
系统100可以被配置为应用至少一个比特提取函数来生成每个帮助数据比特,每个比特提取函数被配置为根据与物理变量差有关的条件来返回比特值。
在某些实施例中,每个帮助数据比特和每个密码密钥的生成可以取决于从至少两个提取函数中选择比特提取函数,比特提取函数的选择是根据针对(在帮助数据比特生成的登记阶段期间以及在密码密钥比特的使用阶段期间)所应用的挑战而获得的DELTA值来确定的。每个比特提取函数根据与在所考虑的阶段(登记阶段或使用阶段)中测量的DELTA值有关的条件来提供比特值。
帮助数据比特可以被生成,使得每个比特值指示被用于生成帮助数据比特的比特提取函数,这样的信息可用于生成秘密信息。
结果,这样生成的帮助数据不能揭示任何关于秘密密钥的信息。它进一步确保每次得到密钥时密钥将保持不变。
本发明的实施例不限于密钥生成,并且包括使用帮助数据的所有密码应用。在本发明的其它应用中,根据增量变量值生成的帮助数据例如可以用于认证,密钥存储,防篡改,从PUF获得内容密钥的拷贝保护等。将参考仅用于说明目的的密钥生成进行下面的描述。
在一个实施例中,如图1所示,电子系统100可以包括帮助数据生成器2。帮助数据生成器2可以根据由PUF 10提供的DELTA值来生成帮助数据。
帮助数据生成器2可以被配置为生成包括一组比特的帮助数据,帮助数据的比特与每个所应用的挑战相关联地被生成。帮助数据生成器2可以被配置为从响应于相关联的挑战的应用而由PUF提供的物理变量差 (DELTA值)中生成每个帮助数据比特。
系统100还可以包括被配置为提取秘密信息的秘密信息生成器3。在密钥生成的一个可能的应用中,可以提供秘密信息生成器以从在登记阶段期间生成的帮助数据提取秘密密钥比特。在一个实施例中,可以在登记阶段期间使用与用于生成对应的帮助数据比特的比特提取函数相同的比特提取函数从帮助数据提取秘密密钥比特。
这样产生的密码密钥可以在各种密码应用中使用。在图1的示例中,电子系统100可以包括密码设备4(本领域中也称为“密码引擎”),其接收从帮助数据生成的密码密钥作为输入。密码设备4可以将密钥用于例如认证应用。
帮助数据生成器2可以包括比特提取函数选择器20,该比特提取函数选择器20被配置为根据物理变量差的值和至少一个可靠性阈值(S,S1,S2) 来从至少第一比特提取函数21和第二比特提取函数22中选择比特提取函数。
比特提取函数选择器20可以被配置为在至少两个比特提取函数21(也被称为“M1”)和22(也被称为“M2”)中选择一个比特提取函数,所选择的比特提取函数用于在登记阶段期间根据与所应用的挑战对应的DELTA 值的值来与所应用的挑战相关联地生成帮助数据比特。
在某些实施例中,比特提取函数选择器20可以被配置为根据与物理变量差有关的条件来选择比特提取函数中的一个。
例如在一个实施例中,比特提取函数选择器20可以被配置为选择:
-第一比特提取函数,如果物理变量差位于至少一个小的预定义区间中,则每个区间以给定值为中心(物理变量差因此接近给定值),
–第二比特提取函数,如果物理变量差位于以从一个或多个可靠性阈值导出的另一给定值为中心的至少一个小的预定义区间中(物理变量差因此接近从可靠性阈值(一个或多个)导出的给定值)。
在一些实施例中,可以使用一个可靠性阈值S从DELTA值确定每个帮助数据比特。可以将可靠性阈值S选择为高于或等于n(S>2n),n指定最大噪声级别。假定对于给定的DELTA值,噪声存在于区间 [DELTA-n,DELTA+n]中。
第一比特提取函数21可以根据与物理变量差的符号相关的条件来提供比特值。第二比特提取函数22可以根据与物理变量差相对于可靠性阈值S 的值相关的另一条件来提供比特值。
在这样的实施例中,选择器20可以被配置为通过测试与DELTA值的值和可靠性阈值S相关的条件来选择第一比特提取函数M1(21)和第二比特提取函数M2(22)中的一个比特提取函数。更具体地,选择器20可以被配置为选择:
-第一比特提取函数M1(21),如果DELTA的值接近于-S或S(即,如果DELTA值位于以负的可靠性阈值-S为中心的第一小区间中,或者位于以可靠性阈值S为中心的第二小区间内),这相当于是否将DELTA值包括在区间[-S-n,-S+n]或[S-n,S+n]中;
-第二比特提取函数M2(22),如果DELTA的值接近零(即,如果DELTA 值位于以0为中心的第三小区间中),换句话说,如果DELTA值在区间 [-n,n]中(即第一区间和第二区间的范围等于最大噪声级别的两倍2n)。
否则(如果DELTA值在上述所有区间之外),可以例如随机地选择比特提取函数M1和M2中的一个。
如本文所使用的,如果DELTA值位于指定值附近的范围[-n,n]中,则表示DELTA值“接近”指定值,n表示最大噪声级别。
每个比特提取函数M1或M2提供一个根据DELTA变量值的比特。
在一个实施例中,如图3所示,第一比特提取函数M1可以根据DELTA 变量的符号返回比特值。
第二比特提取函数M2可以根据DELTA变量相对于可靠性阈值S的值而返回比特值。具体地,可以通过测试与DELTA值关于-S和S有关的条件来确定比特值。
在这样的实施例中,第一比特提取函数M1(21)可以被定义为使得:
-如果DELTA值严格为正(DELTA>0),则提取的比特bi的值被设置为1(bi=1)。
-否则,如果DELTA值为负值或为零(DELTA≤0),则将比特bi的值设置为值零(bi=0)。
此外,第二比特提取函数M2(22)可以被定义为使得:
-如果DELTA值小于-S(即严格低于-S)或大于S(即,严格高于S),则提取的比特bi的值被设置为零(bi=0):DELTA<-S或DELTA>S;
-否则,如果DELTA值包含在区间[-S,S]中,则提取的位bi的值被设置为值1(bi=1)。
与通常使用作为码字的帮助数据的传统模糊提取和基于用于纠错码的解码器的密钥提取相比,根据某些实施例,利用M1获得的帮助数据比特不涉及密钥提取的复杂度,因为考虑帮助数据的“1”比特就足够了。然而,通过借助第一比特提取函数M1生成的帮助数据提取的密钥比特的数量可能不是恒定的,因为可靠比特的数量可能取决于制造过程并且因此可能是不可预测的。
秘密信息生成器3根据某些实施例通过使用利用比特提取函数M1和 M2生成的帮助数据来克服情况。在使用阶段期间,可以应用p个登记的挑战,这为每个挑战提供了DELTA值。对于每个应用的挑战,秘密信息生成器3可以使用辅助比特提取函数30,该辅助比特提取函数30被配置为在使用阶段期间读取与所应用的挑战对应的帮助数据比特,并且取决于读取值从帮助数据比特中确定要应用的比特提取函数。如果帮助数据比特的值是“0”,则使用在使用阶段期间针对挑战所测量的DELTA值来应用第一比特提取函数M1(21)以生成与挑战相对应的密钥比特。否则,如果帮助数据比特的值是“1”,则使用在使用阶段期间针对挑战测量的DELTA值来应用第二比特提取函数M2(22)以生成与挑战对应的密钥比特。
在一些实施例中,帮助数据生成器可以包括可靠性阈值生成器5,用于从响应于登记的挑战的应用而测得的DELTA值的概率分布中选择登记阶段中的可靠性阈值S。具体地,可靠性阈值生成器可以在登记阶段期间从与物理变量差取严格低于负的可靠性阈值-S或严格高于所述可靠性阈值S的值的概率相关的条件(Prob(DELTA<-S或DELTA>S))来确定可靠性阈值 S,如果该概率等于预定义的概率值Pt,则该条件得到满足,所述预定义的概率值严格低于1(Pt<1)。这种情况由公式(1)定义:
Prob(DELTA<-S或DELTA>S)=Pt (1)
因此,可以确定可靠性阈值S,使得DELTA值取严格低于-S(负S) 或严格高于S的值的概率等于预定义概率值Pt。
在实施例中,可以在0.5(1/2)附近选择预定义概率值Pt。具体地,预定义的概率值Pt可以被设置为1/2(0.5)。主要参照等于1/2的预定义概率值Pt来进行一些实施例的以下描述,但是技术人员将容易地理解可以选择其他值。
然后可以确定阈值S,使得DELTA值取严格低于-S或严格高于S的值的概率等于1/2:
Prob(DELTA<-S或DELTA>S)=1/2 (2)
这对应于DELTA分布的标准偏差SIGMA的值0.67449。因此S可以被确定为因子0.67449与SIGMA的乘积。
可选地,满足条件(1)的可靠性阈值可被预先计算并输入到帮助数据生成器2。
因此,帮助数据生成器2允许在登记阶段期间选择最佳比特提取函数,而不需要复杂的硬件实现,并相应地生成可靠的密钥比特。
图3显示了代表PUF物理输出分布的三个图A,B和C。y轴表示具有特定DELTA变量值的概率(概率分布函数pdf),并且x轴表示DELTA 变量值。
图A图示了由第一比特提取函数根据DELTA变量分配的比特值。
图B图示了由第二比特提取函数根据DELTA变量和可靠性阈值分配的比特值。
图C图示了根据本发明的一些实施例的在M1和M2之间的比特提取函数的选择。
在一个实施例中,如图3所示,基于延迟的PUF的分布遵循居中正态律(近似高斯)。图3的图考虑了增量变量和噪声的分布。对于高可靠性的 PUF,希望标记为黑色的中心区域尽可能窄,因为该区域对应于更不可靠的数据(不可靠的数据)。在图3的示例中,阈值S的选择位置被确定为使得 DELTA值取严格低于-S或严格高于S的值的概率等于1/2,根据公式(1): Prob(DELTA<-S或DELTA>S)=1/2。
如图3的图C所示:
-如果增量值接近零0(包含在[-n,n]中),则使用提取器M2(22)。
-如果增量值接近于-S或S(包含在[-n-S,-S+n]或[-n+S,S+n] 中),则使用提取器M1(21);
否则,可以随机使用比特提取函数M1和M2中的一个。
如这个例子所示,总是有一个比特提取函数M1或M2,它允许离不可靠区域(图3中用黑色标出的中心窄区域)足够远。在这样的示例中,这保证了帮助数据生成器2传送的比特的可靠性。
由于Prob(DELTA<-S或DELTA>S)=1/2的关系满足,因此获得的帮助数据不提供关于密钥比特的任何信息。换句话说,这意味着在已知帮助数据比特的情况下密钥比特取值等于“1”(一)的概率等于在已知帮助数据比特的情况下密钥比特取值等于“0”(零)的概率,两个概率函数等于1/2:
Prob(比特=“1”已知帮助比特)=Prob(比特=“0”已知帮助比特)=1/2 (3)
本发明的一个优点是具有抵抗攻击的健壮性。如果攻击者修改了帮助数据,他将无法取回任何信息。
在替代实施例中,可以使用包括第一可靠性阈值S1和第二可靠性阈值 S2的一对可靠性阈值从DELTA值确定每个帮助数据比特。
可靠性阈值S1和S2可以使得第一可靠性阈值S1严格地高于S2+2n (S1>S2+2n),其中n表示最大噪声级别。假定对于给定的DELTA值,噪声存在于区间[DELTA-n,DELTA+n]中。
在这样的实施例中,选择器20可以被配置为通过测试与DELTA值的值和可靠性阈值(S1,S2)相关的条件来选择第一比特提取函数M'1(21) 和第二比特提取函数M'2(22)中的一个比特提取函数。
每个比特提取函数21,22可以取决于与物理变量差相对于从第一和第二可靠性阈值S1和S2导出的值的值相关的另一条件来提供比特值。
更具体地说,选择器20可以被配置为选择:
-第一比特提取函数M'1(21),如果DELTA(物理变量差)的值接近于-S2或S1(即,如果DELTA值位于以负的第二可靠性阈值-S2为中心的第一小区间中或在以第一可靠性阈值S1为中心的第二小区间中);如果 DELTA值被包括在区间[-S2-n,-S2+n]或[S1-n,S1+n]中(即,第一和第二区间的范围等于最大噪声级别的两倍(2n)),则认为DELTA的值接近于-S2或S1。
-第二比特提取函数M'2(22),如果DELTA的值接近于-S1或S2(即,如果DELTA值位于以负的第一可靠性阈值-S1为中心的第三小区间中,或者位于以第二可靠性阈值S2为中心的第四小区间中);如果DELTA值包括在区间[-S1-n,-S1+n]或[S2-n,S2+n]中(即,第三区间和第四区间的范围等于最大噪声级别的两倍(2n)),则认为DELTA的值接近于-S1或 S2。
否则,如果DELTA值在区间[-S2-n,-S2+n],[S1-n,S1+n], [-S1-n,-S1+n]和[S2-n,S2+n]外,则选择器20可以被配置为例如随机地选择比特提取函数M'1和M'2中的任何一个。
每个比特提取函数M'1或M'2根据DELTA变量值提供一个比特。
在使用一对可靠性阈值的这样的实施例中,可以定义第一比特提取函数M'1(21),使得:
-如果DELTA值严格高于负的第一阈值-S1且低于负的第二阈值-S2,则提取的比特bi的值被设置为1(bi=1),其中S1>S2>0。
-否则,位bi被设置为值零(bi=0)。
第二比特提取函数M'2(22)可以被定义为使得:
-如果DELTA值严格高于负的第二阈值-S2并且低于第一阈值S1,则提取的比特bi的值被设置为1(bi=1),S1>S2>0;
-否则,位bi被设置为值零(bi=0)。
可靠性阈值生成器5(图2中所示)可以被配置为根据响应于登记的挑战的应用而测量的增量值的概率分布来选择登记阶段中的第一和第二可靠性阈值S1和S2。特别地,可靠性阈值生成器5可以确定每个阈值Si,使得 DELTA值取严格低于-Si或严格高于Si的值的概率等于预定义概率值Pti。预定义的概率值Pti可以严格地低于1。因此,可以定义第一阈值S1(i=1),使得DELTA值取严格低于-S1或严格高于S1的值的概率等于第一预定义概率值Pt1(Pt1严格低于1):
Prob(DELTA<-S1或DELTA>S1)=Pt1 (4)
类似地,可以定义第二阈值S2(i=2),使得DELTA值取严格低于-S2 或严格高于S2的值的概率等于严格低于1的第二预定义概率值Pt2:
Prob(DELTA<-S2或DELTA>S2)=Pt2 (5)
进一步的,在一些实施例中,可以进一步确定第一阈值和第二阈值,使得DELTA值取严格低于-S1或严格高于S2的值的概率等于严格低于1的辅助概率值Pt12:
Prob(DELTA<-S1或DELTA>S2)=Pt12 (6)
在一些实施例中,辅助概率值是第一概率值和第二概率值之和的函数,第一概率值高于第二概率值。
在一些实施例中,概率值Pt1,Pt2和Pt12可以满足:
Figure GDA0002755669580000201
在一个实施例中,预定义概率值Pt12可以被设置为1/2,并且Pt1+Pt2 因此满足Pt1+Pt2=1。然后可以确定阈值S1和S2,使得DELTA值取严格低于-S1或严格高于S2的值的概率等于:
(Prob(DELTA<-S1或DELTA>S2)=1/2 (8)
或者,满足条件1的两个可靠性阈值S1和S2可以被预先计算并输入到帮助数据生成器2。
因此,帮助数据生成器2允许在登记阶段选择最佳比特提取函数,而不需要复杂的硬件,并相应地生成可靠的密钥比特。
图4显示了代表PUF物理输出的分布的三个图A,B和C。y轴表示具有特定DELTA变量值的概率,x轴表示DELTA变量值。
图A图示了由第一比特提取函数M'1根据DELTA变量分配的比特值。
图B图示了由第二比特提取函数M'2根据DELTA变量和可靠性阈值分配的比特值。
图C图示了根据本发明实施例的M'1和M'2中的比特提取函数的选择。
如图4所示,基于延迟的PUF的分布被表示为居中正态律(近似高斯)。在图4的示例中,阈值S1和S2的位置由DELTA值取严格低于-S1或严格高于S2的值的概率确定,该概率等于:
Prob(DELTA<-S1或DELTA>S2)=1/2 (9)
如图4的图C所示:
-如果增量值为闭合的-S1或S2(包含在-S1或S2周围的+/-n区间中),则使用提取器M'2(22);
-如果delta值接近-S2或S1(包含在-S2或S1周围的+/-n区间中),则使用提取器M'1(21);
否则,可以随机使用比特提取函数M'1和M'2中的一个。
因此,同样在这个实施例中,总是有一个允许远离不可靠区域的比特提取函数21或22,从而确保帮助数据比特的可靠性。
如果满足条件Prob(DELTA<-S1或DELTA>S2)=1/2,则然后获得的帮助数据不提供关于密钥比特的任何信息。换句话说,这意味着,在已知帮助数据比特的情况下密钥比特取值“1”的概率等于在已知帮助数据比特的情况下密钥比特取值“0”的概率,根据公式(3)两者都是等于1/2:
Prob(比特=“1”已知帮助比特)=Prob(比特=“0”已知帮助比特) =1/2
因此,同样在这样的实施例中,如果攻击者试图修改帮助数据,他将不能取回与该密钥相关的任何信息。
将参考使用如图3中所示的唯一可靠性阈值S和比特提取函数M1和 M2的实施例来进行对某些实施例的以下描述,仅用于说明的目的。然而,技术人员将容易理解,本发明适用于其他实施例。
图5描绘了根据另一实施例的用于在PUF的登记阶段期间,同时考虑到环境变化以生成帮助数据的电子系统100。
基于延迟的PUF的环境变化(诸如温度或电源电压变化的环境因素) 可能导致阈值S的变化。
为了避免环境变化对阈值S的影响(进而影响PUF的可靠性),秘密信息生成器3还可以包括用于在使用阶段期间动态地校正阈值S的辅助阈值生成器32。
辅助阈值生成器32可以被配置为使用表示当前阈值的参考阈值Sref和参考时间(Tref)来更新阈值S的值。
参考值Tref和Sref可以在登记阶段生成。参考时间Tref表示可以用给定的和公共的参考挑战(例如挑战等于0)来获得的延迟链的特定时间。
参考阈值Sref可以通过计算DELTA分布的标准偏差SIGMA来确定。为了满足(Prob(DELTA<-S or DELTA>S)=Pt)所依据的性质,其中 Pt例如等于1/2,阈值Sref可以基本上等于SIGMA与低于一的选定因子的乘积。因为环境对Tref,Sref和DELTA的影响是相同的,所以选定的因子优选地等于0.6745(因此Sref=0.6745SIGMA)。
在某些实施例中,帮助数据生成器2可以将参考阈值Sref和参考时间 Tref插入登记阶段期间生成的帮助数据中。在这样的实施例中,帮助数据可以包括两个比特部分的级联:
-第一部分,其包括由帮助数据生成器使用比特提取函数M1/M2生成的p个帮助数据比特,
-包括参考值Sref和Tref的第二部分。
因此参考值被嵌入到帮助数据中。
可替代地,可以使用存储设备中的数据结构将帮助数据与参考值相关联地存储。这样的数据结构可以包括用于每个条目的三元组值,包括:
-帮助数据比特,
-参考阈值(Sref),以及
-参考时间(Tref)。
在这样的实施例中,帮助数据因此嵌入(或关联于)进行测量的参考时间Tref,并且间接地嵌入(或关联于)频率值。如果出现新的条件,例如温度或电压,并影响参考条件,检测到的变化可以动态地应用到S。
更具体地,辅助阈值生成器32可以通过对可靠性阈值Sref应用校正因子来确定每个使用阶段的可靠性阈值S的值。校正因子可以取决于测量的时间Tmeas,表示在使用阶段利用公共参考挑战测量的时间,以及取决于包含在帮助数据中的绝对参考时间Tref
在一些实施例中,可以通过比率Tmeas/Tref来定义校正因子,其中Tmeas表示针对与参考时间Tref相同的参考挑战测量的时间。可靠性阈值S可以如下确定:
Figure GDA0002755669580000231
为了避免攻击帮助数据,在一些实施例中,可以对参考参数Sref和Tref进行编码。在一个实施例中,参考参数Sref和Tref可以通过应用异或运算与使用第一比特提取函数M1(21)获得的密钥比特级联。由于比特提取函数 M1与可靠性S无关,所以可以通过将参考值Sref和Tref与使用第一比特提取函数M1获得的密钥比特进行异或来解码参考值Sref和Tref
在另一个实施例中,辅助阈值生成器32可以使用针对在使用阶段期间应用的p个挑战测量的DELTA值的概率分布来确定使用阶段中的可靠性阈值。在这样的实施例中,帮助数据可以仅包括利用比特提取函数M1/M2生成的帮助数据比特,而不嵌入参考值Sref和Tref。为了限制环境变化对PUF 的影响,在一个实施例中,可以在每个使用阶段计算阈值S,使得DELTA 变量的绝对值取大于阈值S的值的概率等于低于一的预定义概率值Pt':
Prob(|Delta|>S)=Pt′ (11)
在优选实施例中,预定义概率值Pt'等于1/2。
这个可靠性阈值S可以由以下确定:
-计算与对于在使用阶段应用的p个挑战测量的DELTA值相对应的 DELTA分布的标准偏差SIGMA,
-通过将SIGMA乘以低于1的选定因子来确定S;在一个示例性实施例中,所选定的因子可以有利地等于0.6745(S=0.6745SIGMA)以根据公式(1)满足关于DELTA的概率条件,特别是 Prob(DELTA<-S或DELTA>S)=1/2。
应该注意的是,在使用两个阈值S1和S2的实施例中,概率条件可以是公式(9)的条件:
Prob(DELTA<-S1或DELTA>S2)=1/2
本发明的这样的实施例确保了帮助数据(公共数据)和秘密密钥比特之间不存在依赖关系。虽然生成的帮助数据确保了高可靠性的PUF,但是它们因此阻止了对秘密密钥的访问。
本发明不一定需要使用纠错来产生帮助数据。
图6显示了说明PUF物理输出的概率分布的图。y轴表示具有特定 DELTA变量值的概率(概率分布函数pdf),而x轴表示增量变量值。
在图6中:
-区域1对应于Prob(比特=0|M1或M2);
-区域2对应于Prob(比特=0|M1);
-区域3对应于Prob(比特=0或1|M1或M2);
-区域4对应于Prob(比特=1|M2);
-区域5对应于Prob(比特=1|M1或M2);
-区域6对应于Prob(比特=1|M1);
-区域7对应于Prob(比特=0或1|M1或M2)。
如本文所使用的,知道提取器Mi被使用(其中i=1或2),Prob(比特=val|Mi)指的是密钥比特等于值val的概率。
如图6所示,关于任何提取器M1或M2具有任何比特值“0”或“1”的概率基本上等于1/2。
本发明的一些实施例允许在登记阶段期间选择最佳提取方法,而不需要与现有技术解决方案不同的复杂硬件。
图7描绘了根据某些实施例的帮助数据生成方法的初步阶段。在这个初步阶段期间,DELTA值分布可以按照以下步骤产生。
在登记阶段通过在步骤600向PUF 10应用一组挑战来生成帮助数据。
在步骤602,对于每个应用的挑战,在PUF 10的输出处测量DELTA 值。
在步骤604,DELTA值被存储在存储单元中。
针对每个应用的挑战迭代步骤602和604(框608)。
如此获得的存储单元可以用于确定DELTA值的概率分布。
图8是根据某些实施例的描述使用在登记阶段(图7)期间测量的 DELTA值的帮助数据生成方法的流程图。
在步骤650,根据所存储的数据值的分布来确定可靠性阈值。
对于在登记阶段期间应用的每个第i个挑战(如根据图7所述),在步骤652从存储单元读取与挑战相关联的DELTA值。
在步骤654,根据针对挑战获得的DELTA值和可靠性阈值S来确定与当前挑战相关联的帮助数据的第i个帮助数据比特。
在步骤656,帮助数据比特被存储在帮助数据的比特位置i中。
针对其他挑战迭代步骤652至656(框658),直到已经获得所有挑战。
然后获得的帮助数据包括对应于p个挑战的至少p个比特。附加信息可以插入帮助数据,如参考阈值和时间值。
图9是根据某些实施例,根据针对当前挑战所获得的DELTA值,描绘图8的帮助数据比特确定步骤(步骤654)的流程图。
在步骤701,通过测试与针对当前挑战获得的DELTA值和可靠性阈值相关的条件来选择比特提取函数。
在步骤702,应用选择的比特提取函数(取决于选择,为M1或M2),其提供与当前挑战相关联的帮助数据比特。
图10描绘了根据一个实施例的在登记阶段期间针对当前挑战实现的图 9的比特提取选择步骤。
在步骤710,读取针对当前挑战获得的DELTA变量。
在步骤712,确定DELTA变量是否接近于零(0)(特别是如果DELTA 变量包含在[-n,n]中)。如果是,则在步骤714选择第一提取函数M1。
否则,在步骤716中,确定DELTA变量是否接近于-S或S(特别是,如果DELTA变量包含在[-n-S,-S+n]或[-n+S,S+n]中)。如果是,则在步骤718选择第二提取函数M2。否则,例如在步骤720随机选择第一或第二提取函数。
图11描述了对当前的挑战应用第一提取方法M1(图10的步骤714) 的步骤。
在步骤1000,读取与当前挑战相关联的DELTA值。
在步骤1002,确定DELTA值是否为正值。如果是,则对应于当前挑战的帮助数据比特被分配“1”值(步骤1004)。否则,如果DELTA值为负或零,则对应于当前挑战的帮助数据比特被分配“0”值(步骤1006)。
图12描绘了针对当前挑战应用第二选择提取方法M2(图10的步骤 718)的步骤。
在步骤1100,读取与当前挑战相关联的DELTA值。
在步骤1102,确定DELTA值是否严格低于-S或严格高于S。如果是,则将与当前挑战相对应的帮助数据比特分配“0”值(步骤1104)。否则,则与当前挑战相对应的帮助数据比特被分配“1”值(步骤1108)。
图13描绘了根据一个实施例的根据帮助数据在使用阶段期间实现的密钥生成方法。
在步骤1200,通过根据参考值Sref,Tref和测量的时间Tmeas应用校正因子来确定可靠性阈值。
然后将一组p个登记的挑战应用于PUF(框1202)。
对于每个当前挑战(第i个挑战),在步骤1204,测量对应于当前挑战的DELTA值。
在步骤1206,读取对应于该当前挑战的帮助数据比特。
在步骤1208,从帮助数据比特和DELTA值中确定一个密钥比特,然后获得的密钥比特对应于密码密钥的第i个密钥比特。
步骤1204至1208针对提供密码密钥的p个密钥比特的其他挑战进行迭代。
图14描绘了根据另一个实施例的密钥提取方法的初步阶段。在使用阶段的这个初步阶段期间,收集与p个应用的挑战对应的DELTA值,并且可以从DELTA值的概率分布确定可靠性阈值。
在步骤1300中,在步骤600中向PUF 10应用一组p个挑战。
在步骤1302,对于每个应用的挑战,在PUF 10的输出处测量DELTA 值。
在步骤1304,DELTA值被存储在存储单元中。
步骤1302和1304针对每个应用的挑战进行迭代(框1306)。
在步骤1308,可以根据DELTA值的分布确定S,并且特别是使得根据公式(11),DELTA变量的绝对值取大于阈值S的值的概率等于预定义的值 Pt';因此在Pt'等于1/2的实施例中,可以确定S以满足以下条件:
Prob(|Delta|>S)=1/2 (12)
这可能包括:
-计算与在步骤1300至1306收集的DELTA值对应的DELTA分布的标准偏差SIGMA,
-通过将选定因子(在一个实施例中等于0.6745)乘以SIGMA(在该实施例中S=0.6745 SIGMA,具有等于0.6745的选定因子)来确定S。
在一些实施例中,如前所述,S可以是动态可调的。
图15描述了根据图14中考虑的实施例,根据帮助数据在使用阶段期间实现的密钥生成方法。
在步骤1450,开始生成p个密钥比特。
对于每个应用的挑战,在步骤1452,读取对于挑战所获得的DELTA值。
在步骤1454,取回相关联的帮助数据值。并且在步骤1455,取回S。
在步骤1456,根据帮助数据值,S和取回的DELTA值来确定密钥比特,然后判断是否有其它挑战,如果是,步骤继续回到1452,否则在步骤1458 结束。
图16是示出确定可靠性阈值的步骤(图14的步骤1308)的流程图。
在步骤1500,针对参考挑战测量时间值Tmeas
在步骤1502,从帮助数据中检索参考阈值Sref和参考时间Tref
在步骤1504,可靠性阈值S被计算为:
Figure GDA0002755669580000271
图17是描绘根据某些实施例的图13和14的密钥比特确定步骤(步骤 1208和1404)的流程图。
首先,取回对应于当前挑战的帮助数据比特。
在步骤1600,确定帮助数据比特的值是否等于“0”。如果是,则在步骤1602选择第一比特提取函数M1。否则,如果帮助数据比特等于“1”,则在步骤1604选择第二比特提取函数。在步骤1606,选择的比特提取函数被应用,其提供与当前挑战相对应的密钥比特值。
图18显示了密钥生成的示例。
使用对于应用的挑战获得的DELTA值生成的帮助数据是:
h0 h1 h2 h3 h4 h5 h6 ..
0 1 1 0 0 1 0 ….
在上表中,hi指定帮助数据的第i位。
帮助数据嵌入包括位Si的编码参考阈值和包括位Ti的编码参考时间:
S0 S1 S2 S3 ... T0 T1 T2 T3
从帮助数据比特生成的密钥比特被表示为:
K0 K1 K2 K3 K4 K5 K6
K0,K3,K4,K6是使用第一比特提取函数M1(对应于等于“0”的帮助数据比特)产生的。
已经使用第二比特提取函数M2(对应于等于“1”的帮助数据比特) 生成了K1,K2,K5。
在图18的示例中,参考阈值Sref的比特可以通过将它们与使用第一比特提取函数M1生成的比特K0,K3,K4,K6中的一个进行异或来解码。类似地,参考时间Tref的比特可以通过将它们与使用第一比特提取函数M1 生成的比特K0,K3,K4,K6中的一个进行异或来解码。
需要说明的是,虽然本发明的某些技术方面已经结合描述,但是在某些应用中可以单独使用它们。
具体而言,应该注意的是,尽管上述实施例主要结合两个比特提取函数中的比特提取函数的选择进行了描述,但是在某些实施例中,帮助数据生成器2可以仅包括一个比特提取函数,特别是第二比特提取函数M2,并且应用这样的函数M2来生成帮助数据。这允许生成其比特指示密钥比特的可靠性的帮助数据。
图19示出了根据另一个实施例的用于生成秘密密钥的电子系统。如所示,帮助数据生成器2仅包括第二比特提取函数M2(22)。在这样的实施例中,可靠性阈值S被设置为最大噪声级别n(S=n)。如上所述,如果DELTA 的值大于阈值S=n或者低于-S=-n(即,DELTA的绝对值大于噪声级别 S),则第二比特提取函数分配等于“0”的比特值,否则为“1”。在这样的实施例中,阈值S表示这样的阈值,在该阈值之上相关联的密钥比特被认为是可靠的。在本发明的某些应用中,秘密信息生成器3可以检查然后获得的帮助数据的每个比特的值,以获得关于相关联的密钥比特的可靠性的信息。更具体地说,在这样的实施例中,等于“0”的帮助数据比特指向可靠的密钥比特,而等于“1”的帮助数据比特指向不可靠的密钥比特。在某些应用中,秘密信息生成器3可以通过检查帮助数据比特的值来然后选择可靠的密钥比特。在对图19所示的秘密密钥生成的本发明的可能应用中,可以通过应用第二比特提取函数M2(22)来生成每个密钥比特。
本发明的实施例还确保环境变化(温度,电压)不影响可靠性。
因此,所有利用根据增量值生成的帮助数据获得的密钥比特都是可靠的。
由于不需要纠错码(ECC),所以根据本发明的实施例的帮助数据提取方法和设备对纠错码的攻击是健壮的。
即使不限于这种应用,本发明的一些实施例特别适用于诸如物联网 (IoT)之类的高容量市场。
这里描述的帮助数据提取系统和方法可以通过包括硬件、软件或其组合的各种手段来实现。
尽管已经通过对各种示例的描述来说明了本发明的实施例,并且尽管已经相当详细地描述了这些实施例,但是申请人的意图不是将所附权利要求的范围限定或以任何方式限制到这样的细节。对于本领域技术人员而言,其他的优点和修改将是显而易见的。因此,本发明在其更广泛的方面不限于所示出和描述的具体细节、代表性方法和说明性示例。特别地,本发明不限于特定类型的基于延迟的PUF。本发明不限于帮助数据的特定应用。

Claims (15)

1.一种包括物理不可克隆功能PUF电路的用于生成秘密信息的电子系统,所述物理不可克隆功能PUF被配置为响应于应用到所述物理不可克隆功能PUF电路的挑战而提供所述物理不可克隆功能PUF的物理变量的两个值之间的差,其中,所述系统被配置为在登记阶段期间应用一组挑战,并且测量由所述物理不可克隆功能PUF响应于每个挑战而提供的物理变量差,所述系统包括:
-帮助数据生成器(2),被配置为生成包括一组比特的帮助数据,所述帮助数据的比特与每个所应用的挑战相关联地被生成,所述帮助数据生成器被配置为根据由所述物理不可克隆功能PUF响应于相关联的挑战的应用而提供的所述物理变量差来生成每个帮助数据比特,
-秘密信息生成器(3),其被配置为在使用阶段期间生成包括至少一个比特的秘密密钥,所述密钥的每个比特是通过应用所述一组挑战中的挑战而生成的,所述秘密信息生成器(3)被配置为根据与所应用的挑战对应的帮助数据比特以及根据由所述物理不可克隆功能PUF响应于所述应用的挑战而提供的所述物理变量差来确定所述密钥的每个比特。
2.如权利要求1所述的系统,其中,所述帮助数据生成器(2)被配置为应用至少一个比特提取函数来生成每个帮助数据比特,每个比特提取函数被配置为返回比特值并且取决于与所述物理变量差相关的条件。
3.如权利要求2所述的系统,其中,所述至少一个比特提取函数(21)的条件进一步取决于所述物理变量差相对于至少一个可靠性阈值(S)的值。
4.如权利要求3所述的系统,其中,所述至少一个比特提取函数包括被如下配置的比特提取函数:
-如果所述物理变量差高于负的所述可靠性阈值,或低于可靠性阈值,则返回等于一的比特值;
-如果所述物理变量差低于负的所述可靠性阈值或高于唯一可靠性阈值,则返回等于零的比特。
5.如前述权利要求2至4中任一项所述的系统,其中,所述秘密信息生成器(3)被配置为根据所述帮助数据比特的值来选择所述至少一个比特提取函数中的一个,并且应用所选择的比特提取函数来生成所述密钥比特。
6.如权利要求5所述的系统,其中,所述选择的比特提取函数(21)的条件进一步取决于所述物理变量差相对于至少一个可靠性阈值(S)的值,所述秘密信息生成器(3)包括辅助阈值生成器(32),其被配置为在使用阶段期间确定所述至少一个可靠性阈值,所述比特提取函数被使用所述至少一个可靠性阈值来应用。
7.如权利要求6所述的系统,其中,所述物理变量差是所述物理不可克隆功能PUF电路的两个路径之间的延迟差,所述辅助阈值生成器(32)被配置为使用包括表示当前阈值的参考阈值和参考时间的参考参数来确定每个可靠性阈值的值,所述参考阈值和所述参考时间在所述登记阶段期间被生成,所述参考时间表示响应于在所述登记阶段期间将给定的参考挑战应用于所述物理不可克隆功能PUF而在所述物理不可克隆功能PUF的输出处测量的时间差。
8.如权利要求7所述的系统,其中,所述辅助阈值生成器(32)被配置为通过对所述参考可靠性阈值应用校正因子而在所述使用阶段期间更新每个可靠性阈值。
9.如权利要求8所述的系统,其中,所述校正因子是根据以下项之间的乘积来确定的:
-所述参考阈值,以及
-响应于在所述使用阶段期间对所述给定的参考挑战的应用而在物理不可克隆功能PUF输出处测量的时间与所述参考时间之间的比率。
10.如前述权利要求7至9中任一项所述的系统,其中,所述参考阈值是通过计算所述物理变量差的分布的标准偏差来确定的。
11.如权利要求10所述的系统,其中,所述参考阈值等于标准偏差与低于一的选定因子的乘积。
12.如权利要求7所述的系统,其中,在所述登记阶段期间生成的所述帮助数据包括包含所述帮助数据比特的第一部分和第二部分,所述帮助数据生成器(2)被配置为将所述参考阈值和所述参考时间插入到所述帮助数据的所述第二部分中。
13.如权利要求7所述的系统,其中,所述参考阈值和/或所述参考时间是被编码的。
14.如权利要求7所述的系统,其中,所述至少一个比特提取函数包括第一比特提取函数,其被配置为:如果所述物理变量差为正,则返回等于一的比特值;如果所述物理变量差为负或等于零,则返回等于零的比特值,并且其中,所述辅助阈值生成器被配置为通过应用异或运算将所述参考参数与使用所述第一比特提取函数获得的密钥比特进行级联来对每个参考参数进行编码,所述辅助阈值生成器被配置为通过在所述参考参数与使用选择的比特提取函数获得的密钥比特之间应用异或运算来对每个参考参数进行解码。
15.一种用于使用物理不可克隆功能PUF电路来生成秘密信息的方法,所述物理不可克隆功能PUF电路被配置为响应于应用到所述物理不可克隆功能PUF电路的挑战而在所述物理不可克隆功能PUF的两个路径之间提供物理变量差,其中,所述方法包括在登记阶段期间应用一组挑战,并且测量由所述物理不可克隆功能PUF响应于每个挑战而提供的所述物理变量差,所述方法还包括:
-生成包括一组比特的帮助数据,所述帮助数据的比特与每个所应用的挑战相关联地被生成,生成帮助数据的步骤包括:根据由所述物理不可克隆功能PUF响应于相关联的挑战的应用而测量的所述物理变量差来生成每个帮助数据比特,
-在使用阶段期间生成包括至少一个比特的秘密密钥,所述密钥的每个比特通过应用所述一组挑战中的挑战而生成,所述密钥的每个比特是根据与所应用的挑战对应的帮助数据比特以及根据由所述物理不可克隆功能PUF响应于所述应用的挑战而提供的物理变量差来确定的。
CN201711404471.9A 2016-12-23 2017-12-22 用于生成秘密信息的系统和方法 Active CN108243008B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP16306809.1A EP3340216B1 (en) 2016-12-23 2016-12-23 Secret key generation using a high reliability physically unclonable function
EP16306809.1 2016-12-23

Publications (2)

Publication Number Publication Date
CN108243008A CN108243008A (zh) 2018-07-03
CN108243008B true CN108243008B (zh) 2021-03-16

Family

ID=58264333

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711404471.9A Active CN108243008B (zh) 2016-12-23 2017-12-22 用于生成秘密信息的系统和方法

Country Status (4)

Country Link
US (1) US11038680B2 (zh)
EP (1) EP3340216B1 (zh)
KR (1) KR102080375B1 (zh)
CN (1) CN108243008B (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018183572A1 (en) * 2017-03-29 2018-10-04 Board Of Regents, The University Of Texas System Reducing amount of helper data in silicon physical unclonable functions via lossy compression without production-time error characterization
US11258596B2 (en) * 2018-08-13 2022-02-22 Taiwan Semiconductor Manufacturing Company Ltd. System to generate a signature key and method of operating the same
CN109190358B (zh) * 2018-09-18 2020-10-27 中国科学院计算技术研究所 站点密码生成方法、系统及密码管理器
KR102600349B1 (ko) 2018-11-16 2023-11-09 한국전자통신연구원 링 발진기 구조 기반의 비밀 정보 생성 장치 및 방법
US20200213139A1 (en) * 2018-12-28 2020-07-02 Microchip Technology Incorporated Classifying comparators based on comparator offsets
KR20200082982A (ko) * 2018-12-31 2020-07-08 삼성전자주식회사 물리적 복제방지 기능의 보안을 위한 집적 회로 및 이를 포함하는 장치
CN111431841B (zh) * 2019-01-10 2022-08-02 北京普安信科技有限公司 一种物联网安全感知系统及物联网数据安全传输方法
CN114303341A (zh) * 2019-06-07 2022-04-08 俄亥俄州国家创新基金会 使用混合布尔网络作为物理不可克隆函数的系统和方法
CN112311718B (zh) * 2019-07-24 2023-08-22 华为技术有限公司 检测硬件的方法、装置、设备及存储介质
CN110929299B (zh) * 2019-12-04 2023-10-13 湖北工业大学 针对仲裁器puf的可靠性自检电路与可靠性增强方法
KR20210099777A (ko) * 2020-02-05 2021-08-13 삼성전자주식회사 전자 장치 및 데이터 처리 방법
US11783092B2 (en) 2020-02-10 2023-10-10 Taiwan Semiconductor Manufacturing Company Limited Systems and methods for classifying PUF signature modules of integrated circuits
KR20210158256A (ko) 2020-06-23 2021-12-30 삼성전자주식회사 물리적 복제방지 기능을 위한 집적 회로 및 이의 동작 방법
CN114679277B (zh) * 2022-02-22 2023-05-09 湖北工业大学 一种基于sr puf的可靠性自检和可靠响应去偏方法
CN117896064A (zh) * 2024-03-14 2024-04-16 中国人民解放军火箭军工程大学 一种低计算开销超晶格孪生puf密钥同步方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102546149A (zh) * 2012-01-16 2012-07-04 华南理工大学 一种密码芯片系统及密钥提取方法
CN103051445A (zh) * 2011-10-12 2013-04-17 英飞凌科技股份有限公司 产生位串的装置和方法
CN103198268A (zh) * 2013-03-18 2013-07-10 宁波大学 一种可重构多端口物理不可克隆函数电路
CN103198267A (zh) * 2013-03-18 2013-07-10 宁波大学 一种可重构多端口puf电路单元
EP2773061B1 (en) * 2013-02-28 2015-11-18 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. A method and an apparatus for deriving secret information from a series of response values and a method and an apparatus for providing helper data allowing to derive a secret information

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006038183A1 (en) * 2004-10-04 2006-04-13 Koninklijke Philips Electronics N.V. Two-way error correction for physical tokens
JP2009519537A (ja) * 2005-12-14 2009-05-14 エヌエックスピー ビー ヴィ 物理的トークンに対するキー抽出パラメータのチップ上評価
US8224018B2 (en) * 2006-01-23 2012-07-17 Digimarc Corporation Sensing data from physical objects
JP5291628B2 (ja) * 2006-11-28 2013-09-18 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ シードが与えられる任意数を生成する方法
WO2011048126A1 (en) * 2009-10-21 2011-04-28 Intrinsic Id B.V. Distribution system and method for distributing digital information
WO2012164721A1 (ja) * 2011-06-02 2012-12-06 三菱電機株式会社 鍵情報生成装置及び鍵情報生成方法
US9396357B2 (en) * 2011-12-06 2016-07-19 Intrisic Id B.V. Physically unclonable function (PUF) with improved error correction
WO2013155522A1 (en) * 2012-04-13 2013-10-17 Lewis Innovative Technologies, Inc. Electronic physical unclonable functions
US8525169B1 (en) * 2012-08-10 2013-09-03 International Business Machines Corporation Reliable physical unclonable function for device authentication
US10038446B2 (en) * 2013-08-21 2018-07-31 Carnegie Mellon University Reliability of physical unclonable function circuits
US9992031B2 (en) * 2013-09-27 2018-06-05 Intel Corporation Dark bits to reduce physically unclonable function error rates
US9628272B2 (en) * 2014-01-03 2017-04-18 William Marsh Rice University PUF authentication and key-exchange by substring matching
US9279850B1 (en) * 2014-02-14 2016-03-08 Altera Corporation Physically unclonable functions with enhanced margin testing
US10218517B2 (en) * 2014-03-25 2019-02-26 Carnegie Mellon University Methods for generating reliable responses in physical unclonable functions (PUFs) and methods for designing strong PUFs
US9806718B2 (en) * 2014-05-05 2017-10-31 Analog Devices, Inc. Authenticatable device with reconfigurable physical unclonable functions
US9946858B2 (en) * 2014-05-05 2018-04-17 Analog Devices, Inc. Authentication system and device including physical unclonable function and threshold cryptography
US9548113B2 (en) * 2014-11-21 2017-01-17 Panasonic Intellectual Property Management Co., Ltd. Tamper-resistant non-volatile memory device
US9584329B1 (en) * 2014-11-25 2017-02-28 Xilinx, Inc. Physically unclonable function and helper data indicating unstable bits
KR102201642B1 (ko) * 2014-11-28 2021-01-13 삼성전자주식회사 Puf 회로 및 그것의 키 등록 방법
US9712330B2 (en) * 2014-12-15 2017-07-18 Honeywell International Inc. Physically uncloneable function device using MRAM
JP6608457B2 (ja) * 2014-12-15 2019-11-20 エスティーシー. ユーエヌエム 信頼性を高めた物理的クローン不能関数ビットストリーム生成方法
JP6617924B2 (ja) * 2015-06-18 2019-12-11 パナソニックIpマネジメント株式会社 耐タンパ性を有する不揮発性メモリ装置および集積回路カード、不揮発性メモリ装置の認証方法、個体識別情報生成方法
KR20180102627A (ko) * 2016-01-11 2018-09-17 에스티씨. 유엔엠 프라이버시-보존, 상호 puf-기반 인증 프로토콜
EP3535682A4 (en) * 2016-11-04 2020-06-24 Stc.Unm SYSTEM AND METHODS FOR STATISTICAL QUALITY ENTROPY AND METRIC

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103051445A (zh) * 2011-10-12 2013-04-17 英飞凌科技股份有限公司 产生位串的装置和方法
CN102546149A (zh) * 2012-01-16 2012-07-04 华南理工大学 一种密码芯片系统及密钥提取方法
EP2773061B1 (en) * 2013-02-28 2015-11-18 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. A method and an apparatus for deriving secret information from a series of response values and a method and an apparatus for providing helper data allowing to derive a secret information
CN103198268A (zh) * 2013-03-18 2013-07-10 宁波大学 一种可重构多端口物理不可克隆函数电路
CN103198267A (zh) * 2013-03-18 2013-07-10 宁波大学 一种可重构多端口puf电路单元

Also Published As

Publication number Publication date
EP3340216B1 (en) 2020-01-29
EP3340216A1 (en) 2018-06-27
KR102080375B1 (ko) 2020-02-21
CN108243008A (zh) 2018-07-03
US20180183589A1 (en) 2018-06-28
US11038680B2 (en) 2021-06-15
KR20180074613A (ko) 2018-07-03

Similar Documents

Publication Publication Date Title
CN108243008B (zh) 用于生成秘密信息的系统和方法
CN108243007B (zh) 使用高可靠性物理不可克隆函数生成秘密信息的系统和方法
Armknecht et al. A formalization of the security features of physical functions
Delvaux et al. Helper data algorithms for PUF-based key generation: Overview and analysis
Maes et al. Low-overhead implementation of a soft decision helper data algorithm for SRAM PUFs
US9337837B2 (en) Physical unclonable function generation and management
Baturone et al. Improved generation of identifiers, secret keys, and random numbers from SRAMs
Van der Leest et al. Soft decision error correction for compact memory-based PUFs using a single enrollment
US9501664B1 (en) Method, apparatus and system to compensate for drift by physically unclonable function circuitry
US9298950B2 (en) Undiscoverable physical chip identification
Schaub et al. An improved analysis of reliability and entropy for delay PUFs
Van Den Berg et al. Bias-based modeling and entropy analysis of PUFs
Cortez et al. Intelligent voltage ramp-up time adaptation for temperature noise reduction on memory-based PUF systems
Immler et al. Take a moment and have some t: Hypothesis testing on raw PUF data
Zalivaka et al. FPGA implementation of modeling attack resistant arbiter PUF with enhanced reliability
Wen et al. Efficient fuzzy extractor implementations for PUF based authentication
Hiller et al. Online reliability testing for PUF key derivation
Xu et al. Transfer-path-based hardware-reuse strong PUF achieving modeling attack resilience with200 million training CRPs
Müelich Channel coding for hardware-intrinsic security
Usmani Applications Of Physical Unclonable Functions on ASICS and FPGAs
Sahoo et al. On the architectural analysis of arbiter delay PUF variants
Xu et al. Post-silicon validation and calibration of hardware security primitives
Höberl et al. Towards a Secure Key Generation and Storage Framework on Resource-Constrained Sensor Nodes.
Zadeh et al. Application of simple power analysis to stream ciphers constructed using feedback shift registers
Farahmandi et al. CAD for PUF Security

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