利用对称算法及非对称算法实现安全启动

我们可以利用对称算法及非对称算法实现安全启动

对称加密算法:加密和解密时只有一个key,称为common key,即加密方和解密方都知道这个key,这个key可以在生产或其它需要更新密钥的时候写入HSM的PFLASH

非对称加密算法:加密和解密方用不同的key,加密用private key,解密用public(可能是这样用的,记忆有点混乱)

当然从安全性维度,非对称算法更安全,因为加密方和解密方都不知道对方用的是什么密钥。

对称算法实现secure boot

1 软件下载代码包生成时不需要额外做什么工作,只需要把boot image 及app image下到指定的Flash中。

2 安全启动流程

先启动可信任根,验证可信任链,再通过对称算法如CMAC,及common key 验证boot image,验证成功后继续采用对称算法及common key验证app软件,app软件验证成功后启动app。

非对称算法实现secure boot

1 软件下载代码包的同时需要把签名也存在指定的Flash中,因为在安全启动的时候还是需要这个签名的

2 安全启动流程

先启动可信任根,验证可信任链,再计算boot软件的hash值,对计算出的hash采用非对称算法如ECDSA及public key进行验证。验证成功后计算app的hash值,对计算出的hash采用非对称算法及public key进行验证,app软件验证成功后启动app。

两者的优缺点如安全性可定是非对称算法高,验证速度(影响启动速度)还不知道哪个高。

相关推荐
盐水冰14 小时前
【烘焙坊项目】后端搭建(12) - 订单状态定时处理,来单提醒和顾客催单
java·后端·学习
凸头14 小时前
CompletableFuture 与 Future 对比与实战示例
java·开发语言
wuqingshun31415914 小时前
线程安全需要保证几个基本特征
java·开发语言·jvm
Moksha26214 小时前
5G、VoNR基本概念
开发语言·5g·php
上海云盾-小余14 小时前
游戏盾与应用防护联动:一站式业务安全防御体系搭建指南
安全·游戏
努力也学不会java14 小时前
【缓存算法】一篇文章带你彻底搞懂面试高频题LRU/LFU
java·数据结构·人工智能·算法·缓存·面试
攒了一袋星辰14 小时前
高并发强一致性顺序号生成系统 -- SequenceGenerator
java·数据库·mysql
jzlhll12314 小时前
kotlin Flow first() last()总结
开发语言·前端·kotlin
小涛不学习14 小时前
Spring Boot 详解(从入门到原理)
java·spring boot·后端
W.D.小糊涂14 小时前
gpu服务器安装windows+ubuntu24.04双系统
c语言·开发语言·数据库