Linux嵌入式平台安全启动理解介绍

chatgpt/2023/9/27 6:03:57

一、意义


        安全启动可以防止未授权的或是进行恶意篡改的软件在系统上运行,是系统安全的保护石,每一级的前一个镜像会对该镜像进行校验。

1.1 安全启动原理介绍

 
通过数字签名进行镜像完整性验证(使用到非对称加密算法和哈希算法)
签名过程:
raw_image--->use hash--->digest(摘要)
private_key--->digest--->signature
image+signature组合成为签名镜像
验签过程:
use hash--->raw_image--->digest1
public_key--->signature--->digest2
digest1 =? digest2
等于则验签成功,否则验签失败

说明:

        一般是先验证证书,然后再验证镜像(对根证书使用哈希计算,然后和efuse中存储的进行对比,一致后,则可通过;
镜像验证:是使用根证书中的公钥对签名进行验证,然后从认证签名证书中取出公钥,对镜像签名数据验证)

1.2 dm-verity原理

        squashfs需要读取某个块时,调用dm-verity读取对应的块,dm-verity根据verity-table中block_device,调用block_device读取对应的块,读取到块的内容后dm-verity会算出块的sha256,然后跟verity-hash-tree中相对应的hash值进行比较,如果相等,则说明该块没有被修改过。
     

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.exyb.cn/news/show-5313669.html

如若内容造成侵权/违法违规/事实不符,请联系郑州代理记账网进行投诉反馈,一经查实,立即删除!

相关文章

数据结构:复习笔记

目录 前言1. 数据结构绪论1.1 数据结构的概念及分类1.1.1 知识点提要1.1.2 选择判断与简答归纳1.1.3 算法编程题 1.2 算法设计与算法分析1.2.1 知识点提要1.2.2 选择判断与简答归纳1.2.3 算法编程题 2. 线性表2.1 线性表的概念2.1.1 知识点提要2.1.2 选择判断与简答归纳2.1.3 算…

安装win版本的neo4j(2023最新版本)

安装win版本的neo4j 写在最前面安装 win版本的neo4j1. 安装JDK2.下载配置环境变量(也可选择直接点击快捷方式,就可以不用配环境了)3. 启动neo4j 测试代码遇到的问题及解决(每次环境都太离谱了,各种问题)连接…

服务器远程不上服务器怎么办?服务器无法远程的原因是什么?

服务器远程不上服务器怎么办?服务器无法远程的原因是什么? 接下来跟着笔者一起分析一下具体的原因有哪些以及相对应的解决方法 一、网络问题 1.本地网络问题 解决办法:检查本地网络是否正常,访问外网是否流畅,可以…

辅助栈、单调栈与单调队列在lc中的应用

为什么要汇总在一块? 三者都有何区别? 总结 1 泛化性更好的策略 个人建议单调栈/队列中存放的元素最好是下标而不是值,因为有的题目需要根据下标计算,这样泛化性更好。参考lc239和lc496 2 单调队列何栈其实可以共用同一套模板…

前端食堂技术周刊第 92 期:VueConf 2023、TypeChat、向量数据库、Nuxt 服务器组件指南

美味值:🌟🌟🌟🌟🌟 口味:整颗牛油果酸奶 食堂技术周刊仓库地址:https://github.com/Geekhyt/weekly 大家好,我是童欧巴。欢迎来到前端食堂技术周刊,我们先…

【消息中间件】原生PHP对接Uni H5、APP、微信小程序实时通讯消息服务

文章目录 视频演示效果前言一、分析二、全局注入MQTT连接1.引入库2.写入全局连接代码 二、PHP环境建立总结 视频演示效果 【uniapp】实现买定离手小游戏 前言 Mqtt不同环境问题太多,新手可以看下 《【MQTT】Esp32数据上传采集:最新mqtt插件(支…

python包的介绍使用

python包的介绍使用 简单来说python的模块相当于文件,包就相当于文件夹 python包创建后会自动生成 init.py 的文件 然后可以在不同的包下面创建不同的模块 下面是引入模块里面的内容的三种方式 第一种就是引入模块,记住引入包是会报错的 import只能引…

后端byte[]传给前端接收默认变成string字符串

创建时间:2023.7.28 建议:最好直接用字符串,我是没办法要求保密,存取都是字符串,程序里面是byte数组 既然他到前端会转换成字符串那么就是被转码了 那我们反向转码就好了 这是在后端处理,反正前端也是乱…
推荐文章