3. PUF基本概念:定义、工作原理、与TRNG/密钥存储的区别、理想PUF属性
物理不可克隆功能(Physical Unclonable Function,PUF)是硬件安全领域的一项基础性技术,其核心思想是利用芯片制造过程中不可避免的工艺偏差(Process Variation)来生成独一无二的“芯片指纹”。与传统的数字密钥存储方式不同,PUF不将密钥以二进制形式存储在非易失性存储器(NVM)中,而是通过物理实体的微观结构特征来“提取”密钥。本章将系统阐述PUF的定义、工作原理、与TRNG及密钥存储的本质区别,并深入解析理想PUF应具备的三大核心属性:可靠性、唯一性与不可克隆性。
3.1 PUF的定义与核心原理
PUF是一种基于物理实体微观结构差异的硬件安全原语。其本质是一个“激励-响应”(Challenge-Response Pair,CRP)系统:当向PUF电路输入一个激励信号(Challenge)时,由于芯片制造过程中产生的随机工艺偏差(如晶体管阈值电压失配、金属层线宽波动、氧化层厚度差异等),PUF会输出一个唯一且不可预测的响应信号(Response)。这个响应就是该芯片独有的“物理指纹”。
从半导体物理角度看,PUF的随机性来源是深亚微米工艺下的工艺偏差。即使使用完全相同的光罩和工艺流程,同一晶圆上不同位置的芯片,其晶体管的电学参数也会存在微小差异。这些差异在宏观尺度上不可控、不可预测,但在微观尺度上却是稳定的物理特征。PUF正是利用这些特征来生成密钥或进行身份认证。
3.1.1 核心原理:工艺偏差的利用
以最经典的SRAM PUF为例,其工作原理如下:SRAM单元由两个交叉耦合的反相器构成,在上电瞬间,由于两个反相器中晶体管阈值电压(Vth)的微小失配,每个单元会随机地稳定在逻辑“0”或逻辑“1”状态。这种上电初值在芯片制造完成后即被“固化”,成为该芯片的独特签名。对于同一芯片,每次上电读取的结果高度一致(可靠性);对于不同芯片,相同地址单元的上电初值则表现出显著的随机性(唯一性)。
3.1.2 PUF的CRP工作机制
PUF的CRP机制可以形式化描述为:R = f(C, P),其中C是激励输入,P是芯片的物理特征参数(工艺偏差),f是PUF电路的传递函数,R是响应输出。对于强PUF(如Arbiter PUF),激励空间呈指数级增长,每个激励都对应一个独特的响应;对于弱PUF(如SRAM PUF),激励空间有限,通常直接读取单元状态作为响应。
| PUF类型 | 激励空间 | 典型实现 | 主要应用 |
|---|---|---|---|
| 弱PUF | 有限(线性) | SRAM PUF、D触发器PUF、RO PUF | 密钥生成、设备指纹 |
| 强PUF | 指数级 | Arbiter PUF、Bistable Ring PUF | 挑战-响应认证、防伪 |
3.2 PUF与TRNG、密钥存储的本质区别
在硬件安全设计中,PUF、TRNG(真随机数发生器)和传统密钥存储是三种截然不同的技术路径。理解它们的区别对于正确选择安全方案至关重要。
3.2.1 PUF vs TRNG
TRNG(True Random Number Generator)利用热噪声、抖动等熵源产生每次都不相同的随机数,其核心要求是不可预测性和非确定性。而PUF的核心要求是可重复性和确定性——同一芯片对同一激励必须产生相同的响应。简言之:TRNG每次输出都不同,PUF每次输出必须相同。两者在芯片上可以共存,但设计目标和验证方法完全不同。
3.2.2 PUF vs 传统密钥存储
传统密钥存储(如eFuse、Flash、EEPROM)将密钥以二进制形式持久化存储在非易失性存储器中。这种方式的致命弱点是:攻击者可以通过物理探针、聚焦离子束(FIB)切割、侧信道分析等手段直接读取或推断密钥。PUF则从根本上规避了这一风险——密钥不以明文形式存在于任何存储介质中,而是“隐藏”在物理结构中。当需要密钥时,PUF通过读取物理特征来重建密钥;当不需要时,物理特征“消失”在芯片的微观结构中,无迹可寻。
3.3 理想PUF的三大核心属性
一个理想的PUF必须同时满足可靠性、唯一性和不可克隆性三大属性。这三个属性相互独立又相互制约,是评估PUF性能的核心指标。
3.3.1 可靠性(Reliability)
可靠性衡量的是同一PUF在不同环境条件下(温度、电压、老化)产生一致响应的能力。数学上,可靠性通常用误码率(Bit Error Rate,BER)或芯片内汉明距离(Intra-Hamming Distance,Intra-HD)来量化。理想情况下,同一芯片在不同时间、不同环境下读取同一激励,响应应该完全一致,即Intra-HD = 0。
在实际工程中,可靠性受以下因素影响:
- 温度漂移:晶体管阈值电压随温度变化,可能导致SRAM单元的上电初值翻转。
- 电压波动:供电电压的瞬态跌落会影响PUF电路的建立时间。
- 器件老化:负偏压温度不稳定性(NBTI)和热载流子注入(HCI)会改变晶体管参数。
- 噪声干扰:电源噪声和衬底耦合噪声可能引起亚稳态。
提升可靠性的常用方法包括:多次读取取多数表决、温度补偿电路、纠错码(如BCH码)、以及模糊提取器中的安全密钥协商机制。
3.3.2 唯一性(Uniqueness)
唯一性衡量的是不同PUF芯片之间响应的差异性。理想情况下,任意两颗不同芯片对同一激励的响应应该完全独立,即芯片间汉明距离(Inter-Hamming Distance,Inter-HD)接近理论最大值50%。如果Inter-HD显著偏离50%,说明PUF的响应存在偏向性(Bias),攻击者可以利用这种偏向性来预测响应。
唯一性的评估方法:在相同测试条件下,对N颗芯片施加相同的激励集,计算所有芯片两两之间的汉明距离,取平均值。理想值为N/2(即50%)。工程上,Inter-HD在45%~55%范围内被认为是可接受的。
3.3.3 不可克隆性(Unclonability)
不可克隆性包含两层含义:物理不可克隆和数学不可克隆。物理不可克隆是指即使攻击者拥有制造PUF的完整工艺参数和光罩文件,也无法制造出一颗响应完全相同的芯片——因为工艺偏差是随机且不可控的。数学不可克隆是指即使攻击者获得了大量的CRP(激励-响应对),也无法通过建模或机器学习方法预测未知激励的响应。
对于强PUF,数学不可克隆性尤为重要。攻击者可能通过收集数千个CRP来训练神经网络模型,试图逼近PUF的传递函数。因此,强PUF的设计必须保证激励-响应关系具有足够的非线性复杂度,使得建模攻击的计算复杂度呈指数级增长。
| 属性 | 量化指标 | 理想值 | 工程可接受范围 | 主要威胁 |
|---|---|---|---|---|
| 可靠性 | Intra-HD / BER | 0% | < 5%(配合ECC后 < 1e-6) | 温度、电压、老化 |
| 唯一性 | Inter-HD | 50% | 45% ~ 55% | 工艺偏差不足、设计偏向 |
| 不可克隆性 | 建模攻击成功率 | ≈ 50%(随机猜测) | < 60% | 机器学习建模、侧信道 |
3.4 实战场景:SRAM PUF在安全芯片中的应用
为了更直观地理解PUF的实际应用,我们以一个典型的物联网安全芯片设计为例,展示SRAM PUF如何用于设备身份认证和密钥管理。
3.4.1 项目背景与约束
某智能门锁方案商需要为每把锁生成唯一的设备密钥,用于与手机APP进行蓝牙配对认证。传统方案使用eFuse烧录密钥,但存在以下痛点:
- eFuse烧录需要额外的测试工序,增加制造成本。
- 密钥一旦烧录,无法更改,且容易被物理探针读取。
- 供应链环节存在密钥泄露风险。
3.4.2 初始现象与目标
该方案商决定改用SRAM PUF方案。目标指标:密钥长度128-bit,误码率低于1e-6,芯片间汉明距离大于45%,芯片面积开销小于0.1mm²(在40nm工艺下)。
3.4.3 关键参数与测试数据
在量产测试阶段,对1000颗芯片进行了以下测试:
测试条件:VDD = 1.1V ± 10%,温度范围 -40°C ~ 85°C
测试结果:
- 平均Intra-HD(常温25°C):1.2%
- 最大Intra-HD(85°C高温):3.8%
- 平均Inter-HD:49.7%
- 最小Inter-HD:46.2%
- 128-bit响应中,平均翻转位数:1.5 bit(常温),4.9 bit(高温)
3.4.4 分析判断与方案调整
测试数据显示,常温下可靠性良好,但高温下误码率偏高。分析发现,高温导致SRAM单元中部分临界失配的单元发生翻转。解决方案:
- 增加冗余位:将PUF响应长度从128-bit扩展到256-bit,通过BCH纠错码(可纠正8-bit错误)提取128-bit稳定密钥。
- 多数表决:每次读取时连续读取7次,取多数值作为最终响应,将有效误码率降低约3个数量级。
- 温度补偿:在PUF读取电路中加入温度传感器,当温度超过70°C时,自动调整参考电压。
3.4.5 结果对比与复盘
经过优化后,最终量产数据:
| 指标 | 优化前 | 优化后 | 目标值 |
|---|---|---|---|
| 最大BER(85°C) | 3.8% | 0.02% | < 0.1% |
| 密钥重建成功率 | 96.5% | 99.99% | > 99.9% |
| 额外面积开销 | 0.08mm² | 0.12mm² | < 0.15mm² |
3.5 常见误区与设计要点
在PUF的工程实践中,设计者常陷入以下误区:
总结而言,PUF为硬件安全提供了一种“无密钥存储”的全新范式。理解其定义、工作原理、与TRNG/密钥存储的区别,以及可靠性、唯一性、不可克隆性三大属性,是设计安全、可靠、可量产PUF方案的基础。在实际项目中,设计者需要根据应用场景(弱PUF用于密钥生成,强PUF用于认证)选择合适的PUF架构,并通过纠错、温度补偿、后处理等手段确保PUF在真实环境中的稳定性和安全性。