基于阻抗的物理不可克隆功能

文档序号:1775125 发布日期:2019-12-03 浏览:6次 >En<

阅读说明:本技术 基于阻抗的物理不可克隆功能 (The unclonable function of physics based on impedance ) 是由 T·G·奥德怀尔 T·L·朴 于 2019-05-23 设计创作,主要内容包括:本公开涉及基于阻抗的物理不可克隆功能。根据各种方面,提供用于提供软解码物理不可克隆功能的系统和方法。根据一个实施方案,PUF电路包括具有阻抗值的电路元件,其用于产生PUF值。例如,一个或多个电阻器可以连接到电压源。电阻器可以产生测量的结果电压信号,并指示电阻器的阻抗值的比率。由于制造变化,每个阻抗值可以是唯一的,使得阻抗值可以用于提供唯一的数字序列。每个比值可以通过数字化转换成单位或多位数字值,例如通过比较器和/或模数转换器,并且该系列数字值可以表示或用于产生唯一的数字序列。(This disclosure relates to the unclonable function of physics based on impedance.According to various aspects, the system and method for being provided for the soft decoding unclonable function of physics.According to an embodiment, PUF circuit includes the circuit element with impedance value, is used to generate PUF value.For example, one or more resistors may be coupled to voltage source.Resistor can produce the result voltage signal of measurement, and indicate the ratio of the impedance value of resistor.Since manufacture changes, each impedance value be can be uniquely, so that impedance value may be used to provide unique Serial No..Each ratio can be converted into unit or multi-bit digital value by digitlization, such as by comparator and/or analog-digital converter, and the series of digital values can indicate or for generating unique Serial No..)

基于阻抗的物理不可克隆功能

技术领域

本申请涉及模拟物理不可克隆功能(PUF)系统和方法。

背景技术

物理不可克隆功能(PUF)是一种硬件组件,它产生输出,其值取决于组件的唯一和/或随机物理属性。即使是严格控制的制造过程也将包括某些类型的硬件组件的变体。因此,即使硬件组件具有相同的属性,这些变化也会导致组件具有独特的属性。

发明内容

根据本申请的多个方面,提供了用于提供软解码物理不可克隆功能的系统和方法。根据一个实施方案,PUF电路包括具有阻抗值的电路元件,其用于产生PUF值。例如,一个或多个电阻器可以连接到电压源。电阻器可以产生测量的结果电压信号,并指示电阻器的阻抗值的比率。由于制造变化,每个阻抗值可以是唯一的,使得阻抗值可以用于提供唯一的数字序列。每个比值可以通过数字化转换成单位或多位数字值,例如通过比较器和/或模数转换器,并且该系列数字值可以表示或用于产生唯一的数字序列。

根据本申请的一个方面,提供用于提供基于阻抗的PUF值的系统。系统包括:具有第一阻抗值的第一电阻器;具有第二阻抗值的第二电阻器其中所述第二电阻器电连接到所述第一电阻器;模数转换器(ADC),电连接到所述第一电阻器和所述第二电阻器,其中所述ADC被配置为产生表示电压信号的第一多个位,该电压信号指示所述第一阻抗值与所述第二阻抗值的比率;和处理电路,被配置为基于所述第一多个位来产生PUF值。

根据本申请的一个方面,提供用于提供基于阻抗的PUF值的方法。该方法包括:向第一电阻器和与所述第一电阻器电连接的第二电阻器提供电源电压,其中所述第一电阻器具有第一阻抗值并且所述第二电阻器具有第二阻抗值,使用模数转换器产生表示电压信号的第一多个位,该电压信号指示所述第一阻抗值与所述第二阻抗值的比率,和基于所述第一多个位来产生PUF值。

根据本申请的一个方面,提供用于提供基于阻抗的PUF值的系统。系统包括:处理器包,包括:第一电阻器对,具有第一阻抗比;第二电阻器对,具有第二阻抗比;模数转换器(ADC),电连接到所述第一电阻器对和所述第二电阻器对,其中ADC被配置为产生表示电压信号的一个或多个位,该电压信号指示所述第一阻抗比与所述第二阻抗比的比率;和处理电路,被配置为基于所述一个或多个位来产生PUF值。

附图说明

将参考以下附图描述本公开的各个方面和实施方案。应该理解的是,附图不一定按比例绘制。出现在多个图中的项目在它们出现的所有图中用相同的附图标记表示。

图1示出了根据本申请实施方案的软解码物理不可克隆功能(PUF)电路。

图2示出了根据本申请的备选实施方案的软解码PUF,其采用公共参考阻抗。

图3是图2的软解码PUF的电路示意图。

图4是根据本申请的替代实施方案的软解码PUF电路的电路示意图,其确定各个阻抗。

