Silicon Labs(亦称“芯科科技”)物联网安全高级产品经理Mike Dow近期解释了Silicon Labs如何在物联网设备的无线SoC中使用物理不可克隆功能(Physical Unclonable Functions, PUF)技术。Silicon Labs在其Secure Vault物联网安全软件中使用了SRAM PUF的技术,得以利用SRAM的固有随机性,从而获得设备独有的单个对称密钥。SRAM PUF技术在市场上具有值得信赖的可靠性记录。由于我们的客户在现场部署的设备通常要求运行超过10年以上的时间,因此我们需要具有长期可靠性历史的PUF技术。

Silicon Labs通过PUF来创建密钥加密密钥(KEK),用于封装(加密)系统中的其他密钥,并将它们存储在内部或外部存储器中。“因为这个KEK只用于访问包装密钥,它的使用时间是有限的,这反过来限制了它暴露于许多类型的攻击。此外,重构KEK的过程只发生在Power on Reset (POR)事件上,这进一步限制了对生成密钥的过程的访问。

在Silicon Labs的设计中,除加密密钥外,每一代密钥都由符合NIST标准的真随机生成器(TRNG)执行

“在这种设计中,除KEK之外的每一个密钥生成都由符合NIST标准的TRNG来执行,然后密钥包装为AES加密。在安全行业中,TRNG和AES技术都是常见的、易于理解的、经过测试和被验证的。Silicon Labs还使用256位密钥来增加AES加密的强度,然后在AES算法上应用了差分功率分析(DPA)侧通道保护,进一步增强其对黑客攻击的抵抗能力。该设备的所有密钥材料都以这种方式封装,包括在一次可编程(OTP)内存中生成并存储的ECC公私身份密钥对。

当实现需要许多对不对称密钥的复杂云安全方案时,能够在几乎无限的内部或外部内存中安全地存储密钥是一个主要优势。另一种方法是将其存储在纯文本中,但这种方法需要高度物理安全的内存,保护起来既复杂又昂贵。Dow评论道:“在设计芯片时,你必须选择一个最佳的安全内存大小。然而,无论你选择什么尺寸,几乎可以保证在产品的使用寿命中都是不够的。”

PUF创建一个秘密的、随机的和唯一的密钥,并且PUF-key加密在安全密钥存储中的所有密钥,在启动时生成,而不是存储在flash中。

值得一提的是,Secure Vault提供的密钥管理方案的另一个优点是通过使用AES加密,你还可以要求一个初始向量来提供算法。“这个初始向量就像有一个额外的128位密码,需要使用该密钥执行任何安全操作。然后,该密码可以被人类或运行在芯片上的其他应用程序使用,从而提供使用密钥的双重身份验证。”

“作为一层额外的保护,Secure Vault技术中包含了一个复杂的篡改保护方案,如果检测到篡改,可以破坏PUF重构数据。一旦重构数据被销毁,存储的密钥材料就再也不能被访问了。

总结来说,Silicon Labs选择了市场上最可靠的PUF技术,并将其功能限制为只能提供一个KEK来包装或打开关键材料。通过使用另一个双因素身份验证密码,可以进一步保护该密钥。此外,Silicon Labs提供多种篡改保护源,可以破坏PUF密钥,使其无法解密受其保护的所有其他密钥。即使黑客投入了大量的时间和资源来重新设计设备并恢复KEK,他们也只危及了一台设备。”

免责声明:凡注明为其它来源的信息均转自其它平台,目的在于传递更多信息,并不代表本站观点及立场。若有侵权或异议请联系我们处理。

相关推荐