前言
今天和大家一起学习的是OTPC,既然在学习,我们就肯定要知道我们为什么要学习?
因为我们是研究安全的,在安全启动的过程中,我们一直在说一个信任根的概念-ROT,我们知道这个根是放在BootRom或者Bias中去实现的。
进一步我们知道安全必须是和硬件配合起来才能保证ROT的可信,才能建立整个启动链路信任机制,那在安全启动我们到底依赖了哪些硬件,脑子里肯定想起了ARM Core的TrustZone架构,不知道有没没想起之前我分享的TRNG、AES这些逻辑IP。
是的,这些都是不可或缺的,并且还不止这些,还会依赖有更多的IP,比如今天我带来OTP+OTPC。
整个启动链路所设计到的密钥,和运行时对于隐私数据保护的加解扰,都是来自于OTP+OTP和其他的IP的配合。
至于其他的IP,我会在后续的文章中陆续整理分享出来和大家一起学习,那么今天让我用三篇文章和大家一起来搞懂这个:
系统安全基石IP------>OTPC
整个系列分为三个部分:
- • 什么是OTP
- • 什么是OTPC,其工作原理是什么
- • 怎么设计一个OTPC
1、OTP概述
- MTP: Multiple-Time Programmable,可以多次编程
- FTP: Few-Time Programmable,可编程的次数有限
- OTP: One-Time Programmable,只允许编程一次,一旦被编程,数据永久有效
One-Time Programmable(OTP)是一种类型的非易失性存储器(Non-Volatile Memory,NVM),它具有特殊的特点,即一旦编程(写入)之后,就无法再次擦除或重写。这使得OTP在许多应用中具有重要的作用,特别是在需要存储一次性信息、安全密钥或设置的场景中。
OTP存储器通常用于存储固定的配置信息、唯一的设备标识、加密密钥、身份验证令牌种子等内容,这些内容在设备的生命周期内都不会被修改。由于无法再次擦除或重写,OTP存储器具有很高的安全性,防止了恶意或不经授权的数据篡改。
比如在计算机系统的安全启动过程中,One-Time Programmable(OTP)技术具有重要作用。OTP是一种只能编程一次的存储器技术,它在硬件上保存了一些关键的信息或密钥,以确保系统的安全性和完整性。以下是OTP在安全启动中的一些用途:
- 设备身份验证:在安全启动过程中,设备可以使用OTP中的唯一标识符来验证其身份。这有助于防止恶意的硬件替换或仿冒攻击,因为每个设备都有其独特的OTP标识。
- 密钥存储:OTP可以用来存储加密密钥、认证密钥或其他敏感信息,这些信息对于系统的安全运行至关重要。由于OTP无法被多次编程或修改,存储在其中的密钥在物理上是固定的,这提供了额外的安全性,因为攻击者无法更改或篡改这些密钥。
- 启动认证:安全启动时,系统可以使用OTP存储的数字签名或证书来验证启动代码的完整性和真实性。这有助于防止恶意代码或未经授权的修改在系统启动时运行。
- 防止未授权访问:OTP中的信息可以用于创建访问控制规则,确保只有经过授权的实体才能访问系统的关键资源和功能。这有助于防止未经授权的访问和数据泄露。
- 安全补丁管理:系统可以使用OTP来存储有关可信补丁或更新的信息,以确保只有来自可信源的补丁被应用到系统中。
- 启动完整性检查:OTP中的值可以用于在每次启动时生成或验证哈希值,以确保引导代码和系统文件未被篡改。这有助于检测到潜在的恶意活动。
相对于多次性可编程器件如MTP,Flash等,OTP其编程过程是不可逆的,适用于程序固定不变的应用场合。
由于其成本低于多次性可编程器件,适合用在具有一定灵活性、成本不高和性能需要刷新的电子产品中,如电源管理芯片[1]。
电源管理芯片以模拟电路为主,受工艺制造等误差的影响,流片回来的芯片往往需要对作参数校准,通过在芯片中添加OTP和寄存器,调试完成后将确定的值烧写到OTP中,芯片上电后OTP的值被装载到寄存器中,模拟电路参数完成校准。
图 1是一种常见的模拟芯片电路系统框图,芯片上电后将OTP的数值装载到寄存器中完成模拟电路的参数校准,嵌入低速接口IP(常选用I2C/SPI/UART等)方便进行OTP、寄存器的读写,大大提高了调试的便捷性。
OTP供应商-Kilopass
Kilopass成立于2001年,总部位于硅谷,在过去的2008年至2016年间,公司的增长速度是IC行业的10倍。公司的产品包装有OTP(one-time programmable Memory),和垂直分层晶闸管 VLT (Vertical Layered Thyristor)。据Bernd介绍,目前Kilopass拥有OTP方面的专利超过70个,客户超过了250家(IDM和IC设计公司),仅TSMC 10纳米的eFuse出货量就超过了100亿。
Kilopass现在的存储器IP主要有超低功耗 Gusto-2 NVM IP、高 Gusto NVM IP和XPM OTP NVM三条产品线,以及XPM寄存器IP。
作为一家嵌入式存储器IP供应商,不仅要在工艺上跟进最新的SoC、CPU等芯片的技术发展路线,更为重要的是存储器的安全性是得到客户的认可。
Bernd 表示,Kilopass的高安全性OTP(8k至32k bit),是目前业界最为安全的反熔丝(antifuse)OTP技术,广泛应用于安全引擎、可信根(Root of Trust)。
其内置了主动保护,可以防止主被动攻击、黑客、反向工程、篡改。Bernd指出,Kilopass是美国最大的付费电视、DRM、CA等芯片 OTP 技术供应商。
Gusto是Kilopass的高密度 OTP,存储容量从512k 至1Mbit,它具有低功耗、低成本和高灵活性。目前市场上很多的无线芯片如BLE、蓝牙音频、无线音频、音频放大器、生物传感器等,都有采用该公司的Gusto OTP IP。
Kilopass的foundry伙伴包括有TSMC、GF、UMC、SMIC、三星、IBM、HHGRACE、Dongbu HiTek、TowerJazz等几乎业界所有的晶圆代工企业。
小结
但是说到底OTP本质上也是一篇内存,怎么去实现这些复杂的场景和应用呢?这就需要我们的OTPC,到这里请带着好奇,打开下一篇开始我们的OTPC学习之旅。
参考文献
- [1]. 门萌萌. 一种基于CMOS工艺的一次性可编程存储器的研制[D]. 西安电子科技大学, 2016.
- [2]. TSMC 0.18um Pure 5V BCD Process 128x8bit One Time Programmable Device Datasheet
- [3]. 孙轶群. 数字集成电路低功耗物理实现技术与UPF
- [4]. Low Power Methodology Manual For System-on-Chip Design
作者:Hcoco
文章来源:TrustZone
推荐阅读
更多物联网安全,PSA等技术干货请关注平台安全架构(PSA)专栏。欢迎添加极术小姐姐微信(id:aijishu20)加入PSA技术交流群,请备注研究方向。