Secureboot从入门到精通
该专栏为热销专栏榜 第11名
文章平均质量分 73
文章不在多在精,小白也可以入门,安全启动基础知识、5种secureboot的经典设计。文章总数10篇左右。讲设计讲业务讲核心讲基础原理。
优惠券已抵扣
余额抵扣
还需支付
¥299.90
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
代码改变世界ctw
ARMv8/ARMv9/TEE/安全/芯片
展开
-
【置顶】- Secureboot从入门到精通-[目录]
secureboot,安全启动原创 2023-02-27 00:20:22 · 923 阅读 · 2 评论 -
课时2:安全简介、安全概述
👉👉👉 个人博客笔记导读目录(全部) 👈👈👈。原创 2023-03-08 20:35:44 · 161 阅读 · 0 评论 -
课时4:多样化的软件架构
👉👉👉 个人博客笔记导读目录(全部) 👈👈👈。原创 2023-07-11 01:50:02 · 90 阅读 · 0 评论 -
课时5:多样化的启动流程剖析
👉👉👉 个人博客笔记导读目录(全部) 👈👈👈。原创 2023-07-11 01:53:34 · 85 阅读 · 0 评论 -
课时6:多样化的刷机流程剖析
👉👉👉 个人博客笔记导读目录(全部) 👈👈👈。原创 2023-07-11 01:56:43 · 76 阅读 · 0 评论 -
课时7:Trustzone基础知识
👉👉👉 个人博客笔记导读目录(全部) 👈👈👈。原创 2023-07-11 02:07:15 · 303 阅读 · 0 评论 -
课时8:密码学基础知识
安全启动原创 2023-03-08 20:36:17 · 68 阅读 · 0 评论 -
课时9:PKI证书基础知识
👉👉👉 个人博客笔记导读目录(全部) 👈👈👈。原创 2023-07-11 02:13:53 · 155 阅读 · 0 评论 -
课时10:硬件加解引擎(Crypto engine)的介绍
在armv8的芯片中,有ARM-CE可以进行aes/hash/md5计算,有ARM-NEON也可以进行aes/hash/md5计算arm的security IP中,有cryptoisland加密芯片,有cryptocell加密芯片另外SOC厂商也可能集成自己设计的crypto engion加解密芯片原创 2023-03-08 15:33:57 · 659 阅读 · 0 评论 -
课时11:ATF简介
安全世界的初始化,例如异常向量表、一些控制寄存器和中断寄CPU reset和power down的时序。包括Arm DynamIQ cpu的支持。标准的system IP的驱动,例如Generic Interrupt Controller (GIC), Cache Coherent Interconnect (CCI), Cache Coherent Network (CCN), Network Interconnect (NIC) and TrustZone Controller (TZC).一种通原创 2023-03-08 15:07:40 · 241 阅读 · 0 评论 -
课时12:ATF架构下的启动流程
👉👉👉 个人博客笔记导读目录(全部) 👈👈👈。原创 2023-07-11 02:17:33 · 186 阅读 · 0 评论 -
课时13:大系统(复杂系统)软件模型
secureboot原创 2023-03-08 16:09:09 · 50 阅读 · 0 评论 -
课时14:大系统(复杂系统)启动模型
secureboot原创 2023-03-08 16:05:10 · 44 阅读 · 0 评论 -
课时15:secureboot安全启动模型
secureboot原创 2023-03-08 16:09:43 · 82 阅读 · 0 评论 -
课时16:OTP/efuse简介
1、efuse的读写方式?efuse的读写方式有两种:一种是通过memory-map的方式(反正我没见过这种),即您只要操作相应的物理地址,其实就是在操作efuse另一种是通过写efsue的一些寄存器,然后就能写入到相应的bank区域中。2、efuse也分安全和非安全?在ASIC做系统设计时,大多数情况下会把efuse写死在secure侧,即只有secure PE能读写efuse,Non secure PE是无法操作efuse的,但有些厂商的设计中,会预留一部分efuse区域,给non se原创 2023-03-08 15:30:59 · 689 阅读 · 0 评论 -
课时17:RPMB简介
RPMB(Replay Protected Memory Block)Partition 是 eMMC 中的一个具有安全特性的分区。eMMC 在写入数据到 RPMB 时,会校验数据的合法性,只有指定的 Host 才能够写入,同时在读数据时,也提供了签名机制,保证 Host 读取到的数据是 RPMB 内部数据,而不是攻击者伪造的数据。RPMB 在实际应用中,通常用于存储一些有防止非法篡改需求的数据,例如手机上指纹支付相关的公钥、序列号等。RPMB 可以对写入操作进行鉴权,但是读取并不需要鉴权,任何人都可原创 2023-03-08 15:30:09 · 195 阅读 · 0 评论 -
课时18:uuid、huk、hwkey简介
使用软件方法生成唯一的设备密钥:设备制造商也可以使用软件方法生成设备的唯一密钥。这种方法通常需要在设备上运行安全的操作系统或受信任的执行环境,以保护生成的密钥不被未经授权的软件访问。使用额外的硬件安全模块 (HSM):设备制造商可以在设备上使用额外的HSM来生成和存储唯一的设备密钥。这些HSM可以生成在设备上的唯一密钥,并且在加密的形式下存储它们,以防止未经授权的访问。唯一性:每个设备的HUK都是唯一的,这意味着即使两个设备的硬件和软件配置完全相同,它们的HUK也不同。原创 2023-03-08 20:36:50 · 357 阅读 · 1 评论 -
课时19:案例1-(无证书)最简单的一种secureboot设计,剖析其优缺点
Bootrom从磁盘中读取all_pub.img文件,Bootrom从efuse读取ROTPKH, 用ROTPKH验证all_pub.img文件(其实就是重新对all_pub.img文件计算SHA256,得到的结果和ROTPH相比较),如果验证失败,则说明all_pub.img文件是被篡改过的,bootromt将停止启动。如果验证成功,程序将继续跑。Bootrom从磁盘读取第一个镜像(BL2程序),我们这里称之SPL(有的厂商叫SBL/SBOOT/Preloader...),bootrom从all_pu原创 2023-03-08 15:49:11 · 128 阅读 · 0 评论 -
课时20:案例2-多级证书管理的一种secureboot设计,剖析其优缺点
1、生成root密钥对:root_priv.pem和root_pub.pem2、对root_pub.pem求SHA256运算,得到32bytes的ROTPKH,将ROTPKH写入到efuse中3、对每一个镜像都生成一堆密钥对:img_priv.pem和img_pub.pem,对镜像images求SHA256得到img_hash,使用img_priv.pem生成自签名证书(称之Cert1), 该证书保护的内容是img_hash.4、对每一个镜像的Cert1使用root_priv.pem生成自签名证书(称原创 2023-03-08 15:58:39 · 125 阅读 · 0 评论 -
课时21:案例3-(含证书)一套标准的secureboot设计,剖析其优缺点
使用ROTPK验证Trusted Key Certficate,该证书中保护的内容是TW-pub和NTW-pub。使用TW-pub验证去验证BL3x Key Certificate(x=0,1),该证书保护的内容是BL3x-pub。再使用BL3x-pub去验证BL3x Content Certificate,该证书保护的是BL3x hash。 最后再使用BL3x hash验证BL3x images.使用NTW-pub验证去验证BL33 Key Certificate,该证书保护的内容是BL33-pub原创 2023-03-08 16:02:10 · 119 阅读 · 0 评论 -
课时24:大讨论,如何设计一款secureboot
- 采用哪种设计方式? 带证书? 不带证书?- 签名的工具使用什么?使用openssl命令行? 自己写一个工具?python/C++/Java?- 刷机流程要不要考虑secureboot? 如何考虑的?- efuse如何设计,都需要存放哪些和secureboot相关比特位?- 在研发阶段secureboot可能会降低大家的开发效率,如何规避此问题?- root跟密钥泄露了,你将如何处理?原创 2023-03-08 17:41:21 · 126 阅读 · 0 评论 -
课时25:ATF中关于secureboot代码导读
bl1_load_bl2()load_auth_image(BL2_IMAGE_ID, info)load_auth_imageload_auth_image_internalload_auth_image_recursiveauth_mod_verify_imgrc = auth_hash(&auth_method->param.hash — 这里验证image的hashauth_hashcrypto_mod_verify_hash -->crypto_lib_desc.verify_ha原创 2023-03-08 16:11:45 · 119 阅读 · 0 评论 -
课时26:Android Verity Boot(AVB)初探(一)
透过事务看本质,到底什么是AVB? AVB(Android Verified Boot)就是建立一条从bootloader到system images的信任链,主要包含:对以下镜像提供完整性检查(1)Android Boot imageLinux kernel + ramdisk整个分区的HASH存储在 VBMeta image中(2)system/vendor partitions这些分区的hash tree的root hash存储在VBMeta image中提供防回滚的保护能力rollb原创 2023-03-08 14:00:38 · 327 阅读 · 0 评论 -
课时27:Android Verity Boot(AVB)验证原理(二)
透过事务看本质,到底什么是AVB?AVB(Android Verified Boot)就是,主要包含:• 对以下镜像提供完整性检查Linux kernel + ramdisk整个分区的HASH存储在 VBMeta image中这些分区的hash tree的root hash存储在VBMeta image中• 提供防回滚的保护能力rollback indexes 和 device lock state 存储在RPMB中。原创 2023-03-08 13:59:38 · 379 阅读 · 0 评论 -
课时28:Secureboot标准规范有哪些
ARM Trusted Board Boot Requirements (TBBR):TBBR是ARM的一个规范,描述了如何在基于ARMv8-A的平台上实现安全启动。它使用UEFI安全启动,并添加了一些额外的要求,例如要求固件实现早期启动防恶意软件(ELAM)。Platform Security Architecture (PSA):这是ARM推出的另一个安全架构,目标是提高物联网设备的安全性。ARM Trusted Firmware (ATF):ARM的ATF提供了一种实现安全启动的框架。原创 2023-07-11 02:30:16 · 285 阅读 · 0 评论 -
课时29:FIP的介绍
创建FIP镜像FIP镜像格式: All files are referred to by a pre-defined Universally Unique IDentifier [UUID] . The UUIDs are defined in . The platform translates the requested image name into the corresponding UUID when accessing the package.: The off原创 2023-07-11 02:38:46 · 183 阅读 · 0 评论 -
课时30:安全启动的攻击和补救方案
👉👉👉 个人博客笔记导读目录(全部) 👈👈👈。原创 2023-07-11 02:43:30 · 287 阅读 · 0 评论