叨叨游戏网
您的当前位置:首页正文

物理不可克隆函数

来源:叨叨游戏网

有网友碰到这样的问题“物理不可克隆函数”。小编为您整理了以下解决方案,希望对您有帮助:

解决方案1:

物理不可克隆函数(Physical Unclonable Function,PUF)

物理不可克隆函数是一种利用物理随机性创建唯一ID密钥的技术。它基于硬件的随机特性,使得每个设备在制造过程中都会形成独特的“指纹”或ID,这些ID难以被复制或克隆,从而提供了硬件级别的安全保障。

一、PUF的工作原理

PUF的工作原理主要依赖于物理结构和特性的随机性。这些随机性来源于制造过程中的微小差异,如晶体管的不均匀性、电阻的微小差异等。当外部向PUF电路提供一个挑战(challenge,一般为128或256bit的数据)时,PUF电路会根据其内部的物理随机性给出一个响应(response,通常为1bit的数据)。每个设备的挑战和响应对应关系都是独一无二的,且随机分布。

二、PUF的工作流程

PUF的工作流程可以概括为以下几个步骤:

挑战输入:外部向PUF电路输入一个挑战。物理响应:PUF电路根据内部的物理随机性生成一个响应。响应输出:PUF电路将生成的响应输出给外部。

以下是PUF工作流程的示意图:

三、PUF的分类

PUF主要分为强PUF和弱PUF两类:

强PUF:可以用较小的电路面积和功耗提供大量的挑战-响应对。弱PUF:一般只能提供固定位数的挑战-响应对,如128或256bit。

四、PUF的实现方式

以SRAM PUF为例,介绍PUF的一种实现方式:

SRAM的一个bit单元由交叉耦合的两个反相器和读写管组成。当上电时,由于工艺误差的存在,两个反相器的反转电压存在差异。随后,交叉耦合的反相器会通过自反馈将Q和Q-拉到VDD/0或0/VDD。每个SRAM bit单元都存在独一无二的随机误差,因此组合多个SRAM bit单元并依次读出即可得到一组随机的密钥。当批量生产后,每一组SRAM上电后的输出都是随机且不同的。

以下是SRAM bit cell的示意图:

五、评价PUF的指标

评价PUF的性能主要关注以下几个指标:

唯一性:不同PUF芯片的响应都是独一无二且不重复的。理想情况下,任两个PUF响应的片间汉明距离为50%。随机性:PUF芯片产生的响应中“1”和“0”的比例相等。理想情况下各为50%,且能通过NIST套件测试以及相关性测试。可靠性:在同一激励下,同一个PUF多次读取的响应一致程度。理想情况下,输出结果不随温度、电压和老化等因素影响,即误码率(BER)为0%。抗攻击性:PUF需要抵御各种手段的攻击,如机器学习的建模攻击、侧信道攻击(功耗、延迟、电磁辐射、温度等)。

六、如何设计PUF

设计PUF的过程可以概括为以下几个步骤:

熵源选择:研究工艺库(pdk)中哪些器件存在随机性,并选择一个静态的熵源,即每次上电随机性保持不变的器件。熵源提取电路设计:设计一个电路来稳定地提取熵源的随机性。仿真验证:使用cadence的ADE XL蒙特卡洛仿真功能来仿真随机性,并验证熵源的随机性。然后仿真PUF电路的PVT(工艺、电压、温度)特性,保证其随机性和误码率。版图设计与流片:如果各种特性都仿真无误,即可进行版图设计,并进行后仿和流片。

综上所述,物理不可克隆函数是一种利用物理随机性创建唯一ID密钥的技术,具有广泛的应用前景和重要的安全价值。

显示全文