CN110869997B - 电子加密设备、电子登记和重构方法及计算机可读介质 - Google Patents

电子加密设备、电子登记和重构方法及计算机可读介质 Download PDF

Info

Publication number
CN110869997B
CN110869997B CN201880046261.3A CN201880046261A CN110869997B CN 110869997 B CN110869997 B CN 110869997B CN 201880046261 A CN201880046261 A CN 201880046261A CN 110869997 B CN110869997 B CN 110869997B
Authority
CN
China
Prior art keywords
bit string
bits
noisy
bit
noise reduction
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
CN201880046261.3A
Other languages
English (en)
Other versions
CN110869997A (zh
Inventor
E·范德斯拉斯
R·梅斯
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.)
Intrinsic ID BV
Original Assignee
Intrinsic ID BV
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 Intrinsic ID BV filed Critical Intrinsic ID BV
Publication of CN110869997A publication Critical patent/CN110869997A/zh
Application granted granted Critical
Publication of CN110869997B publication Critical patent/CN110869997B/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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • 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
    • 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/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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]
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

一些实施方案涉及一种被布置成确定加密密钥的电子加密设备(100)。该加密设备被布置用于登记阶段和稍后的重构阶段。该加密设备包括物理不可克隆功能(PUF)(110)和处理器电路。所述电路被配置成在登记阶段期间确定去偏置数据(142)、第一降噪数据(131)和第一降噪数据。所述电路被配置成在重构阶段期间由第一经校正的比特和第二经校正的比特计算至少一个加密密钥。

Description