图5A-5C是示出根据本申请的实施方案的操作软解码PUF电路(诸如图3的软解码PUF电路)的方法的流程图。

图6示出了根据本申请实施方案的用于提供基于阻抗的物理不可克隆功能(PUF)的方法。

图7示出了可以在本文描述的类型的软解码PUF中采用的电阻器的示例。

图8示出了根据本申请实施方案的其上具有软解码PUF的半导体芯片。

图9示出了根据一个实施方案的其上具有传感器和软解码PUF的半导体芯片。

图10示出了根据本申请的实施方案的包括印刷电路板的设备,该印刷电路板具有本文所述类型的软解码PUF。

具体实施方式

本申请的各方面提供了用于生成和/或存储唯一值的系统和方法,所述唯一值可以用作密钥,用于安全目的的设备标识符,或者出于其他原因。传统上,诸如密钥或唯一标识符的唯一值存储在设备的非易失性存储器中。一种方法涉及在一次性可编程(OTP)存储器中存储唯一值。然而,OTP存储器可能易受成像攻击,使得攻击者可以在视觉上检查存储器以学习唯一值,从而减少唯一标识符作为安全措施的有用性。另一种方法是使用硬解码物理不可克隆功能(PUF),PUF仅输出基础信号的一位量化。然而,这种硬解码PUF依赖于丢弃用于生成PUF的基础信息的实质部分的数字和/或二进制逻辑。至少一些硬解码PUF也对温度变化,设备老化和其他噪声源敏感,因此需要纠错码来校正由于噪声而翻转的位。本申请的一些方面提供模拟物理不可克隆功能(PUF),其被配置为基于PUF的阻抗比率生成信号。软解码PUF可以使用比一位更高的分辨率来保留基础模拟信号的大部分,而不是使用模拟变化来生成随机二进制结果。软解码PUF可以使用软信息(例如,来自高斯分布)的软解码策略,并且每次比较或测量可能产生多于1位。软解码PUF可以包括模拟PUF,并且可以使用模拟和数字组件的组合来实现,例如通过利用被数字化以形成PUF值的模拟电路信号。

根据本申请的一个方面,PUF实现可以利用模拟电路信号,例如基于阻抗不匹配的信号,其被数字化以形成PUF值。根据本申请的非限制性方面的软解码PUF电路可以通过基于阻抗值不匹配来测量电压信号来生成PUF值。根据一些方面,提供了用于提供基于阻抗的PUF的系统和方法。在一些实施方案中,PUF值可以通过向第一电阻器和与所述第一电阻器电连接的第二电阻器提供电源电压产生,其中所述第一电阻器具有第一阻抗值并且所述第二电阻器具有第二阻抗值;使用模数转换器产生表示电压信号的第一多个位,该电压信号指示所述第一阻抗值与所述第二阻抗值的比率;并且基于所述第一多个位来产生PUF值。

本申请的各方面可以提供各种益处,包括解决产生唯一号码的替代方法的缺点。例如,软解码PUF实现可以保留来自PUF电路的基础随机特性的实质信息。根据本申请的各个方面描述的软解码PUF电路可以表现出比其他方法更大的温度波动和/或电压/电流波动的弹性,并且可以在器件的使用寿命期间表现出更大的稳定性。而且,根据至少一些实施方案,这里描述的软解码PUF电路不需要纠错码,并且在不使用时可以几乎不消耗功率。在这样的实施方案中,可能不需要纠错码,因为可以以足够的稳定性生成输出PUF值中的一个或多个位的全部或一部分以使得翻转位不太可能。但是,可以选择使用纠错码。应当理解,并非所有实施方案都必须提供所有这些益处,并且还可以利用本申请的一个或多个实施方案实现超出上面明确描述的益处的益处。

图1示出了根据本申请实施方案的软解码物理不可克隆功能(PUF)电路100。图1示出了电阻器101a、101b、101c、101d、......、101m和101n、电阻器对103a、103b、......和103g、解复用器105、模数转换器107和处理电路109。软解码PUF电路100可用于根据本文描述的系统和方法生成表示软解码PUF的值。在一些实施方案中,软解码PUF值基于电路组件(例如,电阻器101a-101n)的一个或多个阻抗值和/或阻抗值的比率。

电阻器101a-101n可以是任何合适的电阻器。例如,电阻器101a-101n可以是碳电阻器、金属氧化物电阻器、多晶硅电阻器、薄膜电阻器和/或任何其他合适类型的电阻器。薄膜电阻器可包括金属薄膜电阻器、薄膜电阻器和/或厚膜电阻器。电阻器101a-101n可以布置成阵列,例如布置在共享衬底上和/或共享封装内。在一些实施方案中,电阻器物理地分散在整个印刷电路板、封装和/或器件中。

