ARM系列之ARM 平台安全架构PSA和Trustzone区别 浅析
ARM系列之ARM 平台安全架构PSA和Trustzone区别 浅析
- PSA要求是什么?
- C1.1 硬件级别的隔离环境
- C1.2 安全启动
- C1.3 生命周期管理
- C1.4 密钥管理
- 差异总结
熟悉Arm的朋友基本都听说过TrustZone和PSA,但是很多不太了解两者之间是什么关系。TrustZone是Arm架构的安全扩展,是系统级的安全方案,已经被业内广泛的应用。
PSA是Arm在2017年推出的平台安全架构,主要目的是实现成本可控,易于实施,低风险的物联网安全基础平台。
那么PSA和Trustzone差异是什么呢?
PSA要求是什么?
为了让大家方便理解两者之间的关系,我们以PSA level 1 SoC的安全要求为例来介绍,对于Level 1来说安全要求非常简单,只有4个要求分别是:
总结一下:
PSA要求包含:
- C1.1 硬件级别的隔离环境
- C1.2 安全启动
- C1.3 生命周期管理
- C1.4 密钥管理
C1.1 硬件级别的隔离环境
安全隔离环境多种实现方式,例如有的客户通过两个CPU的方式来实现隔离环境,一个CPU做为安全CPU,一个CPU作为非安全CPU,并且在总线上做出区分。
另外一种方式是通过TrustZone,例如Cortex-M33本身就支持安全扩展,CPU有两个安全状态,可以理解为分时复用来支持隔离环境.
C1.2 安全启动
安全启动需要从一个不可更改的信任根启动,保证代码的一致性,比较典型是从ROM启动。
C1.3 生命周期管理
芯片从生产到量产会经历不同的阶段,每个阶段都可能存在不同的敏感信息,例如密钥或者代码等,需要有一个状态机来管理芯片的不同阶段,来设置不同的访问权限。
C1.4 密钥管理
秘钥是安全的核心,很多算法都是公开的,安全的保障是保护密钥,在PSA的要求中一般是具备三个密钥,分别是HUK,RoTPK,和attestation Key,HUK是每个芯片唯一的,可以理解为安全的种子来派生出其他秘钥;RoTPK是用来安全启动,可以用一个系列芯片用同一个秘钥,主要是实现安全启动的;还有个一个是attestation key是来实现设备和云端交互的认证。
差异总结
从上面要求,我们可以看出PSA只是安全要求,与架构无关。无论是Arm的架构,还是非Arm的架构都可以满足PSA的安全要求,TrustZone只是实现PSA的一种快速方式。
ARM系列之ARM 平台安全架构PSA和Trustzone区别 浅析相关推荐
- ARM系列之ARM 平台安全架构PSA 浅析
ARM系列之RM 平台安全架构PSA 浅析 1.背景 2.PSA安全认证 2.1 什么是PSA? 2.2 功能性 API 认证 2.3 PSA安全认证(待完善) 3.专用的开源安全固件代码 1.背景 ...
- ARM系列之ARM Trustzone 技术浅析(二)——— ARMv7-A Processor modes registers 的安全扩展
ARM系列之ARM Trustzone 技术浅析(二) Processor modes Registers ARM 引入 Trustzone 技术,最重要的改动就是 CPU 架构的调整.ARM tru ...
- ARM 物联网平台安全架构(PSA)
源码: https://git.trustedfirmware.org/TF-M/trusted-firmware-m.git/ IoT高速发展的今天,大量的IoT设备使用了Arm M-profile ...
- ARM系列之ARM多核指令WFE、WFI、SEV原理
目录 前言 使用场景概述 WFE.SEV 与 WFI 的作用与工作原理 SEV WFE WFI The Event Register WFE伪代码 WFE wake-up events WFI伪代码 ...
- Armv8-R系列之ARM Cortex-R52 由来
ARM系列之ARM Cortex-R52 由来 Cortex-R52的工作原理 Cortex-R52 是 Cortex-R 系列中最先进的处理器,可提供实时功能安全性能. 作为第一款 Armv8-R ...
- ARM系列处理器和架构
从一只ARM到另一只ARM! ARM处理器和架构 当前可用的处理器 ARM1 ARM2 ARM3 ARM4和5 ARM6 ARM7 ARM8 强壮有力的ARM ARM9 ARM10 ARM架构 v1 ...
- arm系列交叉编译器各版本区别
目录 交叉编译器命名规则 具体编译器举例 crosstool-ng交叉编译工具样本 arm交叉编译器举例 几个概念 ABI与EABI gnueabi与gnueabihf 参考 交叉编译器命名规则 交叉 ...
- ARM系列处理器的分类
1.ARM ARM即以英国ARM(Advanced RISC Machines)公司的内核芯片作为CPU,同时附加其他外围功能的嵌入式开发板,用以评估内核芯片的功能和研发各科技类企业的产品. ARM ...
- 片上总线协议学习(1)——SiFive的TileLink与ARM系列总线的概述与对比
link 片上总线协议学习(1)--SiFive的TileLink与ARM系列总线的概述与对比 finally 27 人赞同了该文章 一.背景介绍 随着超大规模集成电路的迅速发展,半导体工业进入深亚微 ...
最新文章
- 从外部导入django模块
- boost::unorder_map如何插入元素_「React」如何在React中优雅的实现动画
- pytorch下载时出现错误:EOFError: Compressed file ended before the end-of-stream marker was reached
- KVM中I/O设备直接分配和SR-IOV(十六)
- 张旭豪:外卖概念的三点进化
- python合并csv文件_PYTHON合并CSV文件的实践
- 使用Amanda ZRM备份远程MySQL数据库
- IDAE启动报错:Intellij idea Cannot start internal HTTP server. Git integration, JavaScript debugger...
- linux命令详解——top
- 如何做个人职业规划和年度计划
- 论文学习17-Global Normalization of Convolutional Neural Networks(联合实体关系抽取CNN+CRF)2017
- java+icepdf+下载_Java使用icepdf将pdf文件按页转成图片
- CCF202104-5 疫苗运输(100分题解链接)
- php手动删除变量函数,PHP unset()函数销毁变量_PHP教程
- Elasticsearch(三)
- c语言学生综合测评系统_学生综合评价系统
- 微软产品界面配色方案分析
- 如果域名被劫持该怎么办?有什么应对方法?
- 【考研英语语法】一般过去式练习题
- UltraVNC:一款高层玩家使用的远程控制软件
热门文章
- 调用中国气象局天气的接口 遇到WebService客户端引用 服务器无法处理请求。 ---> 未将对象引用设置到对象的实例
- noip2014:螺旋矩阵_网页设计:2014年值得关注的20个最热门趋势
- Linux操作系统浅尝辄止
- 修家谱的攀附之风:你祖上是苏东坡,我祖上还是孙悟空呢
- 我经常用的一款切图工具
- 南大周志华团队开源深度森林软件包DF21:训练效率高、超参数少,普通设备就能跑 | AI日报...
- 栅格法路径算法C语言,基于地图栅格与QPSO算法结合的机器人路径规划方法与流程...
- 【CSS应用篇】——CSS如何实现圆角边框
- MATLAB快速入门(二):矩阵
- html时间转为时间截,字符串时间戳转换成时间