当前位置: 首页 > news >正文

物理不可克隆函数(PUF)技术解析:从硅片指纹到硬件安全基石

1. 物理不可克隆函数PUF技术全景解析从硅片指纹到安全基石在嵌入式系统和物联网设备爆炸式增长的今天硬件安全正面临前所未有的挑战。传统的安全方案比如在芯片中烧录一个唯一的密钥到非易失性存储器如EEPROM或Flash中面临着成本高昂、易受物理攻击和供应链安全等多重问题。你有没有想过每一片从晶圆厂生产出来的硅片其内部晶体管、金属连线的微观结构其实都是独一无二的就像人类的指纹一样物理不可克隆函数Physical Unclonable Function, PUF正是将这种“硅片指纹”转化为安全优势的巧妙技术。它不存储密钥而是从芯片制造过程中无法避免且不可控的微观物理差异中“推导”出密钥或身份标识。这意味着攻击者即使拆开芯片、用电子显微镜扫描每一层也无法复制或预测出另一个芯片的“指纹”。对于成本敏感、数量庞大的物联网终端设备而言PUF提供了一种原生、低成本且难以克隆的硬件信任根。接下来我将结合多年的行业实践为你深入拆解PUF的核心原理、主流实现方案、关键应用协议以及那些在实验室里学不到的实战经验和避坑指南。2. PUF的核心原理与分类为什么说它是“天生”的安全原语要理解PUF首先要跳出“存储密钥”的传统思维。PUF的本质是一个物理系统当你用一个输入挑战去刺激它时它会基于自身独特的物理特性产生一个输出响应。这个映射关系响应 f(挑战)是由制造过程中的随机物理偏差所决定的。2.1 物理不可克隆性的根源为什么说PUF是“不可克隆”的这源于半导体制造的本质。即使在最先进的工艺下晶体管的阈值电压、栅氧层厚度、掺杂浓度、金属线的宽度和厚度等参数在纳米尺度上都存在随机的、统计性的波动。这些波动被称为工艺偏差Process Variation。它们不是缺陷而是物理定律如原子扩散、光刻随机性下的必然结果。即使采用完全相同的设计掩模版和工艺配方生产出来的两个芯片其内部数以亿计的晶体管特性也绝不可能完全一致。PUF电路被精心设计成对这些微观差异极度敏感从而将微小的物理偏差放大为可测量的、稳定的数字输出差异。试图精确复制这些物理偏差在工程上和经济学上都是不可行的这就构成了PUF安全性的物理基础。2.2 强PUF与弱PUF两种不同的安全范式根据挑战-响应对CRP空间的大小和主要应用PUF被分为两大类它们的特性和安全模型截然不同。弱PUFWeak PUF有时也称为物理混淆密钥POK 它的行为更像一个静态的、只读的“指纹”存储器。通常它只支持极少甚至单一的挑战例如上电动作并产生一个固定的、较长的响应比如128位或256位的二进制串。这个响应通常直接作为或经过处理后成为设备的唯一密钥或标识符。核心特性CRP空间小响应稳定且需保密。安全模型响应本身是秘密。一旦响应被泄露该PUF提供的安全性即告失效。因此弱PUF的输出必须严格保护通常只在芯片内部使用用于派生加密密钥而密钥本身永远不会离开芯片的安全边界。类比就像一个人的静态指纹采集后作为身份凭证密钥。凭证本身必须保密。强PUFStrong PUF 它拥有一个极其庞大的挑战-响应对空间例如对于64位挑战有2^64种可能。服务器可以随机选择一个从未用过的挑战发送给设备设备用其PUF计算并返回响应服务器通过验证响应是否正确来完成认证。核心特性CRP空间巨大指数级响应公开。安全模型响应可以公开。安全性基于即使攻击者收集了海量但仍是多项式级别的CRP也无法构建一个数学模型来准确预测对一个全新挑战的响应。挑战-响应对可以公开传输。类比就像一本包含无数个问答对的“魔法书”。任何人都可以问一个新问题挑战但只有真正的“魔法书”能给出正确答案响应。即使别人偷听了很多之前的问答也无法猜出新问题的答案。注意强PUF和弱PUF的划分并非绝对其根本区别在于安全模型和应用协议。一个弱PUF如果搭配一个HMAC哈希消息认证码硬件模块也可以实现认证功能但这时的认证能力来源于密码学算法而非PUF本身的大容量CRP空间。2.3 误差校正从“模糊指纹”到“精确密钥”无论是强PUF还是弱PUF其物理响应的一个固有挑战是噪声。温度、电压、器件老化甚至量子噪声都会导致对同一挑战的多次测量产生个别比特的翻转。对于身份认证可以允许少量比特的错误例如256位响应中允许20位不同。但对于密钥生成要求是零误差——一个比特的错误就会导致解密失败。因此PUF系统必须包含误差校正机制。最常见的方案是“模糊提取器”Fuzzy Extractor框架它包含两个阶段注册阶段Enrollment在受控环境如工厂下对PUF进行多次测量获取一个“模糊”的原始响应R。然后使用纠错码如BCH码、重复码为R生成一个公开的“辅助数据”Helper Data或“伴随式”SyndromeS。同时从R中提取出一个稳定、均匀的密钥K。重建阶段Reconstruction在设备现场PUF再次产生一个可能有噪声的响应R‘。利用公开的辅助数据S和纠错算法可以从R‘中恢复出完全相同的密钥K。这里存在一个关键的安全权衡辅助数据S是公开的它不能泄露关于密钥K的信息。设计不当的纠错方案可能会导致信息泄漏。因此通常会从PUF中提取远多于密钥长度的原始比特利用哈希函数等密码学原语进行压缩和熵提取确保最终密钥的随机性和安全性。3. 主流PUF架构深度剖析与实现细节纸上谈兵终觉浅让我们深入到几种经过业界充分研究和实际部署的PUF架构中看看它们是如何将物理偏差转化为数字比特的。3.1 仲裁器PUF一场精心设计的“赛跑”仲裁器PUF是强PUF的经典代表其核心思想是测量两条对称路径的延迟差。电路结构它由一系列相同的二选一多路复用器MUX级联而成构成两条并行的路径。一个输入信号如时钟边沿同时进入两条路径。挑战Challenge比特序列控制每一级MUX的选通端决定信号是走“上路”还是“下路”。由于制造偏差即使两条路径的版图设计完全对称信号通过每条路径的实际延迟也会有细微差别。在路径的终点一个仲裁器通常是一个D锁存器检测哪一路的信号先到达并输出“0”或“1”作为响应。安全性分析理想的仲裁器PUF其响应与挑战之间的关系可以近似为一个线性函数。这早期被证明是一个安全弱点——攻击者可以通过收集一定数量的CRP使用机器学习算法如逻辑回归、深度学习快速构建出PUF的精确数学模型从而进行克隆。后续研究通过引入非线性来增强安全性例如XOR仲裁器PUF将多个独立仲裁器PUF的输出进行异或XOR可以显著增加建模的复杂度。轻量级安全PUF在输出端增加更复杂的非线性组合逻辑。前馈仲裁器PUF将前面级的输出作为后面级的控制信号引入非线性依赖。实战心得仲裁器PUF对布局布线极其敏感。在FPGA上实现时必须使用严格的布局约束确保两条比较路径的走线长度、负载电容尽可能匹配否则系统性的布线差异会淹没随机的工艺偏差导致PUF的随机性熵下降。在ASIC设计中需要后端设计团队密切配合使用共同质心Common Centroid等模拟版图技术来匹配晶体管。3.2 SRAM PUF利用上电状态的“记忆”SRAM PUF是最常见、最易于获取的弱PUF之一因为它直接利用现成的SRAM存储器。原理一个标准的6晶体管SRAM单元在首次上电时其两个内部节点Q和Q非处于一个亚稳态。由于两个交叉耦合的反相器之间存在微小的阈值电压Vth失配热噪声会触发正反馈使得单元最终稳定到一个确定状态0或1。这个上电状态是由制造偏差决定的因此对于同一块SRAM其初始状态在多次上电中是高度可重复的。实现与挑战优势无需额外硬件几乎所有微控制器和SoC都内置SRAM可通过软件直接读取上电状态。稳定性问题那些晶体管匹配度极高的“弱”单元其上电状态可能不稳定容易受温度、电压影响而翻转。因此不能使用整个SRAM阵列的所有比特。熵源质量商业SRAM单元并非为PUF优化可能存在系统性偏差例如整体倾向于上电为1。需要通过筛选和后期处理来提取均匀的随机比特。误差校正策略SRAM PUF常采用“软判决”辅助数据。在注册阶段不仅记录每个单元最终稳定状态0/1还通过多次测量记录其“可靠性”或“置信度”例如100次上电中出现95次15次0则置信度高。在重建时优先使用高置信度的比特并结合纠错码可以大幅提高密钥重建的成功率。避坑指南数据残留攻击SRAM掉电后数据会在短时间内残留。攻击者可以通过快速掉电再上电或进行冷启动攻击来影响或读取到之前的数据干扰PUF响应。解决方案包括在读取PUF响应前先对SRAM进行写操作覆盖旧数据。老化效应负偏置温度不稳定性NBTI会导致晶体管阈值电压随时间漂移如果SRAM单元长期处于某一状态如作为内存使用其PUF特性可能发生缓慢变化。用于PUF的SRAM区域应在平时保持断电或写入随机模式。3.3 环形振荡器PUF频率之争环形振荡器PUF既可作为弱PUF用于密钥生成也可通过配置构成强PUF。基本结构在芯片上实例化大量如128个设计相同的环形振荡器由奇数个反相器首尾相接构成。每个振荡器由于工艺偏差其振荡频率会有微小差异。弱PUF模式比较两个振荡器的频率频率高的输出1否则输出0。通过比较多个振荡器对可以产生一个比特串。其挑战就是选择哪两个振荡器进行比较。强PUF模式如k-sum PUF将多个振荡器分为两组对每组内振荡器的频率进行求和然后比较两个和值的大小。挑战比特用于选择哪些振荡器属于哪个组。这种方式引入了更多的非线性。误差处理与仲裁器PUF类似频率接近的振荡器对容易因环境变化导致比较结果翻转。因此在注册阶段需要筛选出频率差异足够大的“稳定对”来生成密钥比特。环形振荡器PUF也适合采用基于索引的编码Index-Based Syndrome, IBS等先进的纠错方案该方案能利用频率差异的幅度信息软信息在不泄露密钥信息的前提下高效纠错。设计要点环形振荡器对电源噪声和衬底噪声非常敏感。在布局时必须将它们充分分散开并采用良好的电源去耦和隔离技术防止振荡器之间相互锁频injection locking否则会严重破坏PUF的唯一性。3.4 光学PUF与其他新兴架构除了上述基于标准CMOS工艺的PUF还有一些其他思路光学PUF早期概念验证利用激光通过具有随机散射介质的透明块产生的散斑图案作为响应。虽然难以集成但其物理机制非常直观展示了PUF的核心思想。新兴架构探索研究人员还在探索利用其他物理效应如忆阻器的随机阻值、薄膜晶体管的阈值电压分布等来构建PUF以寻求更高的熵密度或对抗新型攻击。4. PUF的安全应用协议与实战部署理解了PUF是什么以及如何实现之后最关键的一步是如何安全地使用它。这里面的协议设计至关重要用错了地方或设计不当再好的PUF也会被攻破。4.1 强PUF用于设备认证协议这是一个典型的基于挑战-响应的认证流程假设一个服务器需要认证一个嵌入强PUF的客户端设备如物联网传感器注册Enrollment在可信的制造或初始化环境中服务器或可信第三方与设备交互。服务器随机生成大量挑战C1, C2, ..., Cn发送给设备并记录设备PUF产生的对应响应R1, R2, ..., Rn。这个(Ci, Ri)数据库被安全地存储在服务器端。每个CRP只能使用一次。认证Authentication设备向服务器发起认证请求。服务器从尚未使用的CRP数据库中随机选取一个挑战Ci发送给设备。设备将Ci输入其PUF得到响应Ri‘并将其返回给服务器。服务器比较收到的Ri‘与本地存储的Ri。如果两者匹配或在允许的容错比特数内则认证通过。服务器将此CRP标记为已使用永不重用。协议的关键与挑战CRP耗尽问题每个CRP只能用一次以防重放攻击。对于需要频繁认证的设备服务器需要存储海量CRP或定期在安全环境下如通过一次成功的认证会话进行CRP更新重新注册这带来了管理复杂性。模型化攻击这是对强PUF最直接的攻击。攻击者如果能够以某种方式如作为合法设备、通过侧信道或直接物理访问收集到足够多的CRP就可以尝试训练一个数学模型来模拟PUF的行为。这就是为什么需要非线性仲裁器PUF等抗机器学习攻击的架构。侧信道攻击攻击者可能通过测量PUF计算响应时的功耗、电磁辐射或时间差异来推断其内部信息。例如针对环形振荡器PUF有研究通过电磁辐射分析来窃取其频率信息。防御措施包括添加随机延迟、平衡功耗路径等。4.2 弱PUF用于密钥生成与存储协议这是弱PUF最核心的应用旨在替代传统的安全非易失性存储器eFuse, OTP来安全地存储根密钥。密钥生成Key Generation设备上电后触发弱PUF如读取SRAM上电状态。获得一个原始、有噪声的比特串R_raw。使用在注册阶段生成的公开辅助数据S结合纠错解码算法从R_raw中重建出唯一的、稳定的密钥K。密钥K被加载到芯片内的安全存储区如临时寄存器或受保护的RAM中用于后续的加密、解密或签名操作。密钥使用密钥K永远不离开芯片。所有需要使用该密钥的操作如AES加密、HMAC计算都在芯片内部的安全模块中完成。外部只能看到加密或认证后的结果。掉电即消失设备掉电后密钥K从易失性存储器中消失。下次上电时必须重新通过PUF和辅助数据S来重建。攻击者即使拆解芯片也无法从物理结构中找到静态存储的密钥。安全优势与考量对抗物理探测密钥不是以电荷形式存储在某个特定的浮栅或熔丝中而是“分散”在整个电路的物理特性里。 invasive 攻击如微探针试图读取密钥的行为很可能会破坏产生密钥的物理结构本身。对抗逆向工程即使攻击者成功对芯片进行延迟层、提取出完整的网表也无法知道每个晶体管的精确阈值电压等参数因此无法模拟出正确的PUF响应。辅助数据的安全公开的辅助数据S必须通过信息论安全的方式设计确保其不会泄露密钥信息。这是模糊提取器理论研究的核心。4.3 新兴方向公共模型PUF与定时认证传统的PUF协议需要服务器端秘密存储CRP或模型。一个更理想的方向是公共模型PUFPPUF或定时认证PUF。核心思想PUF的数学模型即函数f是公开的。任何人都可以用这个模型计算任何挑战的响应但计算速度很慢。而真正的PUF硬件计算响应则非常快。认证协议服务器生成一个随机挑战C并用公开模型开始计算响应R_model这是一个慢速过程。同时服务器将挑战C发送给客户端设备。客户端设备用其PUF硬件快速计算出响应R_hw并返回。服务器收到R_hw后检查其是否正确并验证响应时间是否短于一个阈值T0。T0设定为比公开模型计算所需时间短但比硬件计算时间加上网络延迟长。如果响应正确且及时到达则认证通过。优势服务器无需存储任何秘密安全性建立在“硬件计算比软件模拟快得多”这一物理假设上。这实现了真正的“无秘密”认证。挑战构建一个其公开模型计算复杂度被严格证明远高于硬件实现的计算复杂度的PUF是当前研究的难点。一些基于光学或模拟电路复杂动力系统的方案正在探索中。5. PUF实战中的常见问题、攻击与防御实录在实际产品和系统中应用PUF会遇到许多在论文中不会详述的工程挑战和安全威胁。5.1 稳定性挑战与环境适应性PUF的响应必须足够稳定才能可靠地用于认证或生成密钥。影响稳定性的主要因素包括电压与温度PVT变化这是最大的挑战。晶体管延迟、SRAM稳定性都强烈依赖于工作电压和环境温度。老化晶体管随着使用时间增长其特性会缓慢漂移如NBTI、HCI效应可能导致PUF响应发生永久性漂移。噪声包括热噪声、散粒噪声等随机噪声会导致单次测量结果的随机波动。应对策略差分设计这是第一道防线。无论是仲裁器PUF比较两条路径还是SRAM PUF比较两个反相器差分结构能抵消共模的环境变化如全局电压下降对两条路径的影响是相似的。环境补偿在芯片内部集成温度和电压传感器根据传感器读数采用查找表或公式对PUF响应进行动态补偿或校准。筛选与编码在工厂测试阶段在多个电压温度角Corner下测试PUF筛选出那些在所有条件下都稳定的比特位用于密钥生成。对于不稳定的比特要么弃用要么采用更强的纠错码。容错协议对于认证应用设定一个合理的比特错误容限如256位响应中允许20位错误可以避免复杂的纠错逻辑但需要仔细计算错误接受率和错误拒绝率。5.2 已知攻击手段与防御思考PUF并非银弹了解其攻击面是设计安全系统的前提。攻击类型攻击目标攻击原理潜在防御措施建模攻击强PUF收集大量CRP使用机器学习LR、SVM、神经网络训练模型来预测新挑战的响应。采用非线性PUF结构如XOR PUF限制挑战的尝试速率和总数在PUF输出后添加密码学哈希或轻量级混淆。侧信道攻击强/弱PUF通过功耗分析SPA/DPA、电磁辐射EMA或时序分析推断PUF内部状态或响应。使用恒定功耗逻辑、添加随机延迟、屏蔽电磁辐射在密钥生成路径中确保PUF输出后立即进行哈希或加密操作避免密钥以明文形式在总线上传输。物理篡改/克隆强/弱PUF使用聚焦离子束FIB等先进手段试图修改电路以匹配目标PUF的响应。依赖PUF的物理不可克隆性本身在芯片顶层增加主动屏蔽层、传感器网格等防篡改设计一旦探测到物理入侵即擦除密钥。错误注入攻击弱PUF通过毛刺攻击Glitch改变电源电压或时钟诱导PUF产生错误响应从而绕过认证或影响密钥重建。增加电压/时钟监控电路在关键操作序列中设置冗余校验采用多次测量取多数判决的机制。重放攻击强PUF窃听并记录一次合法的挑战-响应对随后冒充设备重放该响应。确保每个CRP仅使用一次服务器端管理在协议中引入随机数Nonce或时间戳。可靠性攻击弱PUF通过极端环境条件如超低温或控制上电时序影响SRAM PUF等的不稳定单元从而操纵或降低密钥熵。环境传感器与异常检测在密钥派生函数中使用盐值Salt和环境参数。5.3 系统集成与供应链安全考量PUF IP的集成将PUF作为IP核集成到SoC中时需要确保其与数字逻辑、模拟模块的隔离避免噪声干扰。PUF的模拟/混合信号部分需要精心的电源设计和布局。测试与校准PUF的测试不同于传统逻辑测试。需要在多个电压温度点下进行特性化生成每个芯片独有的辅助数据。这个测试数据的管理本身就是一个安全挑战必须在安全的环境下进行并注入芯片。信任根传递PUF生成的密钥如何安全地传递给芯片内部的其他安全模块如密码学加速器、安全启动ROM需要建立芯片内部的安全总线或硬件信任链。生命周期管理PUF响应可能随时间缓慢漂移。系统设计需要考虑密钥更新或辅助数据刷新机制。对于寿命极长的设备如工业设备这是一个必须提前规划的问题。6. 选型指南与未来展望面对不同的应用场景如何选择合适的PUF需要高安全等级的身份认证且设备资源受限优先考虑强PUF如改进型的仲裁器PUF。它无需昂贵的非易失性安全存储和复杂的密码学协处理器非常适合低成本RFID标签、传感器节点。需要安全存储一个或多个根密钥用于加密、安全启动等弱PUF如SRAM PUF或专用环形振荡器PUF是更直接的选择。它通常与一个轻量级的纠错和密钥派生模块配合为系统提供一个受硬件保护的密钥。已有现成微控制器想增加硬件信任根SRAM PUF是最容易上手的方案。通过软件读取片上SRAM的初始状态结合软件实现的模糊提取器算法可以在不修改硬件的情下增加安全特性。但需要注意其稳定性和熵质量最好选择芯片中未使用或专用的SRAM区域。对面积和功耗极其敏感需要仔细评估不同PUF架构的面积和功耗。仲裁器PUF通常面积很小但可能需要更复杂的纠错。专用模拟PUF IP可能面积更优化。未来趋势后量子安全PUF探索能够抵抗量子计算攻击的PUF构造和协议。PUF与AI安全研究PUF在保护机器学习模型、为AI芯片提供硬件身份等方面的应用。更先进的纠错与熵提取开发效率更高、泄漏更少的编码方案以从有噪声的物理源中榨取每一比特可用的熵。标准化进程目前PUF技术尚未形成像AES、SHA那样的国际通用标准。NIST等机构正在推动PUF的评估与标准化工作这将有助于产业的健康发展。从我过去参与的几个物联网安全芯片项目来看PUF的成功集成三分靠设计七分靠验证和测试。尤其是在量产阶段如何高效、安全地完成数十万甚至数百万颗芯片的PUF个性化生成辅助数据是决定项目成败的关键。我们建立了一套自动化测试系统在恒温恒压的测试环境中并行对多颗芯片进行PUF响应采集、稳定性评估和辅助数据计算并将辅助数据加密后注入芯片的OTP区域。这个过程本身就是一场对PUF可靠性、生产一致性和测试安全性的综合考验。
http://www.rkmt.cn/news/1402881.html

