华为海思芯片安全启动的 secure boot 机制
深圳市星际芯城科技有限公司
发表:2024-12-02 19:35:50 阅读:6

华为海思芯片的 Secure Boot 机制是一种确保设备启动过程安全可信的技术,以下是其具体介绍:


基本原理

  • Secure Boot 的核心是通过数字签名和密钥验证,确保设备启动时加载的每一个软件组件都是经过授权和未被篡改的,从而建立起从硬件到软件的信任链,防止恶意软件或未经授权的代码在启动过程中被加载运行.


涉及的关键组件

  • Boot ROM:芯片上电后,首先由固化在芯片内部的 Boot ROM 开始执行。它包含了最基础的启动代码和 Secure Boot 的相关逻辑,负责初始化芯片的基本硬件环境,并启动后续的启动流程.
  • OTP(One Time Programmable)存储器:用于存储一些关键的安全信息,如 Secure Boot 的标志位、密钥等。这些信息在芯片生产后一般不可修改,保证了其安全性和可靠性。以 Hi3519AV100/Hi3556AV100 V100 芯片为例,其供 CPU 使用的 OTP 区域存储着 RSA 的公钥 hash 和 AES 的 key 等用于验签的信息.
  • 密钥对:包括用于签名的私钥和用于验证签名的公钥。私钥由华为严格保密,用于对启动相关的软件组件进行签名;公钥则被嵌入到芯片的安全存储区域或在启动过程中被安全地加载,用于验证软件组件的签名是否合法.


启动流程中的 Secure Boot 机制

  • 启动初期:芯片上电后,CPU 执行 Boot ROM 中的代码,该代码会读取 OTP 中的 Secure Boot 标志位,以确定是否开启 Secure Boot 功能。若开启,则进入 Secure Boot 流程.
  • 验签过程:在 Secure Boot 流程中,会对关键的启动组件,如 Hi3519AV100/Hi3556AV100 V100 芯片中的 ddr_init.bin 和 uboot.bin 进行签名验证。首先计算组件的哈希值,然后使用存储在 OTP 中的公钥对其携带的数字签名进行解密,将解密得到的哈希值与计算得到的哈希值进行比对,若两者一致,则说明组件未被篡改,验证通过后才会继续加载和执行后续的启动组件.
  • 后续启动阶段的扩展保护:对于一些芯片,如 Hi3519AV100/Hi3556AV100 V100 芯片,虽然 Secure Boot 本身只保护了 ddr_init.bin 和 uboot.bin,但可以通过在 uboot 中加入对后续分区的校验程序,使用 RSA 算法对 kernel、rootfs 等后续分区进行签名,并将公钥的 hash 保存起来,在 uboot 中验证后续分区的签名,从而实现对整个启动过程的更全面保护.
  • 异常处理:如果在签名验证过程中发现签名不匹配、哈希值不一致等异常情况,芯片会立即触发相应的异常处理机制,如停止设备启动,并向用户或管理员发出警报通知,提示设备可能存在安全风险。


推荐品牌:
核心供货商
营业执照: 已审核
组织机构代码: 已审核
会员等级: 一级会员
联系人: 李先生
电话: 18689475273(微信同号)
QQ: 2885145320
地址: 深圳市龙岗区坂田街道象角塘社区中浩一路2号科尔达大厦1266
简介: 深圳市星际芯城科技有限公司,致力于助力人类走向星际,探索宇宙星辰大海。是国际知名的电子元器件现货分销商,国产品牌代理商。公司销售的产品有IC集成电路。销售的品牌有圣邦微、ST、ON、TI、Microchip、ADI等知名品牌。为消费类电子、工控类电子、医疗类电子、汽车类电子企业提供一站式服务,并成为全球众多EMS/OEM的首选供应商。