脱氧核糖核酸。这很有趣 - 它是将我们与地球上的其他人联系起来的东西,但与此同时,它是使我们每个人都独一无二的东西。世界上没有人——没有人——拥有与你完全相同的DNA。
近年来,我们已经学会了如何使用这种独特性作为积极识别的手段。有些人被错误地定罪,因为DNA证据清除了他们而被无罪释放。对于其他人来说,DNA提供了他们有罪的关键证据。我们每个人,在我们身体的每一个细胞中,都携带着我们个人身份的绝对证明。
与技术世界形成鲜明对比。在那个世界中,一种类型的设备的每个实例都必须完全相同,直到最后一微米、微伏和字节。每个设备必须看起来相同,感觉相同,行为相同。大多数情况下,这是一件好事——作为现代技术的制造商,您必须提供一致的用户体验。但这种微小的相同性对安全性造成了严重破坏。
您如何确保真实性?
原因如下:由于每个设备都是相同的,因此很难知道声称来自特定设备的消息是否实际上来自该设备。这些消息可能来自模拟者。例如,门执行器可能会从访问键盘收到一条消息,指出输入了正确的代码,并且门应该打开。但是执行器如何知道消息是真实的呢?
在面对面的交流中,这从来都不是问题。我们认识与我们交谈的人,因为我们知道他们的下巴形状,他们的耳朵,他们的声音 - 也就是说,我们知道他们的DNA的物理特征中的表达,使我们每个人都独一无二。如果我们的设备有这种独特性就好了。
这就是Maxim创造ChipDNA技术的原因。采用ChipDNA技术的设备包含一个元素,即使每个设备在功能上都是相同的,也使它们中的每一个都独一无二。配备ChipDNA的设备内部是一个电路元件,用于测量芯片本身的某些物理特性。现在,这些物理特性随着时间的推移是稳定的,但它们确实因设备而异。ChipDNA 逻辑使用这些特定于设备的变体来计算一个值,该值在每次计算时都保持不变,但对于设备的特定实例是唯一的。此值唯一标识设备,就像您的 DNA 唯一标识您一样。
若要了解为什么确保发件人的身份和消息的完整性很重要,请考虑一个简单的方案。假设您在远程位置有一个传感器,并且传感器发送一条消息,指出存在问题。您如何相信消息是真实的?您有以下几种选择:
选项一:共享密钥
在部署传感器之前,您可以在秘密中编程 - 也许是密码。然后,当传感器发送消息时,它会以某种商定的方式将密码合并到消息中。收到消息时,请检查以确保密码已正确发送,如果是,则接受消息。
问题是,如果所有此类传感器的密码都相同,那么对手可能会对设备进行逆向工程并窃取密码。然后,他们可以模拟来自该类型任何设备的消息。更糟糕的是,如果密码是在没有加密保护的情况下发送的,则对手根本不需要触摸设备 - 他们可以窃听对话并获取密码。这意味着他们可以在部署的任何地方模拟任何传感器。共享秘密方案不是答案。
选项二:公钥加密
如果将私钥编程到设备中,则设备可以使用私钥对消息进行数字签名,该私钥可以使用相应的公钥进行验证。以这种方式签名的邮件几乎可以肯定地进行身份验证。签名消息几乎不可能修改或伪造,我所说的“几乎不可能”是指没有签名者的私钥,就没有已知的方法可以在任何合理的时间内模拟签名者。
问题是秘密私钥必须位于目标设备的内存空间中的某个位置。如果攻击者可以溜进恶意软件,恶意软件很容易泄露私钥。一旦恶意软件被开发出来,固件更新机制就可以用来传播恶意软件,很快,大量受影响的设备就遭到了破坏。它比简单的共享密钥更好,但不是最佳选择。
选项三:芯片DNA技术
ChipDNA技术克服了传统公钥-私钥系统的问题,私钥永远不会泄露,甚至不会透露给其所有者。事实上,私钥甚至不存在于设备中,直到实际需要它。相反,ChipDNA 逻辑计算的值仅在消息准备好签名时才在硬件中生成,然后立即销毁。计算值永远不会出现在微控制器的内存映射中。以下是使用ChipDNA的一种方法:
在设备制造商部署物联网(IoT)设备之前,它会命令ChipDNA硬件计算与ChipDNA值相对应的公钥 - 私钥。实际的ChipDNA值从未披露过。然后,设备制造商使用自己的公司私钥对公钥进行签名,以创建证书,然后将其写回设备。该证书稍后可以证明设备提供的公钥与出厂时计算的公钥相同,因为如果没有公司私钥,任何人都无法创建有效的证书。
部署后,当物联网设备想要发送消息时,它可以通过重新计算ChipDNA值并将该值用作私钥来对消息进行签名。如果消息的接收方具有该设备的公钥,则可以高度保证验证消息是否真实、未经修改且来自该特定设备。
ChipDNA技术基于物理不可克隆功能(PUF),可防止侵入性攻击
但是,在野外有数百万台物联网设备的情况下,谁来保存属于每个物联网设备的公钥数据库?任何从物联网设备接收消息的人都不太可能拥有该特定设备的公钥。但是他们可以向设备本身发送请求,要求提供设备的公钥证书。当设备发送证书时,接收方可以使用两步过程检查证书的有效性:首先,接收方使用签名者的公钥验证证书的签名。证书证明有效后,接收方可以继续执行第二步:使用证书中包含的公钥测试设备消息的有效性。虽然这看起来像是一个复杂的系统,但整个过程不到一秒钟。
保护物联网免受侵入性攻击
问题是,这个系统有多安全?好吧,考虑一下:在测量芯片的物理特性之前,私钥甚至不存在,即使这样,私钥一旦使用就会被销毁。使用恶意固件无法发现私钥,因为私钥仅存在于安全的隔离硬件中,而永远不会存在于微控制器的实际内存空间中。即使攻击者试图探测芯片本身,探测设备的行为也会改变为确定ChipDNA值而测量的特性,因此将破坏再次恢复私钥的任何希望!
我们已经了解了如何使用ChipDNA来绝对保证来自物联网设备的消息既真实又未经修改,但ChipDNA也可以用于许多其他目的 - 从验证固件映像到管理设备的授权使用。ChipDNA可以在任何必须绝对确保交易中涉及的设备的身份的地方使用,可能性是无穷无尽的。
审核编辑:郭婷