相关文章:

  • 终极PDF OCR指南:3分钟让扫描文档变身可搜索电子书
  • 掌握VTube Studio API:从零开始构建专业虚拟主播插件
  • taotoken为python开发者提供的标准openai sdk接入示例
  • 从实验室到厨房:用ChatGPT生成个性化饮食方案的6步黄金工作流(含血糖响应预测模型接口调用实录)
  • 博德之门3脚本扩展器:5分钟快速上手的终极游戏改造指南
  • 如何快速构建你的专属英语发音MP3音频下载库
  • LeetDown:让老款iPhone和iPad重获新生的macOS降级神器
  • 基于改进全局配准的钢轨磨损高精度检测:从点云配准到工业实践
  • 全面解析FFXVIFix:解锁《最终幻想16》终极游戏体验的完整指南
  • 如何在Mac上三分钟制作Windows启动盘:WinDiskWriter完整指南
  • 从Postman到IDEA HTTP Client:一站式API测试与调试实战指南
  • 终极指南:如何用Crimson字体提升你的设计专业度
  • SDR++终极指南:从无线电新手到频谱侦探的完整成长路径
  • 油船改造电动船外机哪个更实用
  • OBS高级遮罩插件:专业直播画面优化解决方案
  • HS2-HF_Patch汉化补丁:彻底解决Honey Select 2语言障碍的技术方案
  • 让每个窗口都完美适配:WindowResizer窗口尺寸调节工具指南
  • PyTorchTensorFlow 框架面试对比问答
  • Figma中文插件终极指南:3分钟快速安装,让设计工作更高效
  • PFD:面向侧信道防护的灵活高阶掩码方案,实现硬件安全时空权衡
  • Nginx配置文件格式化终极指南:3分钟让混乱配置变整洁
  • 财富载体的生命周期:从贝壳到数字货币的演进与个人资产配置策略
  • 如何快速备份微博:3步完成完整PDF导出的终极指南
  • arXiv MCP Server:如何打造你的终极AI研究助手,5大优势提升学术效率
  • 多值逻辑与量子AI融合:构建下一代智能计算架构
  • 怎样高效使用Ryujinx Switch模拟器:7个实用技巧全面指南
  • 华硕笔记本性能调优革命:G-Helper轻量化控制工具完全解析
  • 基于PLC的全自动洗衣机控制系统设计 (设计源文件+万字报告+讲解)(支持资料、图片参考_降重降ai)_文章底部可以扫码
  • 使用Taotoken的TokenPlan套餐后月度AI调用成本变化分析
  • Cropper.js v3.x升级踩坑记:从CDN到本地引入,这些配置项写法变了!