oss

OpenTitan 把信任根变成可检查的构建产物

9 条来源 6 条一手来源 已翻译 2026年7月23号

正文
一枚安装在紫色电路板上的 OpenTitan Earl Grey 样片,位于 Fraunhofer AISEC 激光故障注入设备被灯光照亮的物镜下方。

一枚 Earl Grey 量产硅样片位于 Fraunhofer AISEC 的激光故障注入设备下方。裸露的封装、光学物镜与开有孔位的实验台,把关于抵御物理攻击的主张变成一个可测试的实物。[7]

OpenTitan 是少见的一类开源项目:它的构建产物一旦制成,就会进入不可修补的状态。项目中的 SystemVerilog、固件、测试与文档,最后都要落实为光掩模和硅片;制造完成后才发现的错误,往往要靠规避方案、重做金属互连层或下一版芯片修订解决,快速发布一个新版本已经处理不了。正因如此,项目在 2026 年的转折格外重要。3 月,Earl Grey 开始随 Chromebook 出货,担任其中的安全芯片。到了 7 月,其后继设计 Earl Grey 2 的开发工作正转入开放协作,后量子密码学与内存安全变更已经列入路线图。[2][9]

此刻适合把 OpenTitan 作为一个完整项目来认识,让“开放芯片”这句口号暂时退到背景。它是一套完整且可检查的信任根设计:处理器与密码学硬件、不可变的启动代码、可更新固件、芯片生命周期控制、验证软件,以及把这些部分一同纳入管理的治理流程。项目的成果来自一种有明确范围的开放:有些层面无法开放,而安全芯片中许多通常深藏不露的假设,在设计送往代工厂之前,已经有了名称、接口、测试与审查记录。

从机器信任的第一个判断开始

信任根并不会让整台计算机自动可信。它给出最先启用的一小组机制,后续的可信主张由此接受检验。机器上电时,需要一套依据来判断哪些固件可以执行、哪个设备身份真实可信,以及哪些测量值能够报告给所有者。一旦这个基础遭到破坏,其上的每层验证纵然内部自洽,起点仍是一句谎言。

OpenTitan 把这个起点写得很明确。它的安全模型覆盖安全置备(provisioning)、芯片身份、所有者凭据、安全启动、设备证明(attestation)、固件更新、所有权转移,以及决定设备获准执行哪些操作的单向生命周期状态转换。Earl Grey 的 ROM 保存着用于验证 flash 中第一阶段代码真实性的公钥;每个阶段验证下一阶段,还能锁定后续代码已用不到的硬件。两个 flash 分区允许系统先把更新写入未启用的槽位,验证完成后再激活。[4]

这条序列比任何一个加密引擎都更要紧。芯片必须知道自己正处于制造、测试、部署,还是返回分析的阶段;也要区分芯片创建方(Silicon Creator)与最终的芯片所有方(Silicon Owner)。它必须在普通固件接触不到根级秘密材料的前提下派生秘密值,并在传感器或完整性检查触发告警时按预定方式失效。这里的“信任”由状态转换、密钥策略与逐步收缩的权限串联而成,封装外壳本身不会赋予它神奇属性。

仓库中包含一套完整产品,指令集只是其中一部分

RISC-V 是其中一个组成部分,无法代表整个项目。OpenTitan 的单体仓库将硬件 RTL、固件、主机端实用程序、构建规则、验证环境及其文档一并以 Apache 2.0 许可发布。[5] Earl Grey 的两个 32 位 Ibex RISC-V 处理器核采用双核锁步配置,信任根的主要工作则分布在它们周围:经过扰码保护的 ROM、flash、SRAM 与一次性可编程(OTP)存储器;密钥管理器;熵源和密码学安全随机数生成器;AES、HMAC、KMAC 与可编程的 OpenTitan 大数加速器(OTBN);此外还有生命周期控制器和告警处理器。[3]

这些分工经过刻意设计。Ibex 核运行安全策略;密钥管理器派生与启动状态绑定的秘密值;OTP 保存制造配置、根秘密与生命周期状态;熵子系统向密码学模块供给熵;告警处理器汇集安全故障,并能启动告警升级响应。OTBN 在单独设计的加速器中执行大数运算,免得通用固件临时拼凑敏感算术。外设寄存器和底层设备接口函数(Device Interface Functions,DIF),让验证代码与早期硅片上的代码能够用同一种方式驱动并测试各功能块。项目也明确说明,这些函数的定位是参考代码与测试产物,距离可直接采用的生产操作系统驱动栈还有一段工程工作。[3][5]