在一些实施方案中,可以使用电容器代替电阻器101a-101n。应当理解,在不脱离本申请的范围的情况下,可以使用具有阻抗值的任何电路元件来代替电阻器101a-101n或者除了电阻器101a-101n之外还使用阻抗值。因此,在一些实施方案中,电阻器101a-101n可以更一般地表示为阻抗101a-101n。

还应该理解,电阻器101a-101n可以是任何合适的电路和/或电路元件的组合。电阻器101a-101n可以是等效阻抗,其表示作为单个电路元件的一个或多个电路元件,为清楚起见,具有基本相等的阻抗。例如,电阻器101a-101n可以各自包括串联和/或并联连接的一个或多个电阻器,以产生合适的阻抗。在一些实施方案中,电阻器101a-101n可以用电路元件代替,用于测量其他电路元件特性的比率,例如阈值电压和泄漏电流。例如,晶体管可以被配置用于测量和/或计算这些特性的比率。

在一些实施方案中,电阻器101a-101n可以旨在具有彼此相同的阻抗值。然而,制造工艺变化可能产生电阻器101a-101n的实际阻抗值的变化。通常,每个阻抗值可以偏离某个标称(或目标)阻抗值。在一些实施方案中,电阻器的全部或一部分可以具有不同的相应标称阻抗值。例如,电阻器101a-101n中的每一个可以具有第一标称阻抗值并且与具有第二标称阻抗值的电阻器配对,该第二标称阻抗值通过恒定量、比例因子或任何其他适合的函数与第一标称阻抗值不同。

不要求电阻器101a-101n中的每一个被配置为具有相同的标称阻抗值,并且在一些实施方案中,电阻器101a-101n中的一个或多个可以被配置为编码预定的阻抗值。例如,电阻器101a-101n中的任何一个可以去除电阻材料,其可以被称为被修整,以编码预定的阻抗值。修整电阻器可以包括在电阻器的电阻材料中形成切口(或去除切口)。可以例如使用激光形成这种切口。切口和剩余电阻材料的特性可导致电阻器具有预定阻抗值。预定阻抗值可用于编码由ADC和用于生成PUF值的其他电路生成和/或恢复的预定值。例如,可以使用预定阻抗值作为一次性可编程存储器的替代,用于存储识别号和其他预定量。参考图7描述微调电阻器的示例。

在图1的示例中,电阻器101a-101n布置在电阻器对103a-103g中。在所示的非限制性示例中,每个电阻器对103a-103g包括串联连接的第一和第二电阻器。例如,电阻器对103a包括电阻器101a和电阻器101b。在图1的示例中,n个电阻器中的每一个与恰好另一个电阻器配对,因此电阻器对103a-103g的数量g是电阻器101a-101n的数量的一半。应当理解,可以使用任何合适的、任意数量的电阻器和/或电阻器对。尽管电阻器101a-101n被成对地描绘为103a-103g,但是应当理解,其他布置是可能的,并且可以使用控制信号和/或开关来选择电阻器对。

电阻器对103a-103g中的一个或多个,并且在一些情况下,每个电阻器对可以通过解复用器105选择性地连接到电压源。在每个电阻器对103a-103g中,一个电阻器可以连接到电源电压,一个电阻器直接连接到电气接地。因此,每对电阻器103a-103g中的电阻器之间的电压表示每对中每个电阻器的阻抗值的比率。应当理解,阻抗值的比率可以包括比例比仅仅两个量的简单比率更复杂的比率。

解复用器105可以由来自处理电路109的控制信号操作。在一些实施方案中,响应于控制信号,解复用器105一次将电阻器对103a-103g中的一个连接到电源电压。这允许每个电阻器对103a-103g独立地产生可用于产生PUF值的电压信号。在进一步的实施方案中,解复用器105可以用于同时选择多对电阻器,例如使用多对电阻器产生单个电压信号。在一些实施方案中,两个电压信号可以用作ADC 107的差分输入。在一些实施方案中,ADC被配置为生成表示数字电压信号的一个或多个位,该数字电压信号指示在对应于第一电阻器对103a-103g的第一阻抗比和对应于第二电阻器对103a-103g的阻抗比之间的差。在这样的实施方案中,可以选择电阻器对103a-103g中的一个作为参考对,其与每个其他电阻器对103a-103g进行比较。在一些这样的实施方案中,ADC 107可以被配置为具有单位输出的比较器。因此,可以对阻抗比执行单位解码或硬解码。

ADC 107从任何电阻器对103a-103g接收电压信号。作为非限制性示例,ADC 107使用任何合适的分辨率数字化电压信号,包括1、2、4、8、10、12、14、16、18或24位。在一些实施方案中,ADC的范围可以以电压信号为中心,如果一对电阻器将其标称阻抗值与ADC的精度极限相匹配,则将产生该电压信号。例如,如果每个电阻器对103a-103g中的电阻器101a-101n意图配对以具有相同的标称阻抗值,则ADC的范围可以以电源电压的一半为中心,在图1的示例中为Vref。在一些实施方案中,基于由每个电阻器对103a-103g产生的电压信号的预期统计分布来配置ADC的范围。在一些实施方案中,ADC 107的范围被配置为允许在数字化之前处理电压信号。例如,电压信号可以被放大或乘以增益,以改变预期的值分布。

