跳至主要内容

什么是物理不可克隆功能?

关于物理不可克隆功能的很好定义可以在“物理上不可克隆的功能:构造,属性和应用”由Roel Maes撰写:

“物理不可克隆的功能(PUF)是创新的物理安全原语,可产生不可克隆的和固有的特定于实例的物理对象度量; 在许多方面,它们是人类生物统计学的无生命等同物。 由于它们能够安全地生成和存储机密信息,因此它们使我们能够引导信息安全系统的物理实现。”

如此处所述,PUF可以是产生这些特定于实例的测量值的任何物理对象。 但是,在本文中,我们将重点介绍PUF的最著名子集,即 PUF。 顾名思义,这种特定类型的PUF从硅获得其特定于实例的测量值,这意味着这些PUF是集成电路(IC)的一部分。

由于深亚微米制造工艺的差异,IC中的每个晶体管的物理特性都会略有不同。 这些变化导致在电子特性方面(例如晶体管阈值电压和增益因数)的微小但可测量的差异。 由于在制造过程中无法完全控制这些过程变化,因此无法复制或克隆这些物理设备属性。

通过利用这些固有的变化,发现PUF可用作任何给定IC的唯一标识符非常有价值。 他们通过IC内的电路来实现此目的,该电路将微小的变化转换为0和1的数字模式,这对于该特定芯片而言是唯一的,并且随着时间的推移可重复。 这种模式是“硅指纹”,可与人类生物特征类似。

使用某些算法(将在本文后面进行介绍),将硅指纹转换为该芯片唯一的加密密钥,并将其用作其根密钥。 只要系统需要,就可以从PUF可靠地重建此根密钥,而无需将密钥存储在任何形式的内存中。 因此,在关闭设备电源后,任何形式的内存中都不会出现任何秘密密钥。 实际上,根密钥对攻击者“不可见”,这使得使用PUF进行密钥存储非常安全。

物理不可克隆功能的优势

设备,尤其是属于物联网(IoT)的设备,需要密钥来保护其数据,IP和操作。 这些密钥既可以由设备制造商(也称为OEM)自己提供,也可以由芯片供应商在更早的阶段提供给设备。 当芯片供应商提供预先配置的芯片时,它们会增加向OEM出售产品的价值。 如果OEM决定自己进行配置,他们通常可以购买成本更低的芯片。

不管由哪一方来承担提供加密密钥的责任,执行该任务都不是一件容易的事。 将密钥注入芯片需要可信的工厂,这会增加制造过程的成本和复杂性,并限制灵活性。 可以通过在芯片内部内部创建密钥来避免这种复杂性,方法是使用内部 随机数发生器(RNG) 或PUF。

但是,生成密钥并不是唯一的挑战。 这是因为将密钥安全地存储在设备上也不是一件容易的事。 密钥不能简单地存储在非易失性存储器(NVM)中,因为NVM容易受到硬件攻击。 允许攻击者读取NVM内容的硬件攻击越来越多 比较普遍;普遍上,使不受保护的密钥存储不可行。 因此,需要替代的安全密钥存储。 一种方法是添加一个 安全元素 到设备。 但是,增加硬件也带来了越来越大的复杂性和成本。 硅PUF可以安全地存储加密密钥,而无需添加任何其他硬件。

下表总结了用于设置和存储加密密钥的安全级别,供应链开销和技术选项的成本:

与其他密钥生成和存储机制相比,物理不可克隆功能

物联网设备中物理不可克隆功能的典型用例

钥匙库

PUF技术的最著名用例是为设备创建和存储加密根密钥。 PUF创建的加密根密钥不需要密钥注入,并且不能从一个设备复制到另一个设备。 这是因为它从不存储,而是在每次需要时从设备的硅指纹中重建。 由于每个芯片的指纹都不相同,因此攻击者无法将密钥从一个设备复制到另一个设备。

[阅读更多]

固件IP保护

如果物联网设备存储需要保护的敏感数据怎么办? 这可能是有价值的IP,其中包含对隐私敏感或对系统至关重要的专有机密或测量数据。 这就是设备需要安全保管库的时候。 在安全保管库中,任何数据都可以安全且物理地绑定到设备的硬件。 通过使用从PUF根密钥派生的密钥对所有敏感数据进行加密,可以使用PUF轻松实现。

[阅读更多]

边缘到云的安全性

为了基于公钥基础设施(例如,与云服务的传输层安全性(TLS)连接)在IoT设备和云之间建立安全通道,需要与设备和云交换证书。 这些证书相互验证实体。 为了产生用于认证设备的证书,从PUF指纹产生一个公钥/私钥对。

[阅读更多]

PUF处理算法

