当前位置: 首页 > news >正文

做网站什么空间比较好深圳整站seo

做网站什么空间比较好,深圳整站seo,网站服务器配置,建筑公司网站内容AVB2.0简要说明:Android Verified Boot 2.0简要_vbmeta是_沫珩MH的博客-CSDN博客 AVB2.0(Android Verified Boot2.0)是google新设计的verified boot流程用于保护boot/recovery/system/vendor等一些受保护分区的完整性。MTK平台中dtbo不使用AVB2.0保护,b…

AVB2.0简要说明:Android Verified Boot 2.0简要_vbmeta是_沫珩MH的博客-CSDN博客

AVB2.0(Android Verified Boot2.0)是google新设计的verified boot流程用于保护boot/recovery/system/vendor等一些受保护分区的完整性。MTK平台中dtbo不使用AVB2.0保护,build出来的dtbo是avb2.0签名方式,会在调用签名脚本时将dtbo改为正常签名方式(dtbo用于初始化lcm等,如果dtbo校验失败了,无法显示yellow/orange/red state),而其他的image(preloader,lk,logo,tee等)仍然是使用MTK的verify flow。在Android P版本,如果平台使用的kernel版本大于等于4.9的话,AVB2.0是必须要开启的。

vbmeta分区

AVB2.0增加了一个vbmeta分区,对应的vbmeta.img由make_vbmeta_image工具编译生成的,其主要包含如下三大部分:

  • vbmeta image header(256 Bytes)
  • authentication data
    • hash
    • signature
  • auxiliary data
    • public key
    • public key metadata
    • descriptors
      • hash descriptors
      • hashtree descriptors
      • chain partition descriptors

vbmeta分区保存了受保护分区的所有信息,每个被avb2.0保护的分区后面都有一个vbmeta结构。vbmeta结构中包含多个描述符(和其他元数据),并且所有这些数据都被加密签名

受保护的分区可以配置为hash分区或者chain(链式)分区:

  1. hash分区:hash校验,用hash描述符中hash(保存在vbmeta分区的vbmeta结构里)验证目标分区
  2. chain分区:key校验,用chain分区描述符中的public key(保存在vbmeta分区的vbmeta结构里)验证目标分区vbmeta结构的完整性(vbmeta被private key签名)

vbmeta.img中vbmeta结构

循环遍历主vbmeta中所有描述符

  • chain分区描述符
    • 保存了用于验证目标分区vbmeta结构的public key
    • 如果目标分区vbmeta结构验证失败,将无法启动
  • hash表描述符
    • 目标分区vbmeta结构没有被使用,忽略
  • hash描述符
    • 除非它在“requested_partitions”中,被输入到avb2.0的入口函数:avb_slot_verify(),否则忽略目标分支vbmeta结构

vbmeta与boot/recovery/system/vendor绑定

  • 配置为hash分区:必须与主vbmeta一起更新
  • 配置为chain分区:假如目标分区vbmeta结构发生异常,就算此分区在当前启动模式不被使用,设备也将无法启动。
    • 比如,假如recovery分区配置为chain分区,一旦recovery发生异常,normal boot也将无法启动
    • 一旦recovery分区配置为hash分区,不能通过OTA改为chain分区配置

使能AVB2.0功能

  • lk:vendor/mediatek/proprietary/bootable/bootloader/lk/project/<project.mk>
MTK_AVB20_SUPPORT = yes
  • kernel:<project>_debug_defconfig & <project>_defconfig
CONFIG_MTK_AVB20_SUPPORT = y

配置avb分区

kernel-4.9\arch\arm64\boot\dts\mediatek\xxxx.dts

配置vbmeta.img的公钥与私钥

  • 公钥: /vendor/mediatek/proprietary/bootable/bootloader/lk/target/${project}/inc/avbkey.h
  • 私钥: device/mediatek/common/oem_prvk.pem
    • 在device/mediatek/common/device.mk中配置:BOARD_AVB_KEY_PATH := device/mediatek/common/oem_prvk.pem

vbmeta.img被oem_prvk.pem进行私钥签名,在启动阶段lk使用avbkey.h中的公钥对vbmeta.img进行验证,所以avbkey.h配置的公钥与oem_prvk.pem的私钥必须是一对,且此key与secure boot校验其他分区的key不是同一个,配置文件也不是同一个,但是可以配置成同一组key。

配置受保护分区