处理电路109被配置为将控制信号发送到解复用器105。控制信号可用于确定哪个电阻器对103a-103g连接到电源电压。一旦选择了电阻器对并且由ADC 107生成数字电压信号,处理电路109就基于ADC 107生成的位生成PUF值。在一些实施方案中,处理电路可以选择由ADC 107生成的位的一部分。例如,处理电路可以选择ADC输出的四个、六个、八个、十个或更多个最高有效位。处理电路可以被配置为选择在PUF读数之间可能保持稳定的多个位。例如,阻抗比在温度变化下可以是相对稳定的,但是受到可能导致ADC输出的最低有效位的变化的其他噪声源的影响。在一些实施方案中,处理电路可以执行供应阶段。可以将从每个电阻器对103a-103g获得的数字电压信号与ADC 107输出范围中的阈值进行比较,以便确定数字电压信号是否适当稳定。在一些实施方案中,可以存储对应于稳定数字电压信号的电阻器对103a-103g,用于稍后的PUF值生成。在一些实施方案中,可以从稍后的PUF值生成中排除不对应于稳定数字电压信号的电阻器对103a-103g。

在一些实施方案中,处理电路109将ADC 107产生的多个位组合成由多个电阻器对103a-103g产生的电压信号。在一些实施方案中,处理电路109通过串联表示由至少两个电阻器对103a-103g产生的电压信号的位来产生PUF值。在一些实施方案中,可以使用一组或多组不同的电阻器对103a-103g来生成不同的PUF值。例如,可以响应于输入值来选择多组电阻器对103a-103g,例如用于接收来自设备的特定响应的挑战。作为另一示例,第一挑战输入可以指示仅使用电阻器对103a-103d来生成PUF值,并且与第一挑战输入不同的第二挑战输入可以指示仅使用电阻器对103d-103g来产生PUF值。

处理电路109可以对为每对电阻器103a-103g生成的位执行任何合适的数学运算。在一些实施方案中,计算数字电压信号的平均值,并且PUF值基于平均值。例如,可以使用与平均值的偏差的指示来表示PUF值中使用的每个电阻器对103a-103g。在一些实施方案中,处理电路109可以计算每个电阻器对103a-103g的数字电压信号的加权和。处理电路109还可以通过计算数字电压信号上的任何任意函数来产生PUF值。应当理解,上述组合电压信号输出的方法是通过非限制性示例的方式提供的,并且在不脱离本申请的范围的情况下,可以利用任何合适的数学运算或电压信号输出的组合来生成PUF值。

处理电路109可以使用解复用器105来选择用于以任何合适的顺序生成PUF值的电阻器对103a-103g。在一些实施方案中,电阻器对103a-103g中的每一个可以连接到电源电压并且以连续的顺序(例如,从103a到103g,或者反之亦然)用ADC 107对其进行采样。在一些实施方案中,处理电路109可以按预定顺序对电阻器对103a-103g进行采样。例如,可以从存储器或通信接口检索排序。在一些实施方案中,处理电路可以访问输入(例如,挑战字或整数)到电阻器对103a-103g的排序的映射,以便确定PUF值中的位的排序。在一些实施方案中,处理电路可以按照由一个或多个数字电压信号确定的顺序对任何电阻器对103a-103g的电压信号进行采样。例如,处理电路可以选择电阻器对103a,然后如果电压信号输出以0b000开始则接下来选择电阻器对103b,或者如果电压信号输出以0b001开始则接下来选择电阻器对103c。在一些实施方案中,数字电压信号的全部或一部分可用于索引到采样顺序列表中。例如,可以编码预定值(例如,通过修整)的“主”电阻对的k个最高有效位可用于选择两个中的一个到k个可能的阶数的幂,用于对电阻器对103a-103g的电压信号进行采样。作为这样的实施方案的非限制性说明性示例,电阻器对103a的前三位可用于选择八个可能顺序中的一个,用于对来自电阻器对103a-103g的电压信号进行采样。在一些实施方案中,处理电路可以以与组合电压样本输出不同的顺序对来自任何电阻器对103a-103g的电压信号进行采样,并且应当理解,用于对这里描述的电阻器对103a-103g的采样进行排序的方法可以应用于组合从以任何顺序采样的电阻器对103a-103g获得的数字电压信号。

在一些实施方案中,处理电路109可以对数字电压信号执行数学运算以获得合适的数字电压信号分布。例如,处理电路109可以使用累积分布函数或其近似值来将数字电压信号变换为基本均匀的随机变量。

