PUF-FSM绑定技术:基于硬件指纹的FPGA IP保护与按设备许可方案

发布时间:2026/5/27 15:58:37

PUF-FSM绑定技术:基于硬件指纹的FPGA IP保护与按设备许可方案 1. 项目概述当FPGA IP保护遇上PUF-FSM绑定在FPGA设计的世界里IP核就像是建筑师手中的预制构件它们能极大地加速系统开发降低设计风险。然而这些凝结了核心开发者智慧和心血的“数字资产”却长期面临着被非法克隆、复制和滥用的风险。传统的加密保护方案虽然有效但往往伴随着高昂的硬件开销、复杂的密钥管理以及难以规避的物理攻击侧信道。更重要的是它们难以支持一种更灵活、更符合现代商业逻辑的授权模式——按设备许可Pay-Per-Device Licensing。想象一下一个系统开发者SD只需要为一个具体的、物理的FPGA芯片购买IP授权而不是为“无限次使用”支付天价费用这无疑将极大降低中小规模项目的准入门槛。正是在这样的背景下一种名为“PUF-FSM绑定”的技术方案进入了我们的视野。它巧妙地绕开了传统加密的桎梏利用芯片制造过程中与生俱来的、无法克隆的物理指纹——物理不可克隆函数与IP设计中最常见的控制逻辑单元——有限状态机构建了一种“硬件DNA”级别的绑定关系。简单来说就是让IP核的“灵魂”功能逻辑只认特定FPGA芯片的“身体”PUF响应。没有正确的“身体”再完美的“灵魂”也无法被唤醒。这不仅为IP保护提供了全新的思路也为实现精细化的按设备许可铺平了道路。今天我们就来深入拆解这项发表于IEEE TIFS 2015的经典工作看看它是如何将理论构想落地为可实践的工程方案并探讨其背后的设计哲学与实操细节。2. 核心原理为什么是PUF与FSM的联姻要理解PUF-FSM绑定的精妙之处我们必须先拆解其两大核心组件PUF和FSM并理解它们为何能成为一对“天作之合”。2.1 物理不可克隆函数芯片的“数字指纹”PUF并非一个具体的电路而是一种安全原语。它的核心思想是利用集成电路制造过程中无法精确控制的微观工艺偏差如晶体管阈值电压、金属线宽、氧化层厚度的微小差异。这些偏差对于每个芯片都是独一无二且不可预测的就像人类的指纹。一个设计良好的PUF电路能将这种物理随机性映射为数字化的挑战-响应对。关键特性决定了其适用性唯一性同一型号的不同芯片对同一挑战输入会产生截然不同的响应输出。这构成了设备身份识别的基石。不可克隆性由于依赖于不可控的物理随机性即使拥有完整的电路设计图纸和制造工艺也无法复制出一个能产生完全相同响应的PUF。这从根本上杜绝了硬件层面的仿冒。瞬时性响应仅在需要时生成无需像传统加密方案那样在非易失性存储器中永久存储静态密钥。密钥即PUF响应是“用后即焚”的这极大地降低了密钥被物理提取或侧信道分析的风险。在本文的实现中作者选择了一种基于延迟的PUF。其核心是利用一对结构相同但物理上存在细微差异的路径例如两个并行的进位链多路选择器通过比较信号在这两条路径上的传播延迟产生一个随机但稳定的比特位0或1。将多个这样的单元并联就能生成一个多位的PUF响应。这种设计的优势在于完全用硬件描述语言HDL实现不依赖特定的硬核或固定布线具有很高的灵活性和可移植性。2.2 有限状态机IP的“控制中枢”FSM是数字系统中描述控制逻辑和行为的最常用模型之一。它由一组状态、状态之间的转移条件由输入和当前状态决定以及输出构成。绝大多数复杂的IP核尤其是那些涉及协议处理、流程控制的部分其核心都是一个或若干个FSM。为什么选择FSM作为绑定载体普遍性如论文所述除了少数纯粹的组合逻辑或高速数据通路模块FSM在工业级IP设计中几乎无处不在。以FSM为切入点保护范围可以覆盖绝大多数有价值的IP。结构性FSM具有清晰的状态和转移图结构便于进行系统性的、可验证的修改。我们可以通过向原始的FSM中“嵌入”额外的状态和转移路径来构造一个“增强型FSM”。可控性FSM的行为完全由输入序列驱动。如果我们能设计一种机制使得只有来自特定PUF的正确响应序列才能驱动FSM走过一段“隐藏的”解锁路径最终到达正常工作的初始状态那么我们就实现了IP与PUF的绑定。2.3 绑定逻辑从“是什么”到“怎么做”理解了PUF和FSM各自的特点后绑定的逻辑就呼之欲出了。其核心思想不是“加密”IP代码本身而是“锁住”IP的执行路径。传统加密方案 vs. PUF-FSM绑定方案传统方案将整个IP的配置比特流用AES等算法加密。FPGA芯片内需要一个永久的密钥存储单元如eFuse和一个硬核解密引擎。运行时解密整个比特流。问题在于密钥可能被物理攻击提取解密过程功耗、时序特征可能被侧信道分析难以对单个IP核进行细粒度授权。PUF-FSM绑定不改变IP核心功能逻辑的比特流。而是修改其控制FSM增加一系列“锁态”和“验证转移”。IP上电后首先进入一个锁定的初始状态。此时FSM会向片上的PUF电路发起挑战并等待响应。只有来自授权FPGA的、正确的PUF响应序列才能像一把“动态钥匙”驱动FSM通过所有预设的验证转移最终跳转到正常的工作状态。如果响应错误FSM将永远困在锁定状态或错误状态IP功能无法启动。这种设计的精妙之处在于密钥动态化密钥PUF响应不是存储的而是每次上电时临时生成的。攻击者无法通过静态分析获取。攻击目标转移攻击者即使完整拷贝了比特流由于目标FPGA的PUF物理特性不同无法产生正确的响应序列拷贝的IP无法工作。攻击者若想破解必须反向工程整个增强型FSM这在计算上是极其困难的STG恢复是NP难问题。支持按设备许可IP供应商CV可以为每一个具体的FPGA设备ID关联其PUF CRP库单独计算并发放一个解锁“许可证”。这个许可证本质上是根据目标PUF响应和FSM结构计算出的一个公开数据无需保密。系统开发者SD为每个FPGA设备购买许可证即可。注意这里存在一个关键的安全假设——PUF的挑战-响应对CRP数据库必须由可信的FPGA供应商FV安全地管理和提供。CV或SD在需要为某个FPGA生成许可证时需向FV提供该FPGA的设备ID由FV返回对应的CRP。这个过程中CRP的传输需要安全通道保护。3. 方案架构与协议流程纸上谈兵终觉浅绝知此事要躬行。理解了核心思想后我们来看这套机制是如何通过一套清晰的协议在FPGA供应商FV、IP供应商CV、系统开发者SD和最终用户EU之间运转起来的。整个流程可以分解为四个环环相扣的阶段。3.1 第一阶段FPGA设备注册这是整个生态的起点由FPGA供应商主导。PUF集成与测试FV在生产阶段将PUF电路以硬核或经过充分验证的软核形式植入到每一片FPGA芯片中。芯片出厂前FV在受控环境下对每一片FPGA的PUF进行特征化测试收集大量的挑战-响应对并建立安全的数据库将CRP与一个唯一的公开设备标识符如ID(FPGA_i)绑定。设备分发当CV或SD需要购买FPGA芯片进行开发时FV向其销售已注册的、内含PUF的FPGA芯片并告知其设备ID。这里的关键是PUF的挑战输入可以公开存储于芯片的非易失性存储器中因为安全性不依赖于挑战的保密性而完全依赖于响应的不可预测性和唯一性。3.2 第二阶段硬件IP核注册与分发这一阶段IP供应商开始准备“被锁定的”IP。IP设计与锁定CV设计好一个硬件IP核HWIP_j并为其分配一个唯一ID。然后CV运用PUF-FSM绑定技术修改该IP核中的FSM生成一个“锁定版”的IP配置比特流记为b{HWIP_j}_locked。这个过程可以抽象为一个锁定函数b{HWIP_j}_locked Lock( b{HWIP_j} )。原始IP的功能被“冻结”在锁定状态。IP分发CV将ID(HWIP_j)公开发布如产品目录并将对应的b{HWIP_j}_locked安全地存储在自己的数据库中。当SD需要购买此IP时向CV提供ID(HWIP_j)CV即从库中调出对应的锁定版比特流发送给SD。此时SD拿到的是一个在任何FPGA上都无法直接工作的“锁头”。3.3 第三阶段硬件IP核授权这是实现“按设备许可”的核心步骤。许可证请求SD计划将购买到的锁定版IPb{HWIP_j}_locked用于其手中的某个特定FPGA设备FPGA_i上。于是SD向CV发起授权请求提供ID(HWIP_j)和ID(FPGA_i)。CRP获取与许可证计算CV收到请求后向FV查询ID(FPGA_i)对应的PUF挑战-响应对CRP。FV验证CV身份后通过安全通道返回对应的CRP。请注意此步骤是安全关键点需要防止CRP在传输中被窃听或篡改。许可证生成与下发CV利用收到的PUF响应R结合自己当初锁定IP时设计的FSM增强结构即知道正确的解锁路径计算出一个公开的许可证License。这个许可证可能是一串特定的输入序列或一个解码密钥。CV将License发送给SD。IP解锁SD将License例如烧写到FPGA旁边的非易失性存储器中与锁定版IPb{HWIP_j}_locked一同配置到目标FPGAFPGA_i上。上电后IP内的增强型FSM利用FPGA_i的PUF产生的实时响应R‘结合外部提供的License进行验证。只有R‘与CV计算License时使用的R一致即来自同一PUF验证才能通过FSM解锁IP开始正常工作。3.4 第四阶段最终产品授权如果SD开发的是一个包含多个第三方IP的完整FPGA产品并要销售给最终用户EU流程类似。EU购买产品时需提供其计划运行该产品的FPGA设备ID给SD。SD作为集成商向FV获取该FPGA的CRP并为产品中所有锁定的IP核计算许可证或向各CV请求然后将这些许可证打包给EU。EU将许可证配置到系统中产品即可在指定的FPGA上运行。系统集成示意在一个多IP的复杂系统中可以设想在FPGA旁边有一块小容量的非易失性存储器如SPI Flash。里面存储着两部分数据一是来自FV的、针对该FPGA的PUF挑战集二是来自各个CV的、针对该FPGA和各个IP的许可证。FPGA上电配置时一个轻量级的引导控制器会读取这些数据依次验证每个IP的许可证验证通过后才允许相应的IP模块被加载到可重构 fabric 中运行。4. 锁定与解锁机制的技术深潜协议流程勾勒了商业逻辑而真正的技术魔法藏在“锁定”与“解锁”的具体实现中。这是整个方案最精妙也最需要细致理解的部分。4.1 FSM增强结构构建迷宫论文提出了一种向原始FSM添加多层状态结构的通用方法。我们通过一个简化例子来理解。假设原始FSM有6个状态S0~S5S0是复位状态。我们的目标是在S0之前增加一个“迷宫式”的预解锁状态机。定义启动状态创建一个新的固定上电状态Sr。系统每次上电FSM都从Sr开始而不是S0。构建多层状态网络我们添加一个偶数层数M例如M4的附加状态网络。奇数层第135...层每层包含m个状态例如m4。这些状态是“岔路口”。偶数层第246...层每层只包含1个状态。这些状态是“通道”。设计状态转移从Sr出发有m条转移边分别指向第一层奇数层的m个状态。哪条边被激活由第一部分PUF响应决定。从第一层的每个状态都只有一条转移边指向第二层偶数层的那个唯一状态。这条边的激活条件由许可证的一部分与第二部分PUF响应共同决定例如通过异或操作。如此交替直到经过M次转移后最终到达原始FSM的复位状态S0。到达S0意味着迷宫走通IP解锁。参数与安全性的关系m每层分支数和M层数直接决定了“迷宫”的复杂度和密钥空间。所需PUF响应的总位数L_PUF M * log2(m)。例如M6 m4 则L_PUF 6 * 2 12位。实际应用需要更长的位数如128位来抵抗暴力破解。所需许可证的位数L_license (M/2) * log2(m)。许可证是公开的但其有效性完全依赖于秘密的PUF响应。4.2 一个具体的锁定例子参考论文中的图6我们以基准电路dk16为例。假设我们构建一个2层M2的附加结构每层分支数m4需要2位PUF响应来选择4条路径中的一条。原始状态S0是目标。附加结构创建状态Sr, S7, S8, S9, S10, S11等。Sr到{S7, S8, S9, S10}有4条边。锁定过程CV在修改FSM时预先设定了第一条转移路径Sr - S7的激活条件为输入{b1b2} 01。同时CV知道目标FPGA的PUF对某个挑战的响应前两位是01。因此CV在设计时就将“当输入为01时转移到S7”这条边写入FSM。类似地CV预设第二条转移路径S7 - S0的激活条件为输入{b1b2} 10。许可证计算当SD请求授权时CV从FV获知目标FPGA的PUF响应假设为01 00前两位用于第一步后两位用于第二步。第一步PUF响应01直接匹配预设条件01无需计算。第二步预设条件需要输入10但PUF响应是00。CV计算一个公开的许可证密钥Key使得PUF_Response XOR Key Preset_Condition即00 XOR Key 10得出Key 10。这个Key10就是许可证的一部分。解锁过程SD将许可证10存入系统。FPGA上电FSM从Sr开始。PUF产生实时响应01匹配第一条边FSM转移到S7。在S7状态系统将读取到的许可证10与PUF产生的第二组响应00进行异或得到10这恰好匹配预设的转移条件S7 - S0FSM成功跳转到S0IP解锁。这个过程的核心在于CV是唯一知道FSM“迷宫地图”预设的转移条件的人。它利用目标FPGA独一无二的PUF响应“指纹”为这个特定的地图计算出了一套公开的“行走指令”许可证。任何其他FPGA由于PUF响应不同即使用同一套指令也无法走迷宫。4.3 延迟型PUF的参考实现论文为了验证方案的可行性在28nm Xilinx Zynq-7000 FPGA上实现了一个128位的延迟型PUF。这里有几个工程上的关键点结构创新早期的延迟PUF设计在Virtex-5上利用SLICEM中的查找表配置为移位寄存器来实现。但在Zynq-7000等7系列FPGA上SLICEM结构发生了变化原有方法不再适用。作者创新性地使用4个Slice2个CLB来实现1位PUF两个SLICEM配置为移位寄存器生成激励另外两个SLICEL配置为进位链多路选择器来产生延迟竞争。这体现了针对特定FPGA架构进行底层硬件资源灵活运用的工程能力。资源开销极低一个128位PUF仅消耗约258个移位寄存器LUT和256个触发器在目标芯片上占比约1%。这证明了该方案的“轻量级”特性开销几乎可忽略不计。可靠性挑战与应对所有基于硅工艺的PUF都会受到环境温度、电压和老化效应的影响导致响应位偶尔翻转比特错误。实验显示当芯片温度从40°C升至70°C时64位PUF响应的平均汉明距离差异位数从2.38升至5.50最大差异为9位。关键发现论文观察到一个“真空带”现象同一PUF在不同环境下的响应差异最大9位远小于不同PUF之间响应的差异最小18位。这意味着可以设置一个合理的阈值比如10-17位当差异小于阈值时认为是同一PUF的环境噪声大于阈值则认为是不同PUF。这避免了误判。增强手段对于要求更苛刻的场景可以结合纠错码、模式匹配或温度感知协作等成熟技术来进一步提升响应稳定性这些技术能以可接受的额外开销将错误率降至极低水平如10^-6。5. 安全性分析与潜在攻击应对没有绝对的安全只有相对的代价。PUF-FSM绑定方案的安全性建立在几个关键假设和属性之上我们需要理性分析其对抗各种攻击的能力。5.1 对抗的主要攻击模型暴力破解攻击攻击方式攻击者尝试穷举所有可能的许可证以解锁IP。防御能力强。安全性直接取决于PUF响应位数L_PUF和FSM迷宫复杂度。例如使用128位PUF响应许可证空间可达2^128这是计算不可行的。方案的安全性由PUF的熵和FSM结构共同保障。PUF移除/篡改攻击攻击方式攻击者试图物理移除FPGA上的PUF电路或用一块存储了合法PUF响应的SRAM来替代它从而欺骗IP。防御能力中等偏强。PUF电路与FPGA fabric深度集成物理移除会破坏芯片且成本高昂。用SRAM模拟需要预先知道正确的CRP而CRP由FV安全保管。此外可以在FSM中嵌入混淆状态用于PUF活性检测如果PUF被静态存储器替代可能无法通过这类动态检测。PUF模拟攻击攻击方式通过机器学习等方法利用大量采集的CRP来建模预测PUF的响应。防御能力针对弱PUF很强。本文使用的延迟PUF属于“弱PUF”其挑战-响应对数量有限通常每个PUF只有少数几个或一个稳定CRP用于身份识别。攻击者难以获得足够的数据样本来训练有效模型。而对于“强PUF”拥有指数级CRP空间则需要防范此类建模攻击。窃听PUF响应攻击攻击方式在PUF产生响应时通过探针或侧信道手段窃取瞬时响应的值。防御能力强。这是本方案的一大优势。PUF响应仅在IP上电解锁的极短时间内生成和使用之后便被清除。攻击窗口非常小。论文还建议在解锁完成后关闭PUF模块的电源这进一步消除了运行时侧信道泄露的风险。反向工程增强型FSM攻击攻击方式通过逆向工程比特流试图提取出增强型FSM的状态转移图并移除或绕过附加的锁定逻辑。防御能力强。从门级网表或比特流中恢复出完整、准确的FSM状态转移图是一个已知的NP难问题。此外CV在设计时可以采取状态合并、创建黑洞状态即无法跳出的状态等技术进一步增加逆向工程的难度。侧信道攻击攻击方式通过分析功耗、电磁辐射或时序来推断PUF响应或内部逻辑。防御能力存在风险但可缓解。任何硬件安全模块都难以完全免疫侧信道攻击。论文指出其延迟PUF采用并行触发器结构且所有触发器无论输出0或1都会工作减少了功耗差异。同时PUF仅在启动时短暂工作也降低了被分析的机会。但若要应对高等级攻击仍需结合掩码、随机化等专门的抗侧信道设计。5.2 方案的安全边界与假设必须清醒认识到该方案的安全建立在几个前提之上FPGA供应商FV是可信的FV会安全地生成、存储和分发PUF的CRP数据库。如果FV的数据库泄露或作恶整个体系崩溃。CRP传输通道是安全的CV从FV获取CRP或者SD从CV获取许可证的过程需要加密等安全协议保护防止中间人攻击。PUF的物理不可克隆性成立这是方案的根基。如果未来出现技术能精确复制或模拟特定芯片的工艺偏差此方案将受到根本性挑战。FSM锁定逻辑实现正确增强型FSM的设计不能有逻辑漏洞否则可能被绕过。6. 性能开销评估与工程权衡任何安全方案都需要付出代价关键在于代价是否可接受。论文通过详实的实验数据展示了PUF-FSM绑定方案在面积、时序和功耗上的开销结果令人鼓舞。6.1 PUF实现开销如前所述一个128位的延迟PUF在28nm FPGA上仅消耗约258个LUT和256个触发器资源占用率约1%。对于动辄拥有数万甚至数十万个LUT的现代FPGA而言这个开销是微不足道的完全可以作为“标配”安全模块集成到芯片中。6.2 FSM修改开销这是IP开发者更关心的部分因为这会直接影响IP本身的性能。论文使用MCNC‘91基准电路和GenFSM生成的大型随机FSM进行了综合实验。对小规模FSM的影响在状态数较少的基准电路如dk16,planet上由于电路本身规模很小添加的锁定逻辑占比相对较高会导致面积开销显著增加LUT增加50%以上时序也有一定影响~12%。这在意料之中因为附加的状态和逻辑成为了电路的主要部分。对大规模实际IP的影响这才是更有意义的场景。在由GenFSM生成的、包含数百个状态和转移的大型FSM上实验结果截然不同面积开销LUT数量平均减少2.67%Slice数量平均减少6.25%。出现负开销是因为综合工具在优化更大的、结构更复杂的FSM时有机会进行更有效的逻辑压缩和映射反而优化了整体结果。时序开销平均仅增加0.64%。对于大多数设计这个级别的时钟周期增加几乎可以忽略不计。功耗开销平均仅增加0.01%。微乎其微。核心结论对于真实的、复杂的IP核其FSM只是整个设计中的一小部分通常≤1%而IP核又包含大量的数据通路、存储器、运算单元等。因此对FSM进行适度修改所引入的相对开销在系统级层面上是非常低的。这证明了该方案具备实际工程应用的可行性。6.3 参数选择m和M的权衡m每层分支数和M层数是设计者可以调节的旋钮。安全性m和M越大构成的迷宫越复杂暴力破解空间呈数增长安全性越高。所需PUF响应位数L_PUF M * log2(m)也相应增加。开销如图12所示随着m和M增大面积和时序开销大致呈正相关增长但并非严格线性因为综合工具会进行优化。工程建议在实际设计中无需盲目追求极大的m和M。例如选择m42位控制M10则L_PUF20位再加上PUF响应本身的熵已能提供足够的安全强度同时保持很低的开销。设计者应在安全需求和资源约束之间取得平衡。7. 方案局限性与未来演进方向尽管PUF-FSM绑定方案优势明显但作为一名工程师我们必须看到其边界和可改进之处。7.1 现有方案的局限性保护范围局限该方案通过锁定FSM来保护整个IP。但是如果一个IP中不包含FSM例如某些纯组合逻辑模块或高度流水化的数据通路单元则此方法无法直接应用。论文提到这类模块通常是小型专用模块如数字滤波器、地址解码器在实际工业IP中控制逻辑FSM是普遍存在的因此该方案覆盖了主要保护目标。抗物理攻击的挑战虽然方案消除了永久密钥存储的风险但PUF电路本身和FSM解锁逻辑仍是物理攻击的目标。论文承认任何基于PUF的安全机制如果没有采取适当的对抗措施都可能受到侧信道攻击的威胁。需要结合电路级防护技术如传感器网络、随机延迟来提升整体鲁棒性。对PUF可靠性的依赖方案的可靠性建立在PUF响应稳定可用的基础上。虽然“真空带”现象和纠错技术可以解决多数环境扰动但极端环境或长期老化仍可能带来风险。需要将PUF可靠性增强技术作为必要组成部分。生态系统依赖方案需要一个可信的FPGA供应商FV作为CRP的托管方以及安全的CRP传输机制。这引入了额外的信任和管理成本。7.2 可能的演进与融合与抗篡改技术结合PUF-FSM绑定防止了IP的非法使用但未专门保护IP免遭逆向工程或篡改。未来可以与主动屏蔽、传感器网络等抗篡改技术结合为IP提供从“使用控制”到“内容保护”的全方位防护。面向异构计算与多芯片模块随着Chiplet和异构集成技术的发展IP可能以芯粒形式存在。如何将PUF-FSM绑定理念扩展到跨Die、跨芯片的IP保护是一个有趣的方向。动态绑定与可撤销授权目前的绑定是静态的、一次性的。未来可以探索支持许可证有效期、使用次数限制、甚至远程撤销授权的动态绑定机制使按设备许可更加灵活。标准化与自动化工具链要让该技术被工业界广泛采纳需要FPGA厂商、EDA工具商和IP供应商共同推动形成标准化的PUF接口、FSM锁定描述语言以及自动化的许可证生成与管理工具链降低开发者的使用门槛。PUF-FSM绑定方案为我们打开了一扇新的大门硬件安全可以不依赖于复杂的密码运算和脆弱的密钥存储而是植根于硬件本身不可克隆的物理特性。它将IP保护从“软件加密”思维转向了“硬件绑定”思维为FPGA生态提供了一种轻量、高效且支持新型商业模式的保护手段。尽管前路仍有挑战需要攻克但其清晰的逻辑、较低的代价和已验证的可行性无疑使其成为硬件IP保护领域一个极具生命力的技术路线。对于从事FPGA安全或IP开发的工程师而言深入理解这一方案不仅是掌握一项具体技术更是对“硬件信任根”这一安全哲学的一次深刻实践。

相关新闻