最后,我们将查看系统中的其他设备,如下图所示:
我们的示例TrustZone启用的系统包括一些尚未涵盖的设备,但我们需要这些设备来构建一个实际的系统。
? 一次性可编程存储器(OTP)或保险丝
这些是一旦写入就无法更改的存储器。与每个芯片上都包含相同镜像的引导ROM不同,OTP可以编程为具有设备唯一值和可能是OEM唯一值的内容。
OTP中存储的一个内容是设备唯一私钥(device unique private key)。每个芯片制造时,一个随机生成的唯一密钥被写入OTP。这个设备唯一私钥用于将数据绑定到芯片。
设备唯一私钥的优点是防止类攻击。如果每个芯片具有相同的密钥,那么如果一个设备被攻击,所有类似的设备也将容易受到威胁。
OTP通常还用于存储OEM公钥的哈希值。与其他存储器相比,OTP相对昂贵。对于公钥,仅存储哈希而不是存储完整密钥可以节省成本。
? 非易失计数器
非易失(NV)计数器,可能像更多的保险丝一样实现。这是一个只能增加且永远不能被重置的计数器。
NV计数器用于防范回滚攻击。想象一下设备固件版本3中存在已知漏洞。设备当前运行的是修复了漏洞的版本4。攻击者可能尝试将固件降级回版本3,以利用已知漏洞。为了防范这种情况,每次更新固件