处理电路109可以输出使用电阻器对103a-103g产生的PUF值。PUF值可以被发送到任何合适的目的地,用于存储、加密和/或模糊秘密值,用于认证设备,和/或用于适合PUF的任何其他目的。

图2示出了根据本申请实施方案的软解码PUF电路200,其采用公共参考阻抗(201r)。图2示出了电阻器201a、201b、201c、......、201n和201r、模拟前端电路211、模数转换器207和处理电路209。软解码PUF电路200可用于根据本文描述的系统和方法生成表示软解码PUF的值。在一些实施方案中,软解码PUF值基于阻抗值与参考阻抗值的一个或多个比率。

在图2的示例中,电阻器201a-201n连接到参考电阻器201r,参考电阻器201r是连接到地的唯一电阻器。电阻器布置成产生电压信号,该电压信号指示来自电阻器201a-201n的一个或多个阻抗值与参考电阻器201r的参考阻抗值的比率。应当理解,在不脱离本申请的范围的情况下,可以提供一个以上的参考电阻器。

由电阻器201a-201n和201r产生的电压信号被输入到模拟前端电路211。模拟前端电路211可以包括用于处理模拟电压信号的任何合适的电路。例如,模拟前端电路211可以缓冲、放大和/或滤波来自电阻器201a-201n和/或201r的电压信号。在一些实施方案中,模拟前端电路211可以(例如通过施加增益)处理电压信号以获得合适的电压信号分布。例如,模拟前端电路211可以使用累积分布函数或其近似值来将数字电压信号变换为基本均匀的随机变量。在一些实施方案中,模拟前端电路211可以施加基座信号以确定数字电压信号是否在ADC 207的输出中的边界的阈值距离内。例如,在这样的实施方案中,当基座信号引起ADC 207的输出中的翻转位时,PUF值可被认为是不稳定的和/或被拒绝。

图3是图2的软解码PUF电路的电路示意图。图3示出了电阻器301a、301b、301c、301n和301r、解复用器305、模拟前端电路311、ADC 307和处理电路309。软解码PUF电路300可以如参考图2所描述的那样生成软解码PUF值。与图1相反,产生图3的电路300,产生指示所选阻抗值与公共参考阻抗值之间的比率的电压信号。

如图1所示,处理电路309产生用于控制解复用器305的控制信号。电阻器301a-301n中的每一个可以通过解复用器305连接到电源电压。电阻器301a-301n可以以任何合适的顺序选择,并且可以一次选择一个或多个电阻器301a-301n。

将电阻器301a-301n中的一个或多个连接到电源电压产生电压信号,该电压信号可以由模拟前端电路311操作,随后由ADC 307数字化,并且随后由处理电路309操作,如参考图1所述。处理电路可以如参考图1和2所描述的那样操作。

图4是根据本申请的替代实施方案的软解码PUF电路400的电路示意图,其确定各个阻抗。图4示出了电阻器401a、401b、401c和401n、解复用器405、ADC 407、处理电路409和电流源421。软解码PUF电路400可以基于指示各个阻抗值的电压信号生成PUF值。

电流源421可以是任何合适的电流源。在一些实施方案中,电流源421由处理电路409控制。例如,处理电路409可以连接到数模转换器,该数模转换器被配置为控制输出电流电平。

在图4的示例中,解复用器405可以将电阻器401a-401n中的每一个连接到电流源421。然后,ADC 407测量由选择的电阻器两端的电流产生的电压降。测得的电压降等于所选电阻器的阻抗值与电流的乘积。当相同的电流值施加到每个电阻器401a-401n时,电压信号的差异将指示电阻器401a-401n的阻抗值的差异。在一些实施方案中,可以知道电流值并且直接测量电阻器401a-401n的阻抗值。

在一些实施方案中,可以使用连接在电阻器的任一侧上的差分对和ADC的差分输入来测量每个电阻器两端的电压降。在一些实施方案中,电阻器401a-401n与ADC 407之间的连接可以被多路复用以选择单个电阻器以测量所选电阻器两端的电压降。应当理解,可以采用用于测量电阻器两端的电压降的不同电路而不脱离本申请的范围。

如参考先前附图所描述的,ADC 407的输出可以由处理电路409以任何合适的方式组合以生成PUF值。可以计算电阻器401a-401n的阻抗值的任何合适的数学组合,包括加权和、平均和任意函数。例如,可以针对每个单独的阻抗值相对于所有单个阻抗值的平均值生成比率。

图5A是说明根据本申请的实施方案的操作软解码PUF电路(例如,图3的软解码PUF电路)的方法500A的流程图。方法500A可以由包括处理电路109和309的电路100和300执行。