电子加密设备、电子登记和重构方法及计算机可读介质
技术领域
一种电子加密(cryptographic)设备,该电子加密设备被布置成确定加密密钥,一种电子登记方法,该电子登记方法被布置成登记用于稍后确定加密密钥的设备,一种电子重构(reconstruction)方法,该电子重构方法被布置成确定加密密钥,以及一种计算机可读介质。
背景技术
物理不可克隆功能采用制造变化来导出数字标识符。该数字标识符因此被绑定至物理介质。因为物理不可克隆功能取决于随机过程变化,所以易于创建PUF,但是即使不是完全不可能也非常难以创建产生特定预定标识符的PUF。制造变化导致了存储器元件的不同物理特性。例如,物理特性可以包括:掺杂浓度、氧化层厚度、沟道长度、结构宽度(例如,金属层的结构宽度)、寄生现象(例如,电阻、电容)等。当多次制造数字电路设计时,这些物理特性会略微变化且它们将共同引起IC元件(例如,存储器元件)的行为在一些情况下表现不同。例如,启动行为是由物理特性中的制造变化确定的。
PUF产生设备本征和不可预测的响应的事实使得它们成为生成加密密钥的非常合适的候选。与传统非易失性密钥存储器相对比,基于PUF的密钥不以数字格式存储,而是源于PUF的物理结构中的小的随机偏差。此外,密钥本身的生成不取决于外部提供的随机性,该外部提供的随机性可能具有低质量,而是使用设备本身的高熵本征随机性。这些因素的组合可以形成针对加密密钥存储高度安全的解决方案。
使用PUF,可以规避对存储密钥的安全存储器的需求。此外,PUF提供了防止通过逆向工程获得加密密钥的恶意尝试的自然保护,这是因为在尝试期间对PUF造成的损坏很可能改变数字标识符。优选地,所述数字标识符对于内部嵌入物理不可克隆功能的电子设备是唯一的。
例如,已经观察到,一些存储器元件的启动行为展示像PUF那样的行为。当这样的存储器被加电时,它倾向于含有内容,即包括数据值的序列,该内容取决于组成该存储器的部件(例如,门或晶体管)的至少部分随机的物理特性,例如它们相对于彼此的物理布置。如果存储器被加电多次,则它将大比例地含有相同内容。
PUF提供了不可预测的响应和设备唯一的响应,但由于它们的物理起源,这些响应可能受测量噪声和环境影响。另一方面,加密密钥需要可靠且具有全熵。为了弥补这一缺陷,需要对PUF响应进行一定数量的后期处理。解决噪声的一种方法是使用所谓的模糊提取器(fuzzy extractor)。模糊提取器能够将“噪声”随机值变换成可靠的密钥。在此过程中可以使用纠错程序来校正这些波动,且确保每次使用PUF时导出相同的数字标识符。纠错程序使用所谓的辅助数据(helper data)。辅助数据也被称为降噪数据。
模糊提取器可以包括两个阶段。在最初的登记(enrollment)阶段中,从PUF响应导出加密密钥。在登记过程中,产生用于PUF响应的辅助数据或降噪数据。稍后例如在实地,重构阶段重新评估PUF响应,且使用来自登记阶段的降噪数据重构相同的密钥。因此,在登记阶段和重构阶段中间需要存储降噪数据。重构阶段有时被称为使用阶段。
在这方面对模糊提取器的期望属性是降噪数据不包含关于所导出的密钥的信息。换句话说,降噪数据不包含敏感信息,且不能够被用来攻击所生成的密钥。因此,降噪数据可以被存储和公开地通信,且因为将需要直接存储密钥而不需要防御敌手。
模糊提取器的操作可以是基于使用纠错码。通常,纠错码是分组码(block code)且是线性的,例如纠错分组码。在登记期间,模糊提取器计算PUF响应的降噪数据,例如通过计算PUF响应比特上的若干奇偶校验关系且在降噪数据中公开这些关系。可以计算降噪数据,例如通过计算一个或多个码字和PUF响应之间的差异。此类降噪数据有时被称为码字偏移。
申请人发现,如果PUF具有高偏置(bias),则通过降噪数据造成的关于密钥的信息泄露是非零的。事实上,如果PUF具有非常高的偏置,则降噪数据甚至可以揭示足够的关于密钥的信息,从而允许攻击者完全重构密钥。
出版物“由偏置PUF的安全密钥生成(Secure key generation from biasedPUFs)”(参见Cryptology ePrint Archive:Report 2015/583,以引用方式包含在本文中)公开了高偏置的情况下潜在的全熵损失问题的解决方案。此论文的简短版本也在CHES-2015上被接受发表。根据此文章,通过对PUF去偏置可以获得解决方案。例如,在登记期间,可以通过将第一噪声比特串中的比特标记为保留或丢弃来减少偏置。然后,可以仅由所保留的比特导出密钥。因为所保留的部分比整个PUF响应具有更低的偏置,所以减少了由于PUF偏置所造成的熵损失问题。
很遗憾,在上述论文中所呈现的解决方案仍然具有一些缺点。
首先,所呈现的解决方案丢弃了大量比特来获得PUF响应的较少偏置的子字符串。在简单的方法中,对于无偏置的PUF,PUF响应中大约50%的比特被丢弃。对于经偏置的PUF,所丢弃的比特的数目甚至会更高。在某些更完善的方法中,递归应用可以在一定程度上减小此数目,但以更复杂的系统为代价。然而即使在那些情况下,大数目的比特仍然未被使用。这是有问题的,特别是在存储器(例如,基于SRAM的PUF)非常紧缺的低资源系统中。
其次,并非所有已知方法都可以被登记多次。重复登记是基于PUF的系统的潜在安全风险。如果攻击者可以迫使系统返回至未初始化状态且重复登记程序,则他可能获得新的降噪数据。将来自原始降噪数据的信息与来自新的降噪数据的信息组合可能允许攻击者更多地了解PUF响应。因此,期望的是,登记程序可以承受重复的登记。很遗憾,上述递归方法不能与可以抵制多次登记的方案组合。
换言之,传统的辅助数据使用所有PUF熵,但是经受由于泄露所导致的降低的熵,且在PUF被偏置时变得不安全,直到没有熵剩余的程度。不同形式的去偏置保持处于偏置的熵,甚至保持全熵,但是需要丢弃大部分PUF熵:需要两倍以上的PUF比特。两种方法都有很大的缺点,一种方法需要大量的PUF资源,而另一种方法可以在存在足够的偏置时被完全破坏。
因此,期望一种解决了这些和其他问题的基于PUF的系统。参见公开号为WO2016102164的国际专利申请PCT/EP2015/078454(以引用方式包含在本文中),该申请也公开了由经偏置的PUF的加密密钥产生。
发明内容
提供了一种被布置成确定加密密钥的电子加密设备。该加密设备被布置用于登记阶段和稍后的重构阶段。该加密设备包括:
-物理不可克隆功能,被布置成在所述登记阶段期间产生第一噪声比特串且在所述重构阶段期间产生第二噪声比特串,以及
-处理器电路,被配置成:
-在所述登记阶段期间由所述第一噪声比特串确定去偏置数据,所述去偏置数据将所述第一噪声比特串的第一部分标记为低偏置敏感的(bias susceptible),且将所述第一噪声比特串的第二部分中的比特标记为高偏置敏感的,
-在所述登记阶段期间为所述第一部分确定第一降噪数据且为所述第二部分确定第二降噪数据,降噪数据允许稍后在所述重构阶段期间校正所述第二噪声比特串和所述第一噪声比特串之间的差异,
-在所述重构阶段期间基于所述去偏置数据标识所述第二噪声比特串中的第一部分和第二部分,
-基于所述第一降噪数据执行所述第二噪声比特串的所述第一部分和所述第一噪声比特串的所述第一部分之间的差异的第一校正,从而获得第一经校正的比特,且基于所述第二降噪数据执行所述第二噪声比特串的所述第二部分和所述第一噪声比特串的所述第二部分之间的差异的第二校正,从而获得第二经校正的比特,其中所述第一校正和所述第二校正是彼此独立的,
-由所述第一经校正的比特和所述第二经校正的比特计算至少一个加密密钥。
在一般偏置的情况下和在较高偏置的情况下,所述加密设备均产生可接受的结果。在存在一般偏置的情况下,通过降噪数据造成的熵损失较小,且所述第一经校正的比特和第二经校正的比特的熵很高。在PUF输出中存在较高偏置的情况下,即使所述第二经校正的比特中的熵损失可能很严重,也会减轻所述第一经校正的比特的熵损失。因此,可以无需大大增加PUF资源来生成密钥,而且还不会有当存在足够的偏置时被完全破坏的风险。
加密密钥可以在许多加密协议中使用,包括使用加密密钥对信息加密或解密、使用加密密钥对信息电子签名等。从PUF所导出的加密密钥可以是对称的或不对称的密钥。例如,可以由PUF导出公共/私人密钥对,之后可以从设备输出所述公共密钥。本发明中所描述的设备和方法的实施方案可以应用在广泛的实际应用中。此类应用包括:银行卡、SIM卡、按次付费的智能卡、ID卡等。
根据本发明的方法可以被实施在计算机上作为计算机实施的方法,或可以被实施在专用硬件中或可以被实施在这二者的组合中。用于根据本发明的方法的可执行代码可以被存储在计算机程序产品上。计算机程序产品的实施例包括存储器设备、光学存储设备、集成电路、服务器、在线软件等。优选地,该计算机程序产品包括存储在计算机可读介质上的非暂时性程序代码,用于当在计算机上执行所述程序产品时执行根据本发明的方法。
在一个优选地实施方案中,该计算机程序包括计算机程序代码,当该计算机程序在计算机上运行时,该计算机程序代码适于执行根据本发明的方法的所有步骤。优选地,该计算机程序实现在计算机可读介质上。
本发明的另一方面提供了使计算机程序可供下载的方法。当将计算机程序上传到例如Apple的App Store、Google的Play Store或Microsoft的Windows Store中时,且当该计算机程序可从这样的商店下载时,使用此方面。
附图说明
将参考附图仅以实施例的方式描述本发明的其他细节、方面和实施方案。为了简单明了目的例示了图中的元件,且所述元件不必按比例绘制。在图中,与已经描述的元件对应的元件可以具有相同的附图标记。在附图中,
图1示意性地示出了加密设备的一个实施方案的实施例,
图2a-图2d示意性地示出了由第一经校正的比特和第二经校正的比特计算至少一个加密密钥的实施例,
图3示意性地示出了登记的实施例,
图4示意性地示出了重构的实施例,
图5示意性地示出了电子登记方法600的一个实施方案的实施例,
图6示意性地示出了电子重构方法700的一个实施方案的实施例,
图7a示意性地示出了具有包括根据一个实施方案的计算机程序的可写部分的计算机可读介质,
图7b示意性地示出了根据一个实施方案的处理器系统的表示。
图1-图2d中的附图标记的列表:
100 电子加密设备
110 物理不可克隆功能(PUF)
112 第一噪声比特串
114 第二噪声比特串
120 去偏置单元
121 第一噪声比特串的第一低偏置敏感部分
122 第二噪声比特串的第二高偏置敏感部分
130 降噪单元
131 第一降噪单元
132 第二降噪单元
140 存储器
142 去偏置数据
144 降噪数据
150 密钥重构单元
151 第二噪声比特串的第一部分
152 第二噪声比特串的第二部分
160 标准化器
161 一个或多个噪声第一码字
162 一个或多个噪声第二码字
170 纠错器
171 第一经校正的比特
172 第二经校正的比特
180 密钥导出单元
181-187 加密密钥
具体实施方式
虽然本发明可能有许多不同形式的实施方案,但是附图中示出了且将在本文中详细描述一个或多个具体实施方案;应理解,本公开内容应被认为是本发明的原理的例示,而不意在将本发明限于所示出的和所描述的具体实施方案。
在下文中,出于理解的目的,在操作中描述了实施方案的元件。然而,很明显,相应的元件被布置成执行所描述的由它们执行的功能。
此外,本发明不限于所述实施方案,且本发明在于本文中所描述的每一个新颖特征或特征的组合。
图1示意性地示出了电子加密设备100的一个实施方案的实施例。
电子加密设备100包括所谓的物理不可克隆功能110,所述物理不可克隆功能110通常被称为PUF。电子加密设备100被布置成确定加密密钥。该加密设备被布置用于登记阶段和稍后的重构阶段。PUF 110被布置成在登记阶段期间产生第一噪声比特串112,且在重构阶段期间产生第二噪声比特串114。在可以重复多次的重构阶段期间,产生相同的加密密钥。在登记阶段期间,可以产生使得能够重复地产生相同的加密密钥和/或降低PUF中的偏置的数据。
在处理器电路中实施由PUF确定密钥,下面示出了该处理器电路的实施例。图1示出了可能是处理器电路的功能单元的功能单元。例如,图1可以被用作处理器电路的可能的功能组织的蓝图。处理器电路未与图1中的单元分开示出。例如,图1中所示出的功能单元也可以全部或部分地以计算机指令实施,该计算机指令被存储在加密设备处且由加密设备的微处理器可执行。在混合实施方案中,功能单元部分地以硬件实施,例如被实施为协处理器(例如,加密协处理器),且部分地以软件实施,所述软件在加密设备上被存储和执行。
随后产生的噪声比特串之间的改变量对于不同类型的PUF是不同的;根据改变量,可以选择纠错码来校正该改变量。噪声比特串足够稳定且足够长,以产生加密密钥。可以根据期望的密钥长度、PUF的错误百分比和/或PUF的偏置水平等来选择PUF的噪声比特串的长度。
PUF 110可能需要一个电力循环,例如掉电之后加电以再次产生噪声比特串。加电信号可以被认作是询问(challenge)。在电子加密设备100中,PUF 110至少两次产生噪声比特串。一次在登记阶段期间,PUF 110产生第一噪声比特串112。稍后在使用阶段期间,PUF110产生第二噪声比特串114。所述第一噪声比特串和所述第二噪声比特串彼此足够接近,例如它们的差异的汉明权重小于一个阈值。
PUF是随机功能,所述随机功能以这样一种方式被限制至物理设备,使得在不使用该物理设备来实际上评估该功能的情况下,预测该功能的输出在计算上不可行。此外,因为PUF是通过物理系统实现的,所以难以克隆。由不完全受控(即,含有一些随机性)的产生过程所产生的物理系统证明是PUF的良好候选。在一个实施方案中,PUF 110从而电子加密设备100可以是基于由PUF 110所提供的响应以及由其所导出的密钥而被唯一地标识的。密钥可以被用作标识设备的标识符。
PUF的物理系统被设计成使得它以复杂的方式与激励相互作用且导致唯一但不可预测的响应。PUF的激励被称为询问。一些PUF允许较大范围的不同询问,产生不同的响应。PUF询问和对应的响应一起被称为询问-响应-对。尽管如此,PUF也可以具有单个询问。PUF110可以是单询问PUF。PUF 110也可以是多询问PUF。在PUF 110是多询问PUF的情况下,当产生噪声比特串特别是第一噪声比特串和第二噪声比特串时,用相同的询问或询问集合询问PUF 110。
合适的PUF源由在加电时含有对存储器的标识有用的加电值的响应模式的电子易失存储器形成,所述响应模式取决于存储器元件的物理特性。
用来唯一地标识设备的PUF的一个已知的实施例是所谓的SRAM PUF,其是基于以下事实:当启动SRAM单元时,由于晶体管的阈值电压的变化(这些变化进而由于掺杂变化造成),SRAM单元以随机状态启动。当这被执行多次时,每个单元在大多数时间将以相同的状态启动。这些PUF可以被实现在具有板上SRAM存储器的任何设备上。
表现出对于标识存储器足够稳定的随机启动行为的任何存储器被称为可询问的存储器。因为启动行为是随机的,所述两个不同的存储器的启动存储器模式将具有很大差异;因为启动行为是稳定的,所以同一存储器的两个启动存储器模式将具有很小差异。这样的存储器的实施例不仅是所提及的SRAM存储器单元,而且还有像触发器(flip-flop)那样的存储器元件。实际上,可以使用包括多个反馈回路的任何类型的易失性存储器。
第二类基于PUF的SRAM可以由双端口RAM构建。通过同时在两个端口上写入不同的信息,存储器单元进入未定义的状态且表现出类似PUF的行为。在WO2009024913中更详细地描述了此类PUF。其他所谓的本征PUF是基于延时现象,参见例如US20030204743。PUF可以是通过在FPGA上仿真SRAM存储器,例如通过交叉耦合的逆变器或锁存器来构建的,所谓的蝴蝶PUF参见欧洲专利EP2191410B1和WO2011018414A2。PUF 110可以是包括多个总线保持器(例如,WO2012069545中所描述的)的物理不可克隆功能。
电子加密设备100包括去偏置单元120。去偏置单元120被布置成在登记阶段期间由第一噪声比特串确定去偏置数据142。去偏置数据将第一噪声比特串112的第一部分121标记为低偏置敏感,且将第一噪声比特串112的第二部分122标记为高偏置敏感。例如,第一部分121具有与第一噪声比特串112相比更低的偏置。第一部分121甚至可能是无偏置的。例如,如果第一噪声比特串112的第一部分121中的比特具有比第一噪声比特串112的第二部分122中的比特更低的偏置或者甚至更少的偏置或者相等的偏置,则它们可能被标记为低偏置敏感的,第一噪声比特串112的第二部分122中的比特则可以被视为高偏置敏感的。例如,去偏置数据可以通过标记(例如,标识或选择)第一部分和/或第二部分的比特来标记第一部分121和/或第二部分122。
在本申请中,偏置是指1比特或0比特中的一个比1比特或0比特中的另一个概率更大的情况。例如,PUF的偏置可以被限定为产生1比特的概率与产生0比特的概率之间的绝对差异。偏置还可以被限定为1比特的概率和0比特的概率的最大值。通过比较多个设备可以确定一个特定的比特位置的偏置。通常地,对于较大部分的比特位置,偏置是一致的。对于一些PUF,尤其是基于存储器的PUF,在整个存储器上偏置可能存在一些变化。例如,在整个存储器上偏置可以变化,但对于较大的区域是恒定的;例如,存储器的前半部和后半部可以各自具有恒定的偏置,但彼此不同。偏置还可以在局部变化,例如,一些存储器表现出偶数比特位置和奇数比特位置的偏置差异。
具有低偏置的PUF将至少平均产生一个比特串,其中1比特的分数(fraction)与0比特的分数之间的绝对差异很小。分数可以被认为是1比特或0比特的数目分别除以串的长度。
该去偏置数据被选择成使得在去偏置之后PUF 110的输出的第一部分具有的偏置比PUF 110的立即响应低。在一个实施方案中,去偏置单元120被布置成使得所述第一比特串中被去偏置信息标记为被保留的比特之中的1比特的分数和0比特的分数之间的绝对差异比所述第一噪声比特串之中小。在一个实施方案中,去偏置单元120可以被布置成选择该第一部分使得所述第一比特串中被去偏置信息标记为被保留的比特之中的1比特的分数和0比特的分数之间的绝对差异为零。
注意,低偏置敏感性或高偏置敏感性是所选择的比特集合的属性。即使个体比特本身共享相同的敏感性,通过组合1比特和0比特的适当组合实现了整体较低偏置敏感性。
在一个较简单的实施方案中,该去偏置单元可以被布置有比PUF响应的比特长度小的预定数目k。该数目被选择成使得考虑到偏置,PUF 110将具有至少k个0比特和至少k个1比特的概率很高。事实上,对于任何实际偏置,假设PUF响应的比特长度可以被取得足够高,则此概率可以是任意高的。
去偏置单元可以被布置成通过从第一PUF响应中的比特之中随机选择k个0比特和k个1比特作为被保留的,丢弃所有其他比特来选择该第一部分。去偏置数据142指示在登记阶段期间哪些比特被标记为被保留的和被丢弃的。此信息可以以多种方式被记录。例如,去偏置数据142可以包括一个比特掩码来指示被保留的比特。稍后可以选择所述被保留的比特,比如说通过逐比特“与”操作。例如,去偏置数据142可以包括指向所选择的比特的一系列索引。
此随机选择k个0比特和k个1比特的方法起到了降低甚至去除偏置的作用,但仍然存在一些缺点。首先,由于恰好选择k个0和1,所以不可预测性(即,熵)实际上被降低一些,因为攻击者知道恰好存在k个0和1;在一个真正随机的串中未必是相同数目的0和1比特。此外,可以使用用于随机选择0和1的随机方法。然而,独立随机源可能不可用。下面的一些实施方案不需要独立的随机源,但是为此使用比特串中的固有随机性。
最后,如果偏置不一致,则一些不一致性可能残存于“去偏置的”比特串中。例如,如果在PUF中存在位置相关的偏置,比如说PUF响应的第一部分与PUF响应的第二部分具有不同的偏置(例如,一半响应被偏置到0,另一半被偏置到1),则此方法可能不能够将其去除,即“去偏置的”比特串仍会具有相同的基于位置的偏置。下面示出的实施方案不具有此弱点,原因是它们局部地去偏置。
在已经选择了输出的第一部分之后,第二部分可以被限定为PUF响应的其余部分。通常地,仅使用第一部分和第二部分,但是在一个实施方案中,可能有两个以上的部分。例如,第一部分可以具有最低的偏置,第二部分具有较低偏置且第三部分具有最高偏置。去偏置数据指示第一噪声比特串112中的哪些比特是第一部分、第二部分等的一部分。在此情况下,可以在登记期间为每个部分生成独立秘密,且为每个部分从中计算降噪数据。
去偏置数据可以例如包括在第一噪声比特串中指示一个或多个比特的索引。例如,串中的索引可以是比特串中的位置,例如,根据某种位寻址方案的地址。例如,比特可以连续地编号,例如从LSB到MSB,反之亦然,等等。去偏置数据可以包括一个比特掩码,该比特掩码标识多个部分中的比特等。虽然由第一噪声比特串112的比特内容确定去偏置数据,但是一旦确定,去偏置数据就独立于比特串的内容对多个部分中的比特进行寻址。此属性允许将去偏置数据稍后应用至第二噪声比特串。
选择第一部分的一种特别有利的方式是将第一噪声比特串视为比特对序列。去偏置数据将一些比特对指派至第一部分且将一些比特对指派至第二部分。
例如,第一噪声比特串和第二噪声比特串可以分别被分割成第一比特对序列和第二比特对序列。去偏置单元120可以被配置成将第一比特对序列中的不相等比特对中的比特标识为低偏置敏感的,且将第一比特对序列中的相等比特对中的比特标识为高偏置敏感的。即使一个比特的概率是p≠1/2,不相等对01和10的概率是相同的p(1-p)。下面将参考图3和图4进一步扩展此方法。
通过为第一部分仅选择不相等比特对,保证了第一部分将具有零偏置。尽管不太可能,但是第二部分也可能恰好具有零偏置,例如,假如00相等对的数目与11相等对的数目相同。这不是问题,在此情况下,低偏置敏感的第一部分比高偏置敏感的第二部分具有更少或相等的偏置。
设备101包括降噪单元130。降噪单元130被布置成在登记阶段期间为第一部分确定第一降噪数据131且为第二部分确定第二降噪数据132。降噪数据允许稍后在重构阶段期间校正第二噪声比特串和第一噪声比特串之间的差异。在登记阶段期间(即,在重构阶段之前)确定降噪数据。
可选地,电子加密设备100包括存储器140,例如非易失性可写存储器,比如说闪速存储器,用于存储去偏置数据142和降噪数据144。降噪数据144包括用于第一部分的第一降噪数据131和用于第二部分的第二降噪数据132。代替包括在电子加密设备100中的存储器140,一个实施方案外部地存储去偏置数据142和降噪数据144。去偏置数据142和降噪数据144可以被组合成单个比特串。
确定降噪数据的一种方式是所谓的基于纠错码的码-偏移方法。使用这样的降噪数据的校正可以使用标准化器和纠错器的组合,且有时被称为模糊提取器。密钥导出也可以被包括在模糊提取器中。
例如,在登记阶段中,降噪单元130可以从纠错码中选择一个或多个第一码字且从纠错码中选择一个或多个第二码字。通常地,从相同的纠错码中选择所述第一码字和第二码字,但这不是必需的;它们可以替代地分别从不同的第一纠错码和第二纠错码中选择。
纠错码可以被视为具有正最小汉明距离的一组比特串(码字)。纠错码可以具有将消息映射至来自纠错码的一个或多个码字的编码算法、执行逆映射的解码算法以及将噪声码字映射至最接近的实际码字的校正算法。如果需要,可以组合解码算法和校正算法。在纠错中,将错误与擦除(erasure)区分开。如果一个比特不同于最接近的码字中的对应比特,则噪声比特串中存在错误。在一个错误的情况下,该错误的位置是未知的。如果噪声码字中的一个特定比特的值是未知的,则存在擦除。纠错码可以校正错误和校正擦除这两者,但是因为丢失了较少信息,所以相对于校正错误,纠错码通常可以校正更多的擦除。
一个或多个随机码字可以例如选自一个码,例如通过对随机选择的种子进行编码。随机码字也可以被直接选择等。
降噪单元130可以被布置成通过计算第一噪声比特串的第一部分中的对应比特与所述一个或多个第一码字中的对应比特之间的偏移(例如,差异(例如,XOR))来确定第一降噪数据。同样地,降噪单元130可以被布置成通过计算第一噪声比特串的第二部分中的对应比特与所述一个或多个第二码字中的对应比特之间的偏移来确定第二降噪数据。如果需要使第一噪声比特串成为码字大小的倍数,则可以填充或缩短该第一噪声比特串。
例如,可以在第一噪声比特串的第一部分或第二部分中的比特与在这些相应串中具有相同索引的一个或多个第一码字或第二码字中的比特之间计算偏移。在一个实施方案中,所述一个或多个第一码字和所述一个或多个第二码字具有相同的长度。优选地,所述一个或多个第一码字与第一噪声比特串一样长或比第一噪声比特串更长,且所述一个或多个第二码字也是如此。在此情况下,第一噪声比特串中的每个比特对应于所述一个或多个第一码字中的比特和所述一个或多个第二码字中的比特,例如,串中具有相同索引(例如,比特地址)的比特。
有利的是,计算在第一部分或第二部分与一个或多个第一码字或第二码字之间的偏移,所述一个或多个第一码字或第二码字与整个第一噪声比特串一样长,而不仅仅是与所述第一噪声比特串的第一部分或第二部分一样长。例如,降噪单元130可以被布置成仅为第一噪声比特串的第一部分中的比特确定第一噪声比特串与一个或多个第一码字之间的偏移,但是仅为第一噪声比特串的第二部分中的比特确定第一噪声比特串与一个或多个第二码字之间的偏移。当计算这样的一个或多个第一码字与第一部分之间的偏移时,降噪单元130实际上可以计算整个第一噪声比特串112与一个或多个第一码字之间的偏移,而忽略第一噪声比特串112中处于第一部分中的那些比特。第一降噪数据131可以与第一噪声比特串具有相同的长度,但是包括对应于第一部分的比特的偏移,且指示对应于第二部分的比特的擦除,例如擦除符号或擦除串等。同样地,可以计算第二降噪数据,其中第一角色和第二角色颠倒。
在一个实施方案中,第一降噪数据具有用于PUF响应的第一部分中的每个比特的偏移以及用于第二部分中的每个比特的擦除,且对于第二降噪数据反之亦然。计算整个第一PUF响应的降噪数据,但是第二部分或第一部分中的比特被忽略为擦除,导致第一降噪数据或第二降噪数据中具有擦除,从而导致比仅为第一部分或第二部分中的比特计算降噪数据更好的结果。例如,可以通过分别级联第一部分和第二部分中的比特形成第一经导出的PUF响应和第二经导出的PUF响应来实现后者,然后为第一经导出的PUF和第二经导出的PUF响应计算降噪数据。
重要的是,高偏置比特和低偏置比特不在相同的纠错码字中使用。由于纠错码字的性质,所以码字的已知部分允许填写缺失部分。如果泄露了码字的低偏置比特,则这将允许填充高偏置比特(的一部分)。但是,如果明确地分开码字,则低偏置比特可以仅泄露低偏置比特且不泄露高偏置比特。
在一个实施方案中,降噪单元130不计算第一噪声比特串的第一部分中的比特与一个或多个第二码字中的对应比特之间的偏移,或者第一噪声比特串的第二部分中的比特与一个或多个第一码字中的对应比特之间的偏移。
无论是在第一部分还是在第二部分中,都为第一噪声比特串中的所有比特计算降噪数据提高了抵抗重新登记攻击的能力。例如,重新登记攻击需要偏置来降低搜索空间的熵。然而,由于包含了比特泄露的空间(低偏置、不是高偏置),所以不能完全降低熵。
除了码偏移方法之外,还存在构建降噪数据的其他方法。例如,PUF输出可以被认为是这样的数据比特,根据纠错码为这些数据比特计算奇偶校验比特。奇偶校验比特被存储为降噪数据。为了重构PUF响应,为新的PUF响应计算相同的奇偶校验比特且将其与所存储的奇偶校验比特进行比较。根据奇偶校验比特之间的差异,可以对第一噪声PUF响应比特和第二噪声PUF响应比特之间的差异进行解码,且可以通过相应地校正第二PUF响应来重构第一PUF响应。此构造有时被称为校验子(syndrome)-构建辅助数据。这可以与去偏置组合。
电子加密设备100还包括密钥重构单元150。在一些实施方案中,电子加密设备100仅需要包含登记单元(例如,去偏置单元120、降噪单元130)或重构单元(例如,密钥重构单元150)。例如,如果电子加密设备100是基于软件的,则它可以被配置成在登记完成之后删除登记单元的软件。例如,电子加密设备100可以在登记完成之后下载实施重构单元150的软件,例如,代替登记单元。在登记完成之后去除登记单元具有的优点是更难以执行重新登记攻击。在图1中,例示了同时存在登记单元和重构单元的实施方案,即使它们被用在不同的阶段中。
密钥重构单元150被布置成使用去偏置和降噪数据由第二噪声比特串中的比特确定加密密钥。密钥重构单元150被配置成由PUF 110获得第二噪声比特串114。第二噪声比特串114将接近但是(最有可能)不同于第一噪声比特串。随着PUF 110的噪声水平增加,纠错码的最小距离也增加了,直到达到与预期应用兼容的可靠性水平为止。
密钥重构单元150被配置成在重构阶段期间基于去偏置数据标识第二噪声比特串114中的第一部分151和第二部分152。例如,密钥重构单元150可以被布置成由第二PUF响应选择标记为该第一部分中的比特且通过去偏置数据142选择标记为该第二部分中的比特。以此方式,获得第二噪声比特串的第一部分151和第二噪声比特串的第二部分152。在一个实施方案中,串151和152分别保留来自第二噪声比特串114的第一部分或第二部分中的比特,且将第二部分或第一部分中的比特标记为擦除。
密钥重构单元150被配置成执行两次校正:基于第一降噪数据进行第二噪声比特串的第一部分与第一噪声比特串的第一部分之间的差异的第一校正,以及基于第二降噪数据进行第二噪声比特串的第二部分与第一噪声比特串的第二部分之间的差异的第二校正。所述校正使用与选定类型的降噪数据兼容的纠错类型。下面将假设使用了码字偏移方法,但是不同类型的降噪数据是可能的。通过所述校正,获得了第一经校正的比特171和第二经校正的比特172。对于经校正的比特存在至少三个选项:它们可以是在登记期间所选定的第一码字或第二码字,它们可以是在登记期间且在解码之后所选定的经解码的第一码字或第二码字,以及它们可以是PUF响应的比特。使用码字或经解码的码字是优选的,因为这似乎更有效。然而,在不同的使用情况下,其他折衷方案可能更有效。
码字和经解码的码字中的熵的量是相同,所以对于导出密钥,使用哪个不重要。可以跳过解码步骤直接从码字计算密钥。为了实施,解码可能会更容易,例如,如果使用具有两个或多个校正阶段的级联码。在后面的情况下,由经校正的码字直接计算密钥。
第一校正和第二校正彼此独立,且可以例如并行地执行。特别地,高偏置敏感比特的第二校正不影响低偏置敏感比特的校正。最终,由第一经校正的比特和第二经校正的比特导出至少一个加密密钥。下面将参考图2a至图2d讨论多个选项。
在使用码字偏移方法的情况下,电子加密设备100可以包括标准化器160。标准化器160被配置成通过将第一降噪数据131应用至第二噪声比特串的第一部分151中的比特且标记擦除比特来获得一个或多个噪声第一码字161,所述一个或多个噪声第一码字中的比特对应于第二噪声比特串的第二部分中的比特。同样地,标准化器160被配置成通过将第二降噪数据132应用至第二噪声比特串114的第二部分152中的比特来获得一个或多个噪声第二码字162。例如,通过将降噪数据与相关比特相加(例如,XOR)来应用降噪数据。第二PUF响应的错的部分中的比特可以被忽略或被标记为擦除。如果在降噪数据中使用擦除,则整个降噪数据可以被添加至第二PUF响应,前提是擦除加上任何比特(0或1)等于擦除。
由于第一噪声码字和第二噪声码字是从类似于第一PUF响应的第二PUF响应获得的,所以它们将看起来分别类似于原始的一个或多个第一码字和第二码字。差异可能是由两个来源引起的:一些比特可能由于PUF引起的错误而是错的,一些比特可能被标记为由于去偏置数据引起的擦除。
密钥重构单元150包括纠错器170,用于校正一个或多个噪声第一码字161,以及用于校正一个或多个噪声第二码字162。纠错器170被配置成校正错误和擦除这两者。通常,线性分组码可以校正t个擦除和e个错误,前提是2t+e<d,其中d是纠错码的最小距离。基于PUF110的错误率和偏置,d的值可以被计算使得上述不等式保持具有足够高的概率。可以通过重复测量来自PUF 110或者来自一批类似的PUF等的PUF输出来凭经验测量错误率和偏置。也可以通过实验获得合适的d值;例如,增加d,直到系统足够可靠为止。通过应用降噪数据将第一PUF响应和第二PUF响应之间的差异导入到噪声码字中且稍后通过纠错器170校正。
电子加密设备100可以包括密钥导出单元180。密钥导出从纠错器170的输出导出加密密钥。例如,密钥导出单元180可以将密钥导出函数应用至一个或多个经校正的码字或者应用至经解码的码字等。替代地,密钥导出单元180可以将密钥导出函数(KDF)应用至一个或多个经校正的码字的解码,或者应用至经校正的PUF响应比特,或者应用至经解码的码字。这样的密钥导出函数的实施例包括在IEEE标准1363-2000、NIST-SP800-108和56-C中所限定的KDF1,以及ANSI X9.42等中的类似函数。该密钥导出函数可以是散列函数。参考图2a至图2d讨论了类似的实施例。
注意,密钥重构单元150不执行新的去偏置操作,新的去偏置操作可能导致与原始选择非常不同的新选择。相反,重构单元150应用在登记阶段期间所获得的去偏置数据。例如,去偏置数据可以例如本地存储在电子加密设备100处,或外部地存储在例如(例如,通过电子数据连接)可连接至电子加密设备100的服务器中。
可以由级联码构造获得合适的纠错码。在这样的构造中,根据纠错码B(内部码)对来自纠错码A(外部码)的一个或多个码字a的比特进行编码,例如,如同它们是消息一样。例如,降噪单元130可以被布置成通过对来自另一纠错码的一个或多个另外码字进行编码来从第一纠错码或第二纠错码中选择一个或多个第一码字或第二码字。纠错码的内部码有利地是重复码。这样的码具有的优点是,它具有非常高的最小距离以及对于错误和擦除都非常快的纠错。外部码可以具有较低的最小距离和较高的纠错复杂性,例如,Reed-Solomon码。在WO2016/102164中,例如参考图6c和图6d,给出了这样的码构造的一个实施例。该专利申请还提出了可以如何对这样的码进行解码。在一个实施方案中,内部码具有偶数长度的码字。
电子加密设备100可以包括通信接口,例如,输入接口和/或输出接口。例如,通信接口可以被配置成接收加密消息(例如,电子加密设备100可以使用从PUF 110所导出的密钥对该加密消息进行解密)或者认证请求(电子加密设备100可以使用从PUF 110所导出的密钥对该认证请求进行响应)等。例如,电子加密设备100可以发送使用从PUF 110所导出的密钥进行加密和/或认证的消息。可以从多种替代物中选择所述通信接口。例如,通信接口可以是通向局域网或广域网(例如,因特网)的网络接口、通向内部数据存储或外部数据存储的存储接口、键盘、应用接口(API)等。
电子加密设备100可以具有用户接口,该用户接口可以包括已知的元件,诸如一个或多个按钮、键盘、显示器和/或触摸屏等。用户接口可以被布置成适应用户交互用于执行受保护的通信,例如被保护用于保密性和/或完整性。
存储器140可以被实施为电子存储器(例如,闪速存储器),或者磁性存储器(例如,硬盘等)。存储器140可以包括一起构成存储器140的多个分立存储器。存储器140也可以是临时存储器,比方说RAM。在临时存储器的情况下,存储器140包含一些装置以在使用之前获得数据,例如通过在可选的网络连接(未单独示出)上获得数据。
通常地,电子加密设备100包括一个执行存储在电子加密设备100处的适当软件的微处理器(在图1中未单独示出);例如该软件可能已经被下载和/或被存储在对应的存储器(例如,易失性存储器(诸如,RAM)或非易失性存储器(诸如,闪存(未单独示出)))内。替代地,电子加密设备100可以整体地或部分地以可编程逻辑实施为例如现场可编程门阵列(FPGA)。电子加密设备100可以整体地或部分地被实施为所谓的专用集成电路(ASIC),即为它们的特定用途定制的集成电路(IC)。例如,电路可以例如使用硬件描述语言(诸如,Verilog、VHDL等)以CMOS来实施。
在一个实施方案中,电子加密设备100包括去偏置单元电路、降噪单元电路、存储器电路、密钥重构单元电路、标准化器电路、纠错器电路和密钥导出单元电路。所述电路实施本文所描述的对应的单元。所述电路可以是处理器电路和存储器电路,该处理器电路执行所述存储器电路中以电子方式表示的指令。所述电路还可以是FPGA、ASIC等。
实施方案可以使用较小的PUF且仍然具有即使面对偏置也具有足够熵的密钥。例如,如果PUF是基于SRAM的PUF,则需要较少的SRAM。例如,这可以用在资源有限的设备中,例如具有多个传感器节点的传感器网络。包括加密设备的传感器节点,例如图1中所示。例如,加密设备可以是网络节点,使用所导出的密钥来例如与网络中的其他网络节点通信。
图2a至图2d示意性地示出了由第一经校正的比特和第二经校正的比特计算至少一个加密密钥的实施例。所述图示出了第一经校正的比特171和第二经校正的比特172。例如,第一经校正的比特171可以是经校正的噪声码字,即第一经校正的比特171可以是一个或多个码字。经校正的码字可以被解码,但这不是必需的。如果码字被解码,则第一经校正的比特171不是码字,而可以是随机串,例如在登记期间用于生成降噪数据131所使用的随机种子。第二经校正的比特172也是如此。在后一种情况下,并非严格需要密钥导出函数,但在任何情况下都建议这样做。如果使用密钥导出函数,则是否对经校正的码字进行解码并不重要,因此可以跳过此步骤。
图2a示出了第一实施方案。如所示出的,导出了两个加密密钥,来自第一经校正的比特171的第一密钥181以及来自第二经校正的比特182的第二密钥182。第一密钥181最终由PUF 110中在登记期间被标记为低偏置敏感的比特导出。因此,PUF 110中的高偏置对通过降噪数据对密钥181的密钥泄露具有较小影响。换句话说,密钥181中的熵与PUF 110中的熵相关;即使PUF 110中的偏置高,也避免了在高偏置的情况下的“熵消解(entropymeltdown)”。这可以被称为熵基线。对于密钥182,不存在这样的关系。这并非认为密钥182必定无价值。在生产系统中,大多数PUF将具有可接受的偏置。在这种情况下,密钥181和密钥182将具有从PUF 110中的熵所导出的正熵。在希望发生的罕见情况下,PUF 110具有高偏置可能减小密钥182的熵,甚至完全消失。在这种情况下,即使已包含了密钥182,密钥181继续保留了PUF 110中所存在的一些熵。例如,密钥181和182可以用于不同的目的。例如,密钥182可以用于低安全性的应用,在该低安全性的应用中,保护是优选的,但不是绝对要求,而密钥181可以用于安全性更为重要的应用。
图2b示出了第二实施方案。单个密钥183由第一经校正的比特171和第二经校正的比特172这两者导出。例如,可以将第一经校正的比特171和第二经校正的比特172都输入至KDF。例如,可能地在区分符的盐级联之后,可以级联和散列第一经校正的比特171和第二经校正的比特172。密钥183可以被用于加密应用。如密钥183的导出密钥可以被用作主密钥,从该主密钥导出用于多种应用的密钥。
密钥183的优点是PUF 110的大部分熵都被利用到了密钥183中。这被认为是重要的优点。在具有可接受的偏置的正常情况下,密钥183中的熵将非常高,例如与PUF 110的熵所允许的熵一样高。在一些实施方案中,可能的是,对于诸如由PUF所导出的密钥183的密钥,获得接近全熵。有趣的是,在偏置高的情况下,第二经校正的比特172的贡献将减小至甚至零熵点。在那种情况下,密钥183中的熵损失可能被减少但是降到最低点,这是因为第一经校正的比特171中的熵是基线。根据图2b的实施方案在实际情况下将高熵与在有问题的PUF的情况下的最小熵或救援熵(rescue entropy)结合。发明人发现,根据图2b的实施方案非常适合于金融应用,例如信用卡。在这种情况下,即使对于极少数情况,全熵损失也是非常不利的。然而,即使在较高偏置的情况下,只要密钥具有一些最小的熵,该系统就可以保持工作。例如,这是密钥183具有接近256比特的熵的应用所希望的。与熵偶尔下降至例如0的熵相比,熵偶尔下降至例如80比特的熵将是更优选的。
尽管图2b的系统使用整个第二PUF输出来计算密钥183,但是图2b的构造应该与传统系统不同,在传统系统中,直接为整个第一PUF输出计算降噪数据。在后一种系统中,偏置增加将导致最终密钥的熵损失。即使是适度的超出规格的偏置,也会显著降低生成密钥的熵。在一个实施方案中,利用PUF 110的未偏置部分来计算更高质量的核,在此情况下是保护密钥183免受这种熵损失的第一经校正的比特171。
当然,如果偏置是极端的,例如几乎仅由零组成的PUF响应,则PUF响应中的熵将非常低,且不能期望最终导出安全密钥。但是,这种情况非常罕见且很容易发现的。例如,电子加密设备100可以用最小熵水平的统计随机数测试来检查PUF响应。例如,电子加密设备100可以验证第一部分和第二部分的长度均不小于PUF响应的某个百分比,例如均不小于40%。在这些情况下,密钥登记可能会中止。尤其是在偏置增加较为适度的情况下,应注意不要通过降噪数据失去过多的熵。注意,百分比与PUF大小成比例。一方面,所选定的比特的熵应具有足够的熵以确保安全,但另一方面,应包含足够的信息(非擦除符号)以允许进行良好的纠错。在极端情况下,信噪比将非常差,这将几乎不可能执行纠错。
图2c示出了建立在图2b上的第三实施方案。在图2c中,密钥183如在图2b中一样被计算,但是被用作主密钥。根据主密钥183,计算第一密钥184和第二密钥185。第一密钥184和第二密钥185具有与密钥183相同的属性,例如,在PUF 110的偏置增加的情况下提高了抵抗熵损失的能力。
图2d示出了第四实施方案。根据第一经校正的比特171的一部分和第二经校正的比特172的多个部分计算第一密钥186。第二密钥187还根据第一经校正的比特171的一部分和第二经校正的比特172的一部分但是可能地根据其他部分来计算。例如,可以将第一经校正的比特171的比特100-200和第二经校正的比特172的比特50-130输入到KDF来获得密钥186,且例如输入第一经校正的比特171的比特50-100和第二经校正的比特172的比特130-200来获得密钥187。图2d的构造的优点在于,对于那些密钥具有比其他密钥更大的熵,可以进行更多控制。例如,密钥184和185是相关的(即使在实践中由于使用了密钥导出函数,这种关系非常复杂),可以通过对不同的密钥使用第一经校正的比特171和第二经校正的比特172的不同部分来避免这种情况。通过改变从第一经校正的比特171所使用的比特的百分比,可以构造具有不同安全级别的密钥。例如,一些密钥可以完全地由从第一经校正的比特171所获取的比特生成,而其他密钥仅从第一经校正的比特171接收较小百分比的比特。
图3示意性地示出了登记过程的实施例。图3所例示的过程可以例如在诸如图1所例示的实施方案上执行。图3和图4示出了在登记或重构的实施方案中可能出现的(至少一部分)串。在一个实施方案中,包括PUF响应的串可以更大,甚至大得多。在一个实施方案中,PUF响应包括至少1000比特。还可以使用更大的比特,例如至少2000比特、4000比特等。
该过程开始于PUF响应412,由该PUF响应412形成对,使得具有比特对序列。在这种情况下,对是连贯的,但这不是必需的。在串420中,相等的对被标记为偏置敏感的(S),且不相等的对被标记为偏置不敏感的(U)。每个对被指派一个标识原始对的值。在此实施例中,该对的第一比特被用于唯一地标识哪个对被编码。注意,可以从标记高/低偏置对和所述对的值的串420中恢复PUF响应412。
接下来,处理被分成处理不敏感对(U)和处理敏感对(S)。对于不敏感的处理,敏感对被视为擦除。对于敏感处理,不敏感对被视为擦除(E)。擦除基本上是占位符,所述占位符对处理没有贡献,在保留数据的顺序同时移除值。
在该处理的两个部分中,秘密被添加,以形成降噪数据。这些秘密是彼此独立。可以使用纠错码对这些秘密进行编码,且与具有擦除的串相加。在此实施例中,通过将秘密中的每个对的第一比特与(不)敏感对的值进行异或来添加经编码的秘密的值。擦除是中性的且不包含任何值;因此,它们不受此处理的影响。
串431示出了敏感对被擦除替换的PUF响应412。串420和431中标记U的比特对是PUF响应412的低偏置第一部分。串432是两个第一码字。在这种情况下,使用块大小n=10的重复码。重复码也可以是较大级联码的一部分,例如作为内部码。例如,可能已经获得了串432作为第一秘密的编码,在这种情况下具有值(0,1)。可以从随机数生成器获得第一秘密。在串433中示出了串431和两个码字(串432)的和。注意,将擦除与任何比特相加仍然是擦除。将11与U0或U1相加会将其翻转至U1或U0,而与00相加则没有影响。具有可以被分成相等比特对的属性的内部码(诸如,重复码)具有的优点是,不相等的对保持不相等且相等的对保持相等。尽管这很方便且有助于获取小的经组合的去偏置/降噪数据,但这不是必需的。串433可被视为PUF响应412的第一部分的降噪数据。注意,在此实施例中,串433具有与PUF响应412相同的长度。
敏感比特遵循相同的处理。串441示出了不相等对被擦除替换的PUF响应412。串420和441中标记S的比特对是PUF响应412的高偏置敏感的第二部分。串432是两个第二码字。第二码字442选自与串432相同的纠错码,但是它们是不同秘密的编码。在这种情况下,秘密的编码为(1,0)。串443示出了将第二码字442与串441相加的结果。
有趣的是,部分降噪数据的两个部分集可以有效地组合,用另一个值填充一个值的擦除位置。为了例示,此第一降噪数据433和第二降噪数据443被直接示出在彼此下面。串433和443中的擦除是互补的,且第一降噪数据和第二降噪数据可以被组合为用于第一部分和第二部分的单个降噪数据。经组合的降噪数据被示出在451处。注意,可以使用比特编码代替字母S和U。
例如,可能的是,使用二进制格式来有效地表示该经组合的降噪数据451。经组合的降噪数据452示出了敏感对由“0”和二进制值表示且不敏感对由“1”和二进制值表示的经组合的降噪数据。注意,经组合的降噪数据451/452包含去偏置数据,因为U指示哪些比特在第一部分中且S值指示哪些比特在第二部分中,以U之后另一比特形式的第一降噪数据和以S之后另一比特形式的第二降噪数据。可以将该经组合的降噪数据451称为经组合的辅助数据。注意,去偏置数据、第一降噪数据和第二降噪数据的经组合的比特大小等于第一噪声比特串的比特大小。
例如,在去偏置数据、第一降噪数据和第二降噪数据的这种有利封包中,去偏置数据仅包括第一比特对序列中用于每个对的单个比特,以将该对标识为低偏置敏感或高偏置敏感。该对中的另一比特可以被用作降噪数据。例如,在一个实施方案中,
-第一降噪数据包括第一噪声比特串的第一部分中用于每个对的单个比特,所述比特指示第一噪声比特串的第一部分中该对与一个或多个第一个码字中一个对应对之间的偏移。
-第二降噪数据包括第一噪声比特串的第二部分中用于每个对的单个比特,所述比特指示第一噪声比特串的第二部分中该对与一个或多个第二个码字中一个对应对之间的偏移。
图4示意性地示出了重构过程的实施例。图4所例示的过程可以例如在诸如图1所例示的实施方案中执行。此实施例延续自图3。使用新的噪声PUF串(例如,第二PUF响应)进行重构。作为参考,在图4中用参考数字412重复在登记期间所获得的原始第一PUF响应。在重构期间所获得的新的第二PUF响应用参考数字514示出。PUF响应中带下划线的比特示出了与登记PUF响应412不同的位置。注意,该信息在实际重构中不是先验已知的,仅在图4中示出以说明重构。作为参考,在图4中还示出了经组合的去偏置/降噪数据451。经组合的辅助数据是在登记期间产生的,且需要用来重构秘密以及(如果需要的话)登记PUF响应。
通过再次引入擦除,将经组合的辅助数据分成敏感部分和不敏感部分的部分辅助数据。部分辅助数据将转换为对串。不敏感的辅助数据被转换为对“01”和“10”,其中值比特表示该对的第一比特,将“U0”转换为“01”且将“U1”转换为“10”。敏感的辅助数据被转换为对“00”和“11”,其中值比特表示该对的第一比特,将“S0”转换为“00”且将“S1”转换为“11”。擦除不会产生任何值。
串521示出了不敏感的部分辅助数据,例如第一降噪数据。串522示出了相同的信息,但是此处编码U0和U1已被对应的不相等对所代替。擦除未被示出。将第一降噪数据522与第二PUF响应514相加以获得第一噪声码字523。注意,串521/522中的擦除导致第一噪声码字523中的擦除。除了擦除之外,第一噪声码字523也包含错误。注意,第二PUF响应514中的第二个错误导致第一噪声码字523的第五对中的错误;在第二PUF响应514中没有错误的情况下,第一噪声码字523中的对将是00而不是10。示出的是第一噪声码字523,例如具有噪声的经编码的第一秘密。由于第一秘密是使用纠错码编码的,因此它可以被校正为原始秘密值。对于该实施例中所使用的码,出现最多的比特确定了结果。也就是说,可以使用多数投票、忽略擦除来对重复码进行解码。更复杂的码具有对应更复杂的纠错算法。最终,获得两个第一经校正的比特524。代替两个第一经校正的比特,也可以获得原始的第一码字。如果使用级联码,则可以使用软解码代替对比特524的硬解码。软解码可以被用作对外部码(未示出在图3和4中)纠错的起点。
用于纠错偏置敏感部分的处理是相似的。531处所示出的是经组合的辅助数据中的敏感部分,其中擦除替换了低偏置的第一部分。串532相同,但是被转换为降噪数据532。在串533中,降噪数据已经与第二PUF响应514相加。结果533示出了多个擦除且在这种情况下的2个错误。大多数解码正确地给出了经编码的秘密。
比特524和534是第一经校正的比特和第二经校正的比特,且可以被用来生成一个或多个密钥。例如,两个串可以被级联且被散列,以生成用于正常偏置值的单个高熵密钥,且在高偏置的情况下可以防止熵损失。
图5示意性地示出了电子登记方法600的实施方案的一个实施例。方法600登记用于稍后确定加密密钥的设备(诸如,电子加密设备100)。登记方法600包括:
-由物理不可克隆功能PUF 110产生610第一噪声比特串112,
-由所述第一噪声比特串确定620去偏置数据142,所述去偏置数据将第一噪声比特串112的第一部分121标记为低偏置敏感的,且将第一噪声比特串112的第二部分122标记为高偏置敏感的,
-为所述第一部分确定630第一降噪数据131,且为所述第二部分确定640第二降噪数据132,降噪数据允许稍后在重构阶段期间校正所述第二噪声比特串和所述第一噪声比特串之间的差异。方法600还可以包括存储去偏置数据、第一降噪数据和第二降噪数据。
图6示意性地示出了电子重构方法700的实施方案的一个实施例。方法700基于(例如,如在诸如方法600的登记方法中所确定的)去偏置数据以及第一降噪数据和第二降噪数据来确定加密密钥。方法700包括
-由物理不可克隆功能PUF 110产生710第二噪声比特串114,
-基于去偏置数据标识720第二噪声比特串114中的第一部分151和第二部分152,
-基于所述第一降噪数据执行730所述第二噪声比特串的所述第一部分和所述第一噪声比特串的所述第一部分之间的差异的第一校正,从而获得第一经校正的比特171,且基于所述第二降噪数据执行740所述第二噪声比特串的所述第二部分和所述第一噪声比特串的所述第二部分之间的差异的第二校正,从而获得第二经校正的比特172,其中所述第一校正和所述第二校正是彼此独立的,所述去偏置数据、所述第一降噪数据和所述第二降噪数据由根据本发明中所述的登记方法获得,以及
-由所述第一经校正的比特和所述第二经校正的比特计算750至少一个加密密钥,例如密钥181和密钥182,或者密钥183,或者密钥184和密钥185,或者密钥186和密钥187。
方法600和700可以例如在经组合的登记和重建方法中一个接一个地执行。
如本领域的技术人员将明了的,执行所述方法的许多不同方式是可能的。例如,所述步骤的顺序可以变化,或一些步骤可以并行执行。此外,在步骤中间可以插入其他方法步骤。所插入的步骤可以表示诸如本文所描述的所述方法的改进,或可以与所述方法无关。例如,元素630和640或元素730和740可以至少部分地并行执行。此外,在开始下一步骤之前,一个给定的步骤可能还未完全完成。
可使用软件执行根据本发明的方法,该软件包括用于使处理器系统执行方法600或700的指令。软件可以仅包括所述系统的特定子实体所采取的那些步骤。该软件可以被存储在合适的存储介质(诸如,硬盘、软盘、存储器、光盘等)中。该软件可以作为信号沿着缆线被发送,或无线地或使用数据网络(例如,互联网)被发送。该软件可以被制成可供下载和/或供在服务器上远程使用。可以使用被布置成配置可编程逻辑(例如,现场可编程门阵列(FPGA))以执行所述方法的比特流来执行根据本发明的方法。
应理解,本发明还扩展至适于将本发明付诸实践的计算机程序,特别是载体上或载体中的计算机程序。该程序可以是源代码形式、目标代码形式、源代码和目标代码之间的中间代码形式(诸如,部分编译形式),或适合用于在实施根据本发明的方法中使用的任何其他形式。涉及计算机程序产品的实施方案包括对应于所阐明的方法中的至少一个的每个处理步骤的计算机可执行指令。这些指令可以被细分成子例程和/或可以被存储在可以被静态或动态链接的一个或多个文件中。涉及计算机程序产品的另一实施方案包括对应于所阐明的系统和/或产品中的至少一个的每个装置的计算机可执行指令。
图7a示出了计算机可读介质1000,该计算机可读介质1000具有包括计算机程序1020的可写部分1010,计算机程序1020包括用于使计算机系统执行根据一个实施方案的方法或登记和/或重构的指令。计算机程序1020可以作为物理标记或借助于计算机可读介质1000的磁化而在计算机可读介质1000上实现。然而,还可设想任何其他合适的实施方案。此外,应理解,尽管计算机可读介质1000在此被示出为光盘,但是计算机可读介质1000可以是任何合适的计算机可读介质(诸如,硬盘、固态存储器、闪速存储器等),且可以是不可记录的或可记录的。计算机程序1020包括用于使处理器系统执行所述方法或登记和/或重构的指令。
图7b示出了根据一个实施方案的处理器系统1140的示意性表示。该处理器系统包括一个或多个集成电路1110。一个或多个集成电路1110的架构被示意性地示出在图7b中。集成电路1110包括处理器1120,例如CPU,用于使计算机程序部件运行以执行根据一个实施方案的方法和/或实施它的模块或单元。集成电路1110包括用于存储程序代码、数据等的存储器1122。存储器1122的一部分可以是只读的。集成电路1110可以包括通信元件1126,例如天线、连接器或二者等。集成电路1110可以包括用于执行在所述方法中所限定的处理的一部分或全部的专用集成电路1124。处理器1120、存储器1122、专用IC 1124和通信元件1126可以经由互连件1130(如,总线)相互连接。集成电路1110可以被布置成分别使用天线和/或连接器实现接触通信和/或非接触通信。
例如,在一个实施方案中,加密设备可以包括一个处理器电路和一个存储器电路,该处理器被布置成执行存储在所述存储器电路上的软件。例如,所述处理器电路可以是Intel Core i7处理器、ARM Cortex-R8等。所述存储器电路可以是ROM电路或非易失性存储器,例如闪速存储器。所述存储器电路可以是易失性存储器,例如SRAM存储器。在后一种情况下,验证设备可以包括被布置成提供软件的非易失性软件接口,例如硬驱动、网络接口等。
应注意,上文提及的实施方案例示而非限制本发明,且本领域的技术人员将能够设计许多替代实施方案。
在权利要求中,放置在括号中的任何参考标记都不应被解释为限制权利要求。动词“包括”(comprise)及其词形变化的使用不排除权利要求中所陈述的元件或步骤之外的其他元件或步骤的存在。元件前面的冠词“一个(a/an)”不排除存在多个这样的元件。本发明可以通过硬件(包括几个分立元件)以及通过适当编程的计算机实现。在列举了几个设备的装置权利要求中,这些设备中的几个可以通过同一项硬件实现。某些措施被记载在相互不同的从属权利要求中这一纯粹事实并不指示不能有利地使用这些措施的组合。
在权利要求中,括号中的参考指的是例示实施方案的图中的参考标记或实施方案的公式,从而增加了权利要求的可理解性。这些参考不被解释为限制权利要求。

