4、仲裁器PUF:工作原理、延迟路径差异、激励-响应对(CRP)生成、优缺点分析

好,我们进入第四章。仲裁器PUF,这是PUF家族里最经典、也是我最早接触的一类。说实话,刚入行那会儿,我觉得这玩意儿挺神奇的——同样的芯片,同样的制造工艺,居然能靠走线的延迟差异来生成独一无二的“指纹”。

咱们今天就把它的底裤扒干净。从原理到CRP生成,再到它到底好在哪、坑在哪,一条龙讲透。

4.1 工作原理:一场“谁先到”的比赛

仲裁器PUF的核心思想,说白了就是一场赛跑。你想想看,两个信号从同一起点出发,沿着两条不同的路径跑,谁先到达终点,谁就赢。这个“谁赢”的结果,就是1比特的响应。

但问题来了——这两条路径是故意设计成对称的。理论上,它们应该完全一样,信号到达时间应该相同。可实际上呢?芯片制造过程中的工艺偏差(比如掺杂浓度、氧化层厚度、线宽变化)会导致每条路径上的延迟出现微小差异。这些差异是随机的、不可预测的,而且每个芯片都不一样。

我习惯把这种结构叫做“延迟竞赛电路”。它的基本单元是一个二选一多路选择器(MUX),两个MUX背靠背组成一个“开关盒”。多个开关盒级联起来,就形成了一条延迟链。

核心逻辑:激励(Challenge)控制每个开关盒的切换方向,从而决定两条路径的拓扑结构。响应(Response)由仲裁器(通常是D触发器)判断哪条路径的信号先到达。

嗯,这里要注意:仲裁器本身也有偏差,但我们可以通过设计来消除它的影响。后面会讲到。

4.2 延迟路径差异:工艺偏差的“放大镜”

为什么两条对称的路径会产生延迟差异?这得从芯片制造的物理层面说起。

我曾在一次流片项目中遇到过这样的问题:同一批晶圆上,相邻两个芯片的同一位置,晶体管的阈值电压能差出20mV。你想想看,这20mV的差异,在高速信号传输中会被逐级放大,最终导致仲裁结果完全不同。

延迟路径差异的来源主要有三个:

  • 栅极延迟差异:晶体管沟道长度、栅氧化层厚度的随机波动,导致开关速度不同。
  • 互连线延迟差异:金属线的宽度、厚度、介电常数在微观尺度上的不均匀,造成信号传播速度变化。
  • 温度与电压梯度:芯片不同区域的温度和供电电压存在微小差异,进一步影响延迟。

这些差异叠加在一起,就构成了PUF的“熵源”。而且,这种差异是芯片固有的,你没法通过外部手段去复制——除非你能把整个制造过程原封不动地复现一遍,但那是不可能的。

我的经验:在设计仲裁器PUF时,延迟链的长度(即级联的开关盒数量)直接影响CRP的随机性和稳定性。太短了,差异不够明显;太长了,功耗和面积吃不消。一般建议64~128级,具体看工艺节点。

4.3 激励-响应对(CRP)生成:从比特到指纹

好了,原理搞清楚了,咱们来看看CRP是怎么生成的。这个过程其实很直观:

  1. 输入激励(Challenge):一个N比特的二进制数,每一位控制一个开关盒的切换方向。比如,第i位为0,就让上路径走直线、下路径走交叉;为1则反过来。
  2. 信号传播:上升沿信号从起点出发,沿着由激励决定的路径同时向终点传播。
  3. 仲裁判决:D触发器在时钟上升沿采样两个信号的到达时间。如果上路径先到,输出1;下路径先到,输出0。
  4. 生成响应(Response):重复上述过程M次(每次使用不同的激励),得到一个M比特的响应序列。

举个例子,假设我们有一个4级仲裁器PUF:

激励(Challenge):1010(二进制)
路径配置:
  第1级:上路径走直线,下路径走交叉
  第2级:上路径走交叉,下路径走直线
  第3级:上路径走直线,下路径走交叉
  第4级:上路径走直线,下路径走交叉
仲裁结果:上路径先到 → 响应为1

一个激励对应1比特响应。要生成128比特的密钥,就需要128个不同的激励。这些激励-响应对(CRP)就是PUF的“身份凭证”。

注意:CRP的数量是有限的。对于一个N级仲裁器PUF,理论上最多有2^N种不同的激励。但实际上,由于路径延迟差异的统计特性,很多激励产生的响应是相关的,有效CRP数量远小于理论值。我曾经踩过这个坑——以为CRP空间很大,结果实际测试发现很多响应比特之间高度相关,导致密钥熵不够。

4.4 优缺点分析:没有银弹

仲裁器PUF的优点很明显,但缺点也同样突出。咱们用表格来对比一下:

维度 优点 缺点
结构 全数字电路,标准单元即可实现,无需模拟模块 对版图对称性要求极高,否则引入系统性偏差
CRP空间 理论上指数级增长(2^N) 实际有效CRP数量受限于工艺偏差和噪声
稳定性 在恒定环境下表现良好 对温度、电压变化敏感,需要纠错码辅助
安全性 难以物理克隆,建模攻击有一定门槛 容易受到机器学习建模攻击(如逻辑回归、SVM)
面积与功耗 面积小(约1000~2000门),功耗低 延迟链越长,动态功耗越大

我个人觉得,仲裁器PUF最大的软肋就是建模攻击。为什么?因为它的行为本质上是一个线性阈值函数——每个开关盒的延迟差异可以看作一个权重,仲裁结果就是这些权重的加权和。攻击者只要收集到足够多的CRP,就能用机器学习算法精确地拟合出这个函数,从而预测未知激励的响应。

我曾经参与过一个项目,客户要求用仲裁器PUF做设备认证。我们一开始没太在意建模攻击的风险,结果被合作方的安全团队用几千组CRP就攻破了。嗯,从那以后,我再也不敢轻视这个威胁了。

当然,也不是没有应对办法。比如:

  • 非线性化:在延迟链中插入非线性元件(如XOR门),破坏线性关系。
  • 混淆激励:对输入的激励进行哈希或加密,增加攻击者的建模难度。
  • 限制CRP公开:只使用少量CRP,用完即弃,不给攻击者积累数据的机会。

这些方法各有优劣,具体选哪种,得看你的应用场景和安全需求。

4.5 知识图谱:仲裁器PUF全景

下面这张图是我自己整理的仲裁器PUF知识结构,方便你快速回顾:

仲裁器PUF 知识全景图 仲裁器PUF 工作原理 延迟竞赛:谁先到谁赢 MUX开关盒级联构成延迟链 延迟路径差异 栅极延迟 + 互连线延迟 温度/电压梯度影响 CRP生成 激励控制路径拓扑 D触发器仲裁输出1/0 优点 全数字、面积小、CRP空间大 难以物理克隆,实现成本低 缺点 易受建模攻击(机器学习) 对温度/电压敏感,需纠错码

这张图把仲裁器PUF的四个核心维度串起来了。你可以看到,工作原理是基础,延迟路径差异是熵源,CRP生成是应用接口,优缺点分析则是选型依据。缺了任何一个环节,你对它的理解都是不完整的。

好了,仲裁器PUF就讲到这里。下一类要聊的是环形振荡器PUF,它和仲裁器PUF的思路完全不同,但同样经典。咱们到时候再细说。