这正是“开放硅片”在开放指令集架构之外增加的内容。ISA 说明处理器指令的含义;OpenTitan 则公开一套具体的安全系统,包括各功能块对应的 RTL、连接它们的寄存器约定、启动它们的固件,以及判断设计是否就绪时使用的验证证据。审查者可以检查某个启动阶段为何接受一份映像,沿源头追踪一条告警,也可以拿加速器的具体设计与规范逐项比较。开放把这些材料放入可审查范围,正确性仍要靠证据验证,争议也因此落到了具体位置。

照片把安全主张放到物镜下

封面照片把安全论证从抽象中抽离出来。一枚 Earl Grey 样片放在紫色电路板上,位于 Fraunhofer AISEC 激光故障注入设备的光学组件下方。实验室报告称,他们对样片做了化学蚀刻和精密铣削,随后用光照、电磁能量、时序与功耗测量探查制成的器件。[7] 从源代码走到这项实验,中间还隔着综合、物理设计、制造、封装、电路板设计、置备与实验室操作。公开仓库不会省略其中任何一环。

lowRISC 对这条界线说得很清楚。采用 OpenTitan 设计一套安全 SoC,仍需熵源和传感器等模拟 IP、适配特定代工工艺的存储器与供电单元、供应商软件、专门的安全知识,以及大量认证工作,其中部分材料仍属专有。Google 使用的量产 Earl Grey 芯片没有进入通用公开市场;对大多数外部参与者而言,可接触的目标是仿真环境或受支持的 FPGA 开发板。[1]

拿这条界线否定项目的开放性,会误解它的用途;它说明的是开放的有效范围,评估者需要原样保留。逻辑设计接受检查的同时,一枚制成的芯片仍依赖特定工艺、供应链、封装、电路板、置备仪式与所有者配置。下游厂商也存在把开放设计改坏的空间。安全主张属于经过审查的实现及其证据,无法自动覆盖所有采用相似 RTL 的产品。

买到芯片之前,先把契约跑起来

对新手而言,OpenTitan 很实际的一项贡献,是它的软硬件接缝在实体硅片可用之前就能运行。入门流程先把 RTL 构建为周期精确的 Verilator 模型,再用 Bazel 构建设备软件,为 ROM、flash 和 OTP 提供映像,随后借助 opentitantool 运行测试。官方 UART 冒烟测试最终会显示测试 ROM 把执行权交给 flash 中的启动映像。OTP 映像保存生命周期状态与秘密值,程序代码不在其中,因此连仿真器也保留了这种区分,而纯软件 mock 很容易把它抹平。[6]

入门成本确实存在。文档要求构建 Verilator 仿真时至少有 7 GiB 可用内存,并建议用于完整顶层工作的机器配备 32 GiB 物理 RAM 与 512 GiB 存储空间。首次冒烟测试构建在笔记本电脑上约需一小时。FPGA 工作还要增加受支持的开发板、供应商工具、bitstream 与调试端口。[6] 这项工作远超一个 sprint 中加入依赖库的规模。

一次有效的初次接触适合收窄范围:复现一项固定到具体仓库版本的冒烟测试,保留准确的仓库修订版本与生成产物,再沿一条信号跨越不同层次。例如,可以追踪仿真 ROM 如何验证 flash 中启动映像的真实性,也可以观察 UART 测试如何从一次 DIF 调用走到寄存器写入,最后抵达可观察的引脚层信号。一次 PASS! 只覆盖眼前那项测试;初次实践的目的,是找到能够直接运行的证据,并辨认测试尚未覆盖哪些假设。

量产硅片让透明性成为可测试的主张

多年来,OpenTitan 最难回答的问题,是协作式 RTL 项目能否穿过商业硬件开发中那些不可逆的环节。IEEE Spectrum 在 2024 年的报道将通过验证的 Earl Grey 硅片视为里程碑,原因正是这项工作越过开放 ISA,延伸到了设计验证与一枚能够正常工作的芯片。报道也强调了软硬件之间的不对称:硬件 bug 发布后常常无法修复,接口纪律与验证工作因此必须更早到位。[8]