Claims (15)

1.一种被布置成确定加密密钥的电子加密设备(100),所述加密设备被布置用于登记阶段和稍后的重构阶段,所述加密设备包括:
-物理不可克隆功能(PUF)(110),被布置成在所述登记阶段期间产生第一噪声比特串(112)且在所述重构阶段期间产生第二噪声比特串(114),以及
-处理器电路,被配置成:
-在所述登记阶段期间由所述第一噪声比特串确定去偏置数据(142),所述去偏置数据将所述第一噪声比特串(112)的第一部分(121)标记为低偏置敏感的,且将所述第一噪声比特串(112)的第二部分(122)标记为高偏置敏感的,
-在所述登记阶段期间为所述第一部分确定第一降噪数据(131)且为所述第二部分确定第二降噪数据(132),包括在所述登记阶段期间从纠错码中选择一个或多个第一码字且从纠错码中选择一个或多个第二码字,确定所述第一降噪数据包括计算所述第一噪声比特串的第一部分与所述一个或多个第一码字之间的偏移,且确定所述第二降噪数据包括计算所述第一噪声比特串的第二部分与所述一个或多个第二码字之间的偏移,降噪数据允许稍后在所述重构阶段期间校正所述第二噪声比特串和所述第一噪声比特串之间的差异,
-在所述重构阶段期间基于所述去偏置数据标识所述第二噪声比特串(114)中的第一部分(151)和第二部分(152),
-基于所述第一降噪数据执行所述第二噪声比特串的所述第一部分和所述第一噪声比特串的所述第一部分之间的差异的第一校正,从而获得第一经校正的比特(171),且基于所述第二降噪数据执行所述第二噪声比特串的所述第二部分和所述第一噪声比特串的所述第二部分之间的差异的第二校正,从而获得第二经校正的比特(172),其中所述第一校正和所述第二校正是彼此独立的,
-由所述第一经校正的比特和所述第二经校正的比特计算至少一个加密密钥(181,182;183;184,185;186,187)。
2.根据权利要求1所述的电子加密设备,其中所述处理器电路被配置成在所述登记阶段期间从纠错码选择一个或多个第一码字且从纠错码中选择一个或多个第二码字,其中
-确定所述第一降噪数据的比特包括计算所述第一噪声比特串的所述第一部分中的对应比特与所述一个或多个第一码字中的对应比特之间的偏移,
-确定所述第二降噪数据的比特包括计算所述第一噪声比特串的所述第二部分中的对应比特与所述一个或多个第二码字中的对应比特之间的偏移。
3.根据权利要求1或2所述的电子加密设备,其中所述一个或多个第一码字与所述第一噪声比特串一样长或所述一个或多个第一码字比所述第一噪声比特串更长,其中所述一个或多个第二码字与所述第一噪声比特串一样长或所述一个或多个第二码字比所述第一噪声比特串更长,所述第一噪声比特串中的每个比特对应于所述一个或多个第一码字中的一个比特且对应于所述一个或多个第二码字中的一个比特。
4.根据权利要求1或2所述的电子加密设备,其中所述处理器电路被配置成:
-仅为所述第一噪声比特串的所述第一部分中的比特确定所述第一噪声比特串与所述一个或多个第一码字之间的偏移,以及
-仅为所述第一噪声比特串的所述第二部分中的比特确定所述第一噪声比特串与所述一个或多个第二码字之间的偏移。
5.根据权利要求1所述的电子加密设备,其中执行差异的第一校正包括:
-通过将所述第一降噪数据(131)应用至所述第二噪声比特串的所述第一部分(151)中的比特且标记擦除比特来获得一个或多个噪声第一码字(161),所述一个或多个噪声第一码字中的比特对应于所述第二噪声比特串的所述第二部分中的比特,
-使用纠错算法校正所述一个或多个噪声第一码字(161),和/或其中执行差异的第二校正包括:
-通过将所述第二降噪数据(132)应用至所述第二噪声比特串(114)的所述第二部分(152)中的比特且标记擦除比特来获得一个或多个噪声第二码字(162),所述一个或多个噪声第二码字(162)中的比特对应于所述第二噪声比特串(114)的所述第一部分(151)中的比特,
-使用纠错算法校正所述一个或多个噪声第二码字。
6.根据权利要求1或2所述的电子加密设备(100),其中所述第一噪声比特串和所述第二噪声比特串分别被分割成第一比特对序列和第二比特对序列,所述处理器电路被配置成将所述第一比特对序列中的不相等比特对中的比特标识为低偏置敏感的,且将所述第一比特对序列中的相等比特对中的比特标识为高偏置敏感的。
7.根据权利要求6所述的电子加密设备,其中
-所述去偏置数据包括所述第一比特对序列中用于每对的将该对标识为低偏置敏感或高偏置敏感的单个比特,
-所述第一降噪数据包括所述第一噪声比特串的所述第一部分中用于每对的单个比特,所述比特指示所述第一噪声比特串的所述第一部分中的该对与所述一个或多个第一个码字中的一个对应对之间的偏移,
-所述第二降噪数据包括所述第一噪声比特串的所述第二部分中用于每个对的单个比特,所述比特指示所述第一噪声比特串的所述第二部分中的该对与所述一个或多个第二个码字中的一个对应对之间的偏移。
8.根据权利要求1或2所述的电子加密设备(100),其中所述去偏置数据、所述第一降噪数据和所述第二降噪数据的经组合的比特大小等于所述第一噪声比特串的比特大小。
9.根据权利要求1或2所述的电子加密设备(100),其中所述处理器电路被布置成由所述第一经校正的比特的至少一部分和所述第二经校正的比特的至少一部分计算单个加密密钥。
10.根据权利要求1或2所述的电子加密设备(100),其中所述处理器电路被布置成由所述第一经校正的比特的至少一部分计算第一加密密钥且由所述第二经校正的比特的至少一部分计算第二加密密钥。
11.根据权利要求2所述的电子加密设备(100),其中所述处理器电路被布置成通过对来自另一纠错码的一个或多个另外的码字进行编码来从第一纠错码或第二纠错码选择一个或多个第一码字或第二码字。
12.根据权利要求2所述的电子加密设备(100),其中所述纠错码是级联码,其中内部码是重复码。
13.一种被布置成登记用于稍后确定加密密钥的设备的电子登记方法(600),所述登记方法包括:
-由物理不可克隆功能(PUF)(110)产生(610)第一噪声比特串(112),
-由所述第一噪声比特串确定(620)去偏置数据(142),所述去偏置数据将所述第一噪声比特串(112)的第一部分(121)标记为低偏置敏感的,且将所述第一噪声比特串(112)的第二部分(122)标记为高偏置敏感的,
-为所述第一部分确定(630)第一降噪数据(131),且为所述第二部分确定(640)第二降噪数据(132),包括在登记阶段期间从纠错码中选择一个或多个第一码字且从纠错码中选择一个或多个第二码字,确定所述第一降噪数据包括计算所述第一噪声比特串的第一部分与所述一个或多个第一码字之间的偏移,且确定所述第二降噪数据包括计算所述第一噪声比特串的第二部分与所述一个或多个第二码字之间的偏移,降噪数据允许稍后在重构阶段期间校正第二噪声比特串和所述第一噪声比特串之间的差异。
14.一种被布置成确定加密密钥的电子重构方法(700),所述方法包括:
-由物理不可克隆功能(PUF)(110)产生(710)第二噪声比特串(114),
-基于去偏置数据来标识(720)所述第二噪声比特串(114)中的第一部分(151)和第二部分(152),
-基于所述第一降噪数据执行(730)所述第二噪声比特串的所述第一部分和所述第一噪声比特串的所述第一部分之间的差异的第一校正,从而获得第一经校正的比特(171),且基于所述第二降噪数据执行(740)所述第二噪声比特串的所述第二部分和所述第一噪声比特串的所述第二部分之间的差异的第二校正,从而获得第二经校正的比特(172),其中所述第一校正和所述第二校正是彼此独立的,所述去偏置数据、所述第一降噪数据和所述第二降噪数据由根据权利要求13中所述的登记方法获得,以及
-由所述第一经校正的比特和所述第二经校正的比特来计算(750)至少一个加密密钥(181,182;183;184,185;186,187)。
15.一种计算机可读介质(1000),所述计算机可读介质包括暂时性或非暂时性数据(1020),所述暂时性或非暂时性数据(1020)表示导致处理器系统执行根据权利要求13和/或权利要求14所述的方法的指令。
CN201880046261.3A 2017-07-10 2018-06-20 电子加密设备、电子登记和重构方法及计算机可读介质 Active CN110869997B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP17180490.9 2017-07-10
EP17180490 2017-07-10
PCT/EP2018/066437 WO2019011607A1 (en) 2017-07-10 2018-06-20 GENERATION OF A SECURE KEY FROM AN UNCONCLABLE PHYSICAL FUNCTION SOLICITED

