ARM-V9 RME(Realm Management Extension)系统架构之系统能力的执行隔离

2024-05-30 01:36

本文主要是介绍ARM-V9 RME(Realm Management Extension)系统架构之系统能力的执行隔离,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

安全之安全(security²)博客目录导读

目录

一、执行隔离

1、安全状态

2、安全模型


本博客探讨 RME 所需的系统能力,以保证 Arm CCA 对于 Realms 的安全性和隔离特性。

一、执行隔离

1、安全状态

RME 系统支持以下安全状态:

  • 非安全 (Non-secure)
  • 安全 (Secure)
  • Realm
  • Root

术语“requester 请求者”指能够发起访问的硬件代理。请求者可以是处理单元(PE)或非处理单元(非 PE)代理。

在 RME 系统中,任何请求者的访问和任何 PE 执行的指令都与单一的安全状态相关联。

ARM架构参考手册中定义的 Realm 管理扩展功能指定了 PE 执行上下文如何映射到安全状态。

RME 提供基于硬件的隔离,允许执行上下文在不同的安全状态下运行并共享系统资源,同时确保:

  • 在以下安全状态下的执行:
    • Realm 安全状态下的执行无法被与非安全安全状态或安全安全状态相关联的代理观察或修改。
    • 安全安全状态下的执行无法被与非安全安全状态或 Realm 安全状态相关联的代理观察或修改。
    • Root 安全状态下的执行无法被与任何其他安全状态相关联的代理观察或修改。
  • 分配给以下安全状态的内存:
    • Realm 安全状态下的内存无法被与非安全安全状态或安全安全状态相关联的代理读取或修改。
    • 安全安全状态下的内存无法被与非安全安全状态或 Realm 安全状态相关联的代理读取或修改。
    • Root 安全状态下的内存无法被与任何其他安全状态相关联的代理读取或修改。
  • 分配给 Realm 安全状态的可分配设备接口无法被与非安全安全状态或安全安全状态相关联的代理读取或修改。
  • 与 Realm 安全状态中的 VMID 相关联的可分配设备接口只能访问与该 VMID 相关联的内存,或与非安全安全状态相关联的内存。

本规范使用术语 RME 安全保证来描述上述属性。

RME 安全保证适用于安全生命周期状态的系统。

2、安全模型

Arm CCA 系统安全域 (System Security Domain,SSD) 包括所有能够影响 Arm CCA 和 RME 安全保证的硬件代理。例如,隔离硬件和受信任的子系统。

受信任子系统是具有私有资源、配置和可验证固件的系统功能,例如受信任的系统控制处理器 (SCP)。

监控安全域 (Monitor Security Domain,MSD) 是在根安全状态 (EL3) 下执行的可更新 PE 固件,负责强制执行 Arm CCA 和 RME 安全保证。

领域管理安全域 (Realm Management Security Domain,RMSD) 是在领域安全状态 (EL2) 下执行的可更新 PE 固件,负责强制执行领域的 Arm CCA 安全保证。

下图提供了安全模型的示意图。

这篇关于ARM-V9 RME(Realm Management Extension)系统架构之系统能力的执行隔离的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1015208

相关文章

Linux kill正在执行的后台任务 kill进程组使用详解

《Linuxkill正在执行的后台任务kill进程组使用详解》文章介绍了两个脚本的功能和区别,以及执行这些脚本时遇到的进程管理问题,通过查看进程树、使用`kill`命令和`lsof`命令,分析了子... 目录零. 用到的命令一. 待执行的脚本二. 执行含子进程的脚本,并kill2.1 进程查看2.2 遇到的

java中ssh2执行多条命令的四种方法

《java中ssh2执行多条命令的四种方法》本文主要介绍了java中ssh2执行多条命令的四种方法,包括分号分隔、管道分隔、EOF块、脚本调用,可确保环境配置生效,提升操作效率,具有一定的参考价值,感... 目录1 使用分号隔开2 使用管道符号隔开3 使用写EOF的方式4 使用脚本的方式大家平时有没有遇到自

linux系统中java的cacerts的优先级详解

《linux系统中java的cacerts的优先级详解》文章讲解了Java信任库(cacerts)的优先级与管理方式,指出JDK自带的cacerts默认优先级更高,系统级cacerts需手动同步或显式... 目录Java 默认使用哪个?如何检查当前使用的信任库?简要了解Java的信任库总结了解 Java 信

Spring Boot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)

《SpringBoot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)》本文将以一个实际案例(用户管理系统)为例,详细解析SpringBoot中Co... 目录引言:为什么学习Spring Boot分层架构?第一部分:Spring Boot的整体架构1.1

mybatis直接执行完整sql及踩坑解决

《mybatis直接执行完整sql及踩坑解决》MyBatis可通过select标签执行动态SQL,DQL用ListLinkedHashMap接收结果,DML用int处理,注意防御SQL注入,优先使用#... 目录myBATiFBNZQs直接执行完整sql及踩坑select语句采用count、insert、u

一个Java的main方法在JVM中的执行流程示例详解

《一个Java的main方法在JVM中的执行流程示例详解》main方法是Java程序的入口点,程序从这里开始执行,:本文主要介绍一个Java的main方法在JVM中执行流程的相关资料,文中通过代码... 目录第一阶段:加载 (Loading)第二阶段:链接 (Linking)第三阶段:初始化 (Initia

Oracle数据库在windows系统上重启步骤

《Oracle数据库在windows系统上重启步骤》有时候在服务中重启了oracle之后,数据库并不能正常访问,下面:本文主要介绍Oracle数据库在windows系统上重启的相关资料,文中通过代... oracle数据库在Windows上重启的方法我这里是使用oracle自带的sqlplus工具实现的方

C++统计函数执行时间的最佳实践

《C++统计函数执行时间的最佳实践》在软件开发过程中,性能分析是优化程序的重要环节,了解函数的执行时间分布对于识别性能瓶颈至关重要,本文将分享一个C++函数执行时间统计工具,希望对大家有所帮助... 目录前言工具特性核心设计1. 数据结构设计2. 单例模式管理器3. RAII自动计时使用方法基本用法高级用法

Java实现远程执行Shell指令

《Java实现远程执行Shell指令》文章介绍使用JSch在SpringBoot项目中实现远程Shell操作,涵盖环境配置、依赖引入及工具类编写,详解分号和双与号执行多指令的区别... 目录软硬件环境说明编写执行Shell指令的工具类总结jsch(Java Secure Channel)是SSH2的一个纯J

JWT + 拦截器实现无状态登录系统

《JWT+拦截器实现无状态登录系统》JWT(JSONWebToken)提供了一种无状态的解决方案:用户登录后,服务器返回一个Token,后续请求携带该Token即可完成身份验证,无需服务器存储会话... 目录✅ 引言 一、JWT 是什么? 二、技术选型 三、项目结构 四、核心代码实现4.1 添加依赖(pom