默认不配置情况下,受保护分区采用hash分区方式,如需配置成chain分区方式,采用如下方式:

     #settings for main vbmetaBOARD_AVB_ALGORITHM := SHA256_RSA2048BOARD_AVB_KEY_PATH := device/mediatek/common/oem_prvk.pemifeq ($(strip $(MAIN_VBMETA_IN_BOOT)),no)#settings for recovery, which is configured as chain partitionBOARD_AVB_RECOVERY_KEY_PATH := device/mediatek/common/recovery_prvk.pemBOARD_AVB_RECOVERY_ALGORITHM := SHA256_RSA2048BOARD_AVB_RECOVERY_ROLLBACK_INDEX := 0# Always assign "1" to BOARD_AVB_RECOVERY_ROLLBACK_INDEX_LOCATION# if MTK_OTP_FRAMEWORK_V2 is turned on in LK. In other words,# rollback_index_location "1" can only be assigned to# recovery partition.BOARD_AVB_RECOVERY_ROLLBACK_INDEX_LOCATION := 1
endif#settings for system, which is configured as chain partitionBOARD_AVB_SYSTEM_KEY_PATH := device/mediatek/common/system_prvk.pemBOARD_AVB_SYSTEM_ALGORITHM := SHA256_RSA2048BOARD_AVB_SYSTEM_ROLLBACK_INDEX := 0BOARD_AVB_SYSTEM_ROLLBACK_INDEX_LOCATION := 2
  • 配置了system分区为chain分区方式
  • 算法为SHA256_RSA2048
  • private key为device/mediatek/common/system_prvk.pem
  • 当MAIN_VBMETA_IN_BOOT宏为no时,配置recovery分区为chain分区方式

MTK平台AVB2.0、Secure boot与Dm-verity

当AVB2.0、Secure boot与Dm-verity同时开启,系统启动时preloader采用secure boot方式验证tee/lk等分区的可靠性,在lk阶段采用secure boot方式验证dtbo/logo等分区的可靠性,同时采用AVB方式验证vbmeta分区的可靠性和boot分区(或recovery分区)的可靠性。在init进程阶段,如果vendor或者system镜像配置为hash partition方式,则采用原先Dm-verity方式验证vendor或system分区的可靠性(在采用AVB方式验证时,发现其分区配置为hash partition方式,会bypass掉,采用dm-verify方式),如果配置为chain partition方式,则采用AVB方式验证其可靠性。

参考:

Android P上打开AVB2.0的配置方法 - RESSRC

http://www.lbrq.cn/news/2406997.html

相关文章:

  • 凯里网站制作域名排名查询
  • 网页设计案例教程杨松答案app优化方案
  • 做网站一般做几个尺寸点击进入官方网站
  • 深圳网站建设引流获客工具
  • 温州设计集团网站建设热点时事新闻
  • 杭州网站建设哪个好爱站网挖掘关键词
  • 国外网站设计公司河南整站百度快照优化
  • 网站建设找美橙互联整合营销传播的明显特征是
  • 工信部网站备案查询百度网站链接提交入口
  • 自己做简单网站价格互联网销售
  • wordpress app登陆seo排名公司
  • 网站定制开发流程google play应用商店
  • 深圳网站设计我选刻seo实战密码第三版
  • 北京门户网站制作查询网址域名ip地址
  • 展厅设计方案100例宁波seo外包服务
  • 桂林做网站的公司有哪些长沙seo优化哪家好
  • 重庆高端网站建设价格站长工具关键词
  • 山东省建设厅官方网站百度站长提交
  • vs2012解决方案做网站直播:英格兰vs法国
  • 石家庄微网站建设公司哪家好常用的关键词挖掘工具有哪些
  • 做的好的企业网站百度指数的使用方法
  • 什么网站做产品销售做的好福州短视频seo服务
  • 北京公司网站建设费用长沙seo优化报价
  • 网站建设宣传单页电脑优化软件推荐
  • 如何把学校网站建设好做一个企业网站需要多少钱
  • 专做美容师招聘网站搜索引擎下载安装
  • 郑州富士康公司简介seo优化有哪些
  • 温江网站制作站长工具站长
  • 长春作网站建设的公司运营推广渠道有哪些
  • 台州网站建设网站推广表白网页制作免费网站制作
  • 在C++里如何避免栈内存溢出
  • 【Lua】多脚本引用
  • 30天打牢数模基础-灰色预测模型讲解
  • 第459场周赛
  • InfluxDB 核心概念与发展历程全景解读(二)
  • 图解系统-小林coding笔记