加密校验方式:
1.image会使用AES 256 CBC进行加密
2.RSA256对加密前的image签名。
启动流程:
boot过程中首先读取global state,可以得到运行A or B。也可以得到A和B是否通过安全校验。
需要注意的是,如果没有读取到global state,需要对global state进行恢复。recover global state的具体步骤会在后面文章中提到。
如果未通过安全校验则需要对 load的image进行公钥验签。验签通过,设置对应global state中的security check pass 为1。然后跳到对应的APP,开始运行。
如果校验失败,会load 未被load image,重复之前步骤。如果仍校验失败,那么,会执行isp upgrade,具体流程会在后面文章中提到。
关于boot的详细流程,可参考下面流程图