也许每个人出生的时候都以为这世界都是为他一个人而存在的,当他发现自己错的时候,他便开始长大
少走了弯路,也就错过了风景,无论如何,感谢经历
0x01 前言
Android作为一个应用广泛的平台,同样支持Verified Boot。以硬件提供保护作为信任根,实现从bootloader到boot分区以及其他分区(system、vendor、oem
等)完整信任链路,在每一步转交执行权限之前都会对数据和代码的完整性(integrity)和真实性(authenticity)进行验证。几个关键节点如下:
Android 4.4
:提供内核dm-verity特性,实现Verified Boot,启动时如果分区损坏会提示用户Android 7.0
:禁止未验证的设备启动,同时引入前向纠错功能,支持自动修复非恶意的数据损坏Android 8.0
:引入支持Treble的Verified Boot
,称为AVB(Android Verified Boot
)或者Verified Boot 2.0
,对分区尾部的数据格式进行格式化,并增加版本回滚保护的功能
这只是Android官方的feature时间结点,事实上许多OEM厂商也会针对启动功能进行自定义的配置,比如使用AOSP中的宏来设置或者在自己的私有bootloader中