量产之后,安全问题仍然存在,可测试的内容随之变化。2026 年,Fraunhofer AISEC 报告称,他们使用侧信道分析、激光与电磁故障注入、光发射分析和物理样片制备,对工程版及量产版 Earl Grey 硅片做了评估。测试目标包括 Ibex、OTBN、存储器、密码学加速器和安全关键控制逻辑。OpenTitan 还公开了侧信道与故障注入实验的测试目录,这一点同样重要:其他团队由此可以复现或扩展部分评估,手里得到的材料超出一份认证声明。[7]

结论需要保留限定:开放不能直接等同于安全。公开 RTL 里会藏有细微缺陷;公开测试也会错过真正需要防范的威胁;设计正确的功能块仍会在集成或置备时出错。OpenTitan 更有分量的主张落在过程上:更多安全论证能够连接到可审查的产物,交到研究人员手中的真实硅片也足以证伪这些论证。

先看清自己正在接近哪一种项目

OpenTitan 适合需要独立信任根、可复用安全 IP 或集成式安全子系统的硅片与平台安全团队,前提是团队能够承担硬件验证、固件、置备与认证工作。研究故障攻击、安全启动或开放验证方法的人员同样能从中获益。系统团队即使没有流片计划,也能研读它的规范。

应用团队若只是在找即插即用的 TPM、可以买到的业余模块,或一台速度更快的通用 RISC-V 计算机,OpenTitan 的契合度很低。量产芯片没有零售渠道;参考 DIF 仍属于参考软件;公开 RTL 也无法补足制造安全器件所需的代工厂与模拟依赖。[1] 把路线图等同于已发布能力也会误判项目:Earl Grey 2 的 CHERI、ML-KEM 与 ML-DSA 加速、I3C 和功耗调整,都有分阶段的 2026–2027 成熟度目标;项目明确注明路线图日期属于提议,不能视为承诺。[9]

理解 OpenTitan 的有效方式,是留意它拒绝塞进单一词语的内容。信任根包含启动序列、设备状态、密钥层级、物理攻击面与制造历史。开源包含许可证、审查过程、测试用例集,以及仍属封闭材料的范围界线。芯片则是一件实物;易于修改的阶段过去之后,它仍须与上述各项全部相符。

OpenTitan 的意义正在于,这些说法如今既可对照仓库,也可对照已出货的硅片核验。实验室物镜下的样片没有替这段信任故事收尾;书面论证到了这里,终于面对一件足以证明它错误的实物。

来源

  1. lowRISC,《OpenTitan Root of Trust》——当前产品范围、软硬件组件、部署可得性、仿真与 FPGA 入口,以及代工厂与认证界线。
  2. OpenTitan 项目,《OpenTitan History》——从项目启动和 RTL 冻结,到验证硅片与 2026 年 3 月 Chromebook 部署的里程碑。
  3. OpenTitan 项目,《OpenTitan Earl Grey (Discrete Chip) Datasheet》——Ibex 配置、存储器、密码学加速器、安全控制器、外设与参考软件。
  4. OpenTitan 项目,《Security Model Specification》——设备生命周期、以 ROM 为锚点的安全启动、A/B 固件更新、身份、证明、所有权转移与置备。
  5. lowRISC,opentitan 仓库——单体仓库组织、文档、贡献流程与 Apache 2.0 许可。 OpenTitan 项目,《The OpenTitan DIF Library》——设备接口函数的范围及其面向验证的预期用途。
  6. OpenTitan 项目,《Getting Started》——仿真工作流与构建资源要求。 《Verilator Setup》——ROM、flash 与 OTP 映像、opentitantool 及 UART 冒烟测试。
  7. Nisha Jacob Kabakci,Fraunhofer AISEC,《Laboratory Security Evaluation of the OpenTitan Silicon Root of Trust》,2026 年 6 月——独立物理安全评估与可复用的 SCA/故障注入测试框架。
  8. Dina Genkina,《Open-Source Security Chip Released》。IEEE Spectrum,2024 年 2 月——对 Earl Grey 商用硅片里程碑与协作式硬件开发约束的独立报道。
  9. OpenTitan 项目,《OpenTitan Roadmap》——Earl Grey 2 在 CHERI、后量子加速、I3C、内存、功耗与分阶段成熟度目标方面的拟议工作。
Previous 开放式地面站分成三条路线:TinyGS、SatNOGS 与 UniClOGS

Recommended In oss

Matched by subject and format