方法500A开始于动作501,其中选择第一和第二电阻器。在一些实施方案中,第一和第二电阻器是同一对电阻器的一部分,例如参考图1所描述的。在一些实施方案中,第一和第二电阻器可以从多个电阻器中选择。例如,可以选择参考图4描述的电路中的任何两个电阻器。在进一步的实施方案中,第一和第二电阻器中的一个可以是每次执行动作501时选择的参考电阻器,例如如参考图3所描述的。

在一些实施方案中,基于任何合适的顺序选择第一和第二电阻器。在一些实施方案中,根据顺序和/或预定顺序选择电阻器,其可以从存储器或从通信接口检索。在一些实施方案中,可以基于挑战输入来选择电阻器。在一些实施方案中,可以基于一个或多个电压信号来选择电阻器。例如,所选择的初始第一和第二电阻器可以是主电阻器,其产生用于确定后续电阻器选择的电压信号。

在动作503,向所选择的第一和第二电阻器提供电压。可以使用解复用器或任何合适的开关将所选择的电阻器连接到电压源和/或在所选择的电阻器两端施加电压。在一些实施方案中,第二电阻器通过第一电阻器连接到电压源,并且两个电阻器分压电压。在一些实施方案中,两个电阻器划分两个电阻器上的总电压降。

在动作505,测量电压信号,指示所选第一和第二电阻器的阻抗值的比率。电压信号可以由连接到第一和第二电阻器的ADC测量。在一些实施方案中,ADC连接在串联连接的电阻器之间。第一和第二电阻器也可以并联布置。

在一些实施方案中,指示所选第一和第二电阻器的阻抗值的比率的电压信号可以用作ADC的差分输入。在一些实施方案中,指示参考电阻器对的阻抗值的比率的第二电压信号可以用作ADC的第二差分输入。在这样的实施方案中,ADC被配置为生成表示第一和第二电压信号之间的差和/或阻抗比的一个或多个输出位。在进一步的实施方案中,可以利用配置为比较器的比较器和/或ADC来执行动作505。

在动作507,确定是否已经测量了足够的电压信号。可以测量任何合适数量的电压信号以便生成PUF值。重复动作501、503、505和507,直到测量到足够多的电压信号。在动作509,从测量的电压信号的所有或相应部分生成PUF值。可以对为每对电阻器生成的位执行任何合适的数学运算。在一些实施方案中,计算数字电压信号的平均值,并且PUF值基于平均值。在一些实施方案中,可以计算每个电阻器对的数字电压信号的加权和。还可以通过计算数字电压信号上的任何任意函数来生成PUF值。应当理解,上述组合电压信号输出的方法是通过非限制性示例的方式提供的,并且在不脱离本申请的范围的情况下,可以利用任何合适的数学运算或电压信号输出的组合来生成PUF值。

图5B是说明根据本申请的实施方案的操作软解码PUF电路(例如,图4的软解码PUF电路)的方法500B的流程图。方法500B可以由包括处理电路409的电路400执行。与图5A的方法相反,方法500B测量指示提供有电流信号的单个电阻器的阻抗值的电压信号。

在动作511,选择电阻器。电阻器可以是任何合适的电阻器,例如图4中的多个电阻器中的任何一个。在动作513,电流源连接到所选择的电阻器。可以使用解复用器或任何合适的开关将所选择的电阻器连接到电流源。可以将电流控制为已知值。在一些实施方案中,对于动作511-517的每次迭代,当前值是恒定的。

在动作515,测量指示所选电阻器的阻抗值的电压信号。测量的电压可以是电阻器两端的电压降,其等于所选电阻器的阻抗值与电流的乘积。当对每个所选电阻器施加相同的电流水平时,电压信号的差异将指示电阻器的阻抗值的差异。在一些实施方案中,可以知道电流值并且直接测量电阻器的阻抗值。在进一步的实施方案中,可以使用连接在电阻器的任一侧上的差分对和ADC的差分输入来测量每个电阻器两端的电压降。

在动作517,确定是否已经测量了足够的电压信号。可以测量任何合适数量的电压信号以便生成PUF值。重复动作511、513、515和517,直到测量到足够多的电压信号。在动作519,从测量的电压信号生成PUF值。电压信号可以以任何合适的方式组合,例如,使用参考图4和5A描述的任何方法。

图5C是示出根据本申请的实施方案的操作软解码PUF电路(诸如图4的软解码PUF电路)的方法500C的流程图。方法500C可以由包括处理电路109和309的电路100和300执行。与图5C的方法相反,方法500C测量指示基于先前测量的电压信号选择的电阻器的阻抗值的阻抗值的比率。

在动作521,选择第一和第二电阻器。电阻器可以是任何合适的电阻器,例如图1-4中的多个电阻器中的任何一个。电阻器也可以以任何合适的顺序选择,例如参考图1和5A所描述的。例如,所选择的初始第一和第二电阻器可以是主电阻器,其产生用于确定后续电阻器选择的电压信号。