Publications (2)

Publication Number Publication Date
CN110869997A CN110869997A (zh) 2020-03-06
CN110869997B true CN110869997B (zh) 2023-08-11

Family

ID=59337475

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880046261.3A Active CN110869997B (zh) 2017-07-10 2018-06-20 电子加密设备、电子登记和重构方法及计算机可读介质

Country Status (3)

Country Link
US (1) US11258597B2 (zh)
CN (1) CN110869997B (zh)
WO (1) WO2019011607A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11411751B2 (en) * 2018-06-27 2022-08-09 Unm Rainforest Innovations Correlation-based robust authentication technique using helper data only
GB201919297D0 (en) 2019-12-24 2020-02-05 Aronson Bill Temperature sensing physical unclonable function (puf) authenication system
US11516028B2 (en) 2019-12-24 2022-11-29 CERA Licensing Limited Temperature sensing physical unclonable function (PUF) authentication system
EP4002792A1 (en) * 2020-11-13 2022-05-25 Secure Thingz Limited An apparatus and method for provisioning electronic devices
CN113014385B (zh) * 2021-03-25 2023-09-01 黑龙江大学 一种双网口硬件网络数据加密系统
WO2023186414A1 (en) 2022-03-28 2023-10-05 Intrinsic Id B.V. Hamming distance based matching for puf strings

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102546149A (zh) * 2012-01-16 2012-07-04 华南理工大学 一种密码芯片系统及密钥提取方法
EP2773061A2 (en) * 2013-02-28 2014-09-03 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
WO2016102164A1 (en) * 2014-12-24 2016-06-30 Intrinsic Id B.V. Cryptographic key production from a physical unclonable function

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7840803B2 (en) 2002-04-16 2010-11-23 Massachusetts Institute Of Technology Authentication of integrated circuits
EP1510914B1 (fr) 2003-08-28 2010-10-13 STMicroelectronics S.A. Normalisation à flux constant d'une source de bruit pour génération de nombres aléatoires
EP1610462B1 (fr) 2004-06-24 2012-07-11 St Microelectronics S.A. Circuit et procédé de vérification de la constance de biais d'un flux de bits
FR2872357A1 (fr) 2004-06-24 2005-12-30 St Microelectronics Sa Verification d'un flux de bits
WO2006038183A1 (en) * 2004-10-04 2006-04-13 Koninklijke Philips Electronics N.V. Two-way error correction for physical tokens
WO2009024913A2 (en) 2007-08-22 2009-02-26 Intrinsic Id Bv Identification of devices using physically unclonable functions
EP2465069B1 (en) 2009-08-14 2018-02-21 Intrinsic ID B.V. Physically unclonable function with tamper prevention and anti-aging system
US20130051552A1 (en) * 2010-01-20 2013-02-28 Héléna Handschuh Device and method for obtaining a cryptographic key
WO2012069545A2 (en) 2010-11-24 2012-05-31 Intrinsic Id B.V. Physical unclonable function
KR102198499B1 (ko) * 2013-12-31 2021-01-05 주식회사 아이씨티케이 홀딩스 디지털 값 처리 장치 및 방법
US9628272B2 (en) * 2014-01-03 2017-04-18 William Marsh Rice University PUF authentication and key-exchange by substring matching
US10708073B2 (en) * 2016-11-08 2020-07-07 Honeywell International Inc. Configuration based cryptographic key generation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102546149A (zh) * 2012-01-16 2012-07-04 华南理工大学 一种密码芯片系统及密钥提取方法
EP2773061A2 (en) * 2013-02-28 2014-09-03 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
WO2016102164A1 (en) * 2014-12-24 2016-06-30 Intrinsic Id B.V. Cryptographic key production from a physical unclonable function

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Roel Maes1, Vincent van der Leest1, Erik van der Sluis1,.Secure Key Generation from Biased PUFs.《CRYPTOGRAPHIC HARDWARE AND EMBEDDED SYSTEMS-CHES》.2015, *