如前所述,PUF实现需要处理算法才能将硅指纹转换为加密根密钥。 这是因为在不同的测量之间,硅指纹会略有噪声,因为除了初始的工艺变化外,电子特性还将受到周围条件(例如温度和电源)的影响。 因此,良好的PUF实施需要将该带噪指纹转换为0和1的完全稳定且完全随机的字符串,以使其有资格作为加密密钥。 为此,大多数PUF实现都使用两个过程:

  • 纠错,以确保每次测量PUF时派生的密钥都相同
  • 隐私放大,将指纹变成完全随机的字符串

纠错

用于密码密钥重建的纠错技术需要注册阶段和重建阶段。 在注册阶段(一次性过程)中,PUF响应被映射到纠错码的码字上。 有关映射的信息存储在激活码(AC)或“帮助数据”中。 AC的构造使其不会泄露有关密钥的任何信息。 它应该存储在可由PUF算法访问的内存中,但是由于不敏感,可以将其存储在芯片外。 对AC的任何更改(无论是否恶意)都将阻止密钥重建。 AC仅对创建它的芯片有效。

每次设备需要私密PUF密钥时,都会执行新的有噪PUF测量,并从AC和此新PUF响应中提取PUF密钥(无噪声)。 这称为重建阶段。 入学阶段和重建阶段都在下面说明。

物理不可克隆功能的注册和重建

隐私放大

秘密密钥基于它们是完全随机的因此不可预测的事实提供安全性。 物理测量(例如PUF响应)具有高度的随机性,但通常不是完全统一的随机性。 隐私放大算法用于生成统一的随机密钥,例如通过将具有足够熵的大量数据散列为128或256位的随机字符串。

实施物理上不可克隆的功能有哪些挑战?

如果PUF确实是设备的如此巨大的信任锚,那么为什么每个芯片供应商和OEM都不部署自己的PUF实现? 这是因为发现和生产新型PUF并不容易。 许多研究都在寻找具有创建设备指纹所需行为类型的芯片元素,此时,实际的生产甚至还没有开始。 为了定义纠错和隐私放大算法所需的参数,需要在变化的环境下以及随着硅老化的增加进行数百万次测量。 新PUF实施产品的生产过程通常需要多年的研发工作。

而且,这甚至没有提及许多PUF实施方案,甚至是当今已经公知和商业化的实施方案,都需要对芯片硬件进行重大更改的事实。 添加此类PUF会导致制造过程发生变化,或者通过增加生产所需的掩模数量,甚至需要非标准的加工步骤来实现。 如前所述,这将大大增加在芯片上添加PUF技术的成本,从而降低使用PUF的低成本优势。

物理不可克隆功能的标准CMOS实现

幸运的是,通过使用可直接集成到其设备中的PUF的标准CMOS实现,对于芯片供应商和OEM而言,这些问题都可以轻松克服,而无需更改芯片的硬件。 下面介绍的两个PUF示例仅需要IP许可,甚至可以部署在现有硬件上。 SRAM PUF面向IoT平台,例如微控制器,OEM可以在其中集成 软件IP。 希望将此PUF包含在其产品中的芯片供应商可以在软和 硬件IP 版本。 Butterfly PUF面向FPGA平台,通常可用于军事,政府和航空航天领域。 以可编程结构实现.

SRAM PUF

SRAM单元的行为取决于其晶体管的阈值电压之差。 即使最小的差异也会被放大,并将SRAM单元推入两个稳定状态之一。 因此,它的PUF行为比基础阈值电压要稳定得多,这使其成为使用晶体管阈值电压来构建标识符的最直接,最稳定的方法。

[阅读更多]

蝴蝶PUF

Butterfly PUF的概念基于在启动阶段在FPGA矩阵内创建类似于SRAM单元的结构的想法。 Butterfly PUF单元是交叉耦合的双稳态电路,在稳定到可能的两个稳定状态之一之前,它可以进入不稳定状态。

[阅读更多]

总结

A Physical unclonable function, or PUF, is a very valuable security building block for chip vendors and OEMs.物理不可克隆功能(PUF)对于芯片供应商和OEM来说是非常有价值的安全构建基块。 The cryptographic key that is created and securely “stored” by a PUF provides an anchor of trust for a device.由PUF创建并安全“存储”的加密密钥为设备提供了信任锚。 It is the cornerstone of successful use cases for protecting keys, data, IP, and setting up secure connections with the cloud or other devices.它是保护密钥,数据,IP以及与云或其他设备建立安全连接的成功用例的基石。

在电子电路中发现和生产PUF需要花费多年的研发努力,但幸运的是,有几种PUF实施方案可供使用。 SRAM PUF和Butterfly PUF是不需要额外硬件且基于标准CMOS工艺的PUF实现的示例,这使它们可以以非常低的成本集成到芯片和设备中。 借助这些经过硅验证的PUF,制造商可以解决密钥配置的复杂性,并且任何设备都可以轻松获得强大的信任基础。

回到顶部