secure boot-高通平台

本文详细解释了SecureBoot如何在芯片启动流程中工作,通过验证固件和操作系统的签名确保其完整性和可信度,以及链式认证过程中的证书签名校验机制。
摘要由CSDN通过智能技术生成

在开启secure boot之前需要先了解芯片的整体启动流程,可以帮助更好地理解secure Boot在整个系统中的作用和重要性

Secure Boot是一种使用加密身份验证启动序列,建立了一个可信的平台,用于安全应用程序。它始于一个不可变的引导序列,通过密码验证代码的来源,以便只有经过授权的软件才能执行。引导序列将设备置于已知的安全状态,并防止软件的二进制篡改和重新刷写攻击。

Secure boot过程是嵌入在整个芯片启动流程中的

芯片的启动流程,也被称为引导过程,是指设备从关闭状态到完全运行状态的一系列步骤。这个过程涉及硬件初始化、固件加载、操作系统启动等多个阶段。在这个过程中,芯片会执行一系列预定义的操作,来准备和配置系统的硬件和软件环境

Secure Boot则是在这个启动流程中的一个环节,通常在固件或操作系统加载之前。它通过验证固件或操作系统的签名来确保它们的完整性和可信度

设备的启动是一个多阶段的过程,每个阶段的镜像执行一个特定的功能,并由前一个镜像进行验证。信任根(RoT)是在PBL中启动流程的受信任实体,PBL是片上代码的一部分,因此已经受信任且不可变。对镜像进行授权软件的身份验证,然后才执行启动序列中的下一个镜像。

例如:PBL > SBL > (TZ)/QSEE只有当PBL认证成功后,控制权才会转移到SBL。由于SBL现在是可信的,因此可以信任它对下一个镜像进行身份验证。图像通过其功能进一步建立设备的安全性。有了加密组件和体系结构,就可以验证启动软件和安全应用程序的真实性。APPS是主引导处理器。PBL支持ELF类型的镜像加载和身份验证,这允许SBL1和HEXProgrammer像保留其他系统镜像一样保留ELF格式。系统调试镜像(SDI)功能在SBL和TZ中实现。

安全启动是通过一组芯片上的硬件保险丝实现的。硬件保险丝中识别的受信任实体必须为代码签名才能执行。

链式认证:

1. Root CA (根证书颁发机构):这是最顶层的认证机构,它拥有一对密钥(公钥 R 和私钥 R)。Root CA 使用其私钥 R 生成下一级认证机构(Attestation CA)的签名 I

2. Attestation CA (认证证书颁发机构):Attestation CA 也有自己的一对密钥(公钥 I 和私钥 I)。它使用私钥 I 生成下一级的证书(Attestation Certificate)的签名 A

3. Attestation Certificate (认证证书):此证书包含一对密钥(公钥 A 和私钥 A)。私钥 A 被用来生成最终源数据(Source)的签名 D

在这个过程中,每个签名都需要被相应的公钥验证以确保签名的有效性

Attestation CA 的签名 I 需要被 Root CA 的公钥 R 验证;Attestation Certificate 的签名 A 需要被 Attestation CA 的公钥 I 验证;最终源数据的签名 D 需要被 Attestation Certificate 的公钥 A 验证

验证签名是否成功:

在加密密钥和证书的生成过程中都包含了相同主题信息,可以通过grep查看镜像是否包含主题信息->侧面验证镜像是否签名成功

  • 9
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值