在动作523,向所选择的电阻器提供电压。可以使用解复用器或任何合适的开关将所选择的电阻器连接到电压源。在一些实施方案中,第二电阻器通过第一电阻器连接到电压源,并且两个电阻器分压电压。

在动作525,测量指示所选电阻器的阻抗值的比率的电压信号。电压信号可以由连接到第一和第二电阻器的ADC测量。在一些实施方案中,ADC连接在串联连接的电阻器之间。第一和第二电阻器也可以并联布置。

在动作527,确定是否已经测量了足够的电压信号。可以测量任何合适数量的电压信号以便生成PUF值。重复动作521、523、525、527和529,直到测量到足够多的电压信号。在动作529,当要测量附加电压信号时,基于一个或多个测量电压信号选择新电阻器。如参考图1所描述的,新电阻器的选择可以直接基于测量的电压信号,基于测量的电压信号从存储器检索的排序,或者通过任何合适的排序。

在动作531,根据测量的电压信号生成PUF值。电压信号可以以任何合适的方式组合,例如,使用参考图4和5A描述的任何方法。

图6示出了根据本申请实施方案的用于提供基于阻抗的物理不可克隆功能(PUF)的方法600。方法600可以由包括处理电路109和309的电路100和300执行。

在动作601,将电源电压提供给第一电阻器和电连接到第一电阻器的第二电阻器,其中所述第一电阻器具有第一阻抗值并且所述第二电阻器具有第二阻抗值。第一和第二电阻器可以从多个电阻器中选择,例如,图1-4中的任何电阻器。在一些实施方案中,第一和第二电阻器中的一个或两个可以是微调电阻器。在进一步的实施方案中,可以通过修整一个或多个电阻器将一个或多个预定值编码为一个或多个阻抗值。

在动作603,模数转换器用于产生表示电压信号的第一多个位,该电压信号指示第一阻抗值和第二阻抗值的比率。可以响应于向电阻器提供电源电压而产生电压信号。在一些实施方案中,解复用器可用于向电阻器的子集提供电源电压。

在动作605,基于第一多个位生成PUF值。在一些实施方案中,选择位的一部分(例如,1、2、4、6、8或更多个最高有效位)以生成PUF值。在一些实施方案中,PUF值可以基于表示指示第一阻抗值与第三阻抗值的比率的电压信号的第二多个位,其中第三阻抗值对应于电连接到第一电阻器的第三电阻器。在一些实施方案中,生成PUF值可以包括串联第一和第二多个位的全部或部分。PUF值可以以任何合适的方式生成,例如参考任何较早的图1和图2中描述的那些中的任何一个。

在一些实施方案中,方法600可以进一步包括基于第一多个位选择具有附加阻抗值的附加电阻器,并且产生表示附加电压信号的附加多个位,该附加电压信号指示附加阻抗值和第二阻抗值的比率。例如,可以如参考图1和5C所描述的那样执行这些动作。

图7示出了可以在本文描述的类型的软解码PUF中采用的电阻器的示例。图7示出了微调电阻器701,其包括电阻材料731和切口733。微调电阻器701可以用于图1-4中描述的任何电路中的全部或部分电阻器。电阻材料731可以是用于提供电阻的任何合适的材料。不存在电阻材料731产生切口733并改变电阻器701的阻抗值。可以去除电阻材料731的一部分以形成切口733。例如,可以使用激光修整工艺形成切口733。切口733的尺寸确定被编码的值。应当理解,合适的修剪可以包括与所示的非限制性示例不同的切口。例如,虽然图7示出了包括单个切口的实施方案,但是替代实施方案可以包括电阻器中的多个切口。而且,可以实现去除电阻器上的任何合适形状、定位和图案化的部分。一些电阻材料731将使切口733不被视觉检查遮挡。一些电阻材料731将使切口733可见,但是编程/预定阻抗不太可能从视觉检查中看出。

微调电阻器701可用于编码预定值。预定阻抗值可用于编码由ADC和用于生成PUF值的其他电路生成和/或恢复的预定值。例如,可以使用预定阻抗值作为用于存储识别号的一次性可编程存储器的替代,用于测量其他电阻器的阻抗值/比率的顺序以及其他预定量。可以按电阻器、每个管芯或在任何合适的处理体积执行微调。

图8示出了根据本申请实施方案的其上具有软解码PUF电路800的半导体芯片841。半导体芯片841可以是任何合适的半导体芯片,诸如处理器、微处理器、现场可编程门阵列(FPGA)和/或专用集成电路(ASIC)。半导体芯片841连接到软解码PUF电路800,其可以是任何合适的软解码PUF电路800,例如参考图1-4所描述的。在一些实施方案中,软解码PUF电路800可以分散在半导体芯片841上。软解码PUF电路800可以由半导体芯片841控制,并且响应于来自半导体芯片841的信号,输出PUF值到半导体芯片841。半导体芯片841可以使用PUF值进行加密、认证和/或任何合适的目的。