Also Published As

Publication number Publication date
CN110869997A (zh) 2020-03-06
US11258597B2 (en) 2022-02-22
US20210152349A1 (en) 2021-05-20
WO2019011607A1 (en) 2019-01-17

Similar Documents

Publication Publication Date Title
CN110869997B (zh) 电子加密设备、电子登记和重构方法及计算机可读介质
CN107251475B (zh) 来自物理不可克隆功能的加密密钥产品
CN107004380B (zh) 包括物理不可克隆功能的加密设备
CN107924645B (zh) 具有物理不可克隆功能的加密设备
Delvaux et al. Helper data algorithms for PUF-based key generation: Overview and analysis
KR102026757B1 (ko) 단일 등록을 이용한 메모리 기반 puf에 대한 소프트 결정 에러 정정
EP2526505B1 (en) Device and method for obtaining a cryptographic key
Hiller et al. Breaking through fixed PUF block limitations with differential sequence coding and convolutional codes
US11183083B2 (en) Cryptographic device and memory based PUF
Hiller et al. Systematic low leakage coding for physical unclonable functions
Yu et al. Maximum-likelihood decoding of device-specific multi-bit symbols for reliable key generation
Van Herrewege Lightweight PUF-based key and random number generation
CN111756540B (zh) 一种传送密文的方法、终端、服务器及系统
Juels et al. Falcon codes: fast, authenticated lt codes (or: making rapid tornadoes unstoppable)

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