图9示出了根据一个实施方案的其上具有传感器951和软解码PUF电路900的半导体芯片941。半导体芯片941包括处理电路909、传感器951和软解码PUF电路900,其包括解复用器905、电阻器901和ADC907。半导体芯片941和/或处理电路909可以是任何合适的半导体芯片,例如处理器、微处理器、FPGA和/或ASIC。传感器951可以是配置成收集数据的任何合适的传感器。在一些实施方案中,传感器951包括运动传感器(例如,加速计和/或其他运动传感器中的陀螺仪)、位置传感器(例如,其他位置传感器中的全球定位系统接收器)、环境传感器(例如,温度传感器和其他环境传感器)、医疗传感器(例如,心电图、脉搏血氧仪、以及其他传感器)和/或任何其他合适的传感器。在一些实施方案中,传感器951可以是合适的换能器。软解码PUF电路900允许半导体芯片941加密来自传感器951的数据和/或验证从传感器951接收数据的设备。

软解码PUF电路900包括用于基于电路元件的阻抗值生成PUF值的电路,例如,如参考图1-4所描述的。在一些实施方案中,软解码PUF电路900可以分散在半导体芯片941上。在一些实施方案中,传感器951的一部分、半导体芯片941及其任何封装可以用作电阻器901中的一个,例如用于检测具有改变的PUF值的半导体芯片941的篡改。解复用器905将电压和/或电流源连接到电阻器901中的一个或多个以产生电压信号,该电压信号可指示各个阻抗值和/或所连接的电阻器的阻抗值的比率。电压信号由ADC907数字化,并且数字电压信号可以由处理电路909组合以产生一个或多个PUF值,如参考前面的图所描述的。

图10示出了根据本申请实施方案的包括印刷电路板1063的器件1061,该印刷电路板1063具有本文所述类型的软解码PUF电路1000。图10示出了设备1061,其包括连接到PCB1063的软解码PUF电路1000。软解码PUF电路1000连接到PCB 1063并且包括处理电路电阻器1001、解复用器1005、ADC 1007和处理电路1009。

该设备可以是任何合适的移动或固定电子设备。设备可以使用软解码PUF电路1000来生成用于加密、认证和/或任何合适目的的PUF值。在图10的示例中,PCB 1063封装在器件1061内。在一些实施方案中,PCB 1063以任何合适的方式物理耦合和/或电连接到器件1061。例如,PCB 1063可以通过诸如通用串行总线(USB)接口的接口可移除地连接到设备1061。软解码PUF电路1063可以如参考图1-4、8和9所描述的那样起作用。

在一些示例中,本文公开的组件可以读取影响组件执行的功能的参数或指令。这些参数或指令可以物理地存储在任何形式的合适存储器中,包括易失性存储器(例如RAM)或非易失性存储器(例如磁性硬盘驱动器)。此外,参数或指令可以逻辑地存储在适当的数据结构(例如由用户空间应用程序定义的数据库或文件)中或存储在共同的共享数据结构(例如由操作系统定义的应用程序注册表)中。另外,一些示例提供了系统和用户界面,其允许外部实体修改参数和指令,从而配置组件的行为。

基于前述公开内容,本领域普通技术人员应该清楚,这里公开的实施方案不限于特定的计算机系统平台、处理器、操作系统、网络或通信协议。而且,应该显而易见的是,本文公开的实施方案不限于特定架构。

应当理解,本文描述的方法和设备的实施方案不限于应用于以下描述中阐述的或附图中示出的构造的细节和组件的布置。该方法和设备能够在其他实施方案中实现并且能够以各种方式实践或实施。这里提供的具体实现的示例仅用于说明性目的,而不是限制性的。特别地,结合任何一个或多个实施方案描述的动作、元件和特征不旨在从任何其他实施方案中的类似角色中排除。

术语“大约”、“基本上”和“大概”在一些实施方案中可以用于表示在目标值的±20%内,在一些实施方案中可以用于表示在目标值的±10%内,在一些实施方案中可以用于表示在目标值的±5%内,在一些实施方案中可以用于表示在目标值的±2%内。术语“大约”和“大概”可以包括目标值。

已经如此描述了本发明的至少一个实施方案的若干方面,应当理解,本领域技术人员将容易想到各种改变、修改和改进。这些改变、修改和改进旨在成为本公开的一部分,并且旨在落入本发明的精神和范围内。因此,前面的描述和附图仅是示例性的。

24页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种将各业务系统数据集成展示和统一登录的系统和方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!