frameworks_security_optee_vela:基于 OP-TEE 与 Vela 生态的适配层项目

可实现 Vela tee 与 optee os 间的适配,让 optee_os 运行于 Vela tee 系统,TA 和 CA 程序可直接运行。核心功能含 compat 系统模块、server 请求处理及 wasm TA 支持。【此简介由AI生成】

分支7Tags4
文件最后提交记录最后更新时间
2 个月前
1 个月前
2 个月前
2 个月前
2 个月前
2 个月前
2 个月前
2 个月前
2 个月前
2 个月前
2 个月前
2 个月前
2 个月前
2 个月前
2 个月前

optee_vela

[English | 中文]

项目概览

optee_vela本身是用于实现Vela teeoptee os之间的适配层,让optee_os可以运行在Vela tee系统当中。 因此optee_os当中的TA,CA程序都是可以直接在vela系统当中运行的。 借助于optee_vela,使得我们不需要对optee_os工程本身做任何修改,就可以使得optee_osvela当中完整运行。

下面是optee_vela本身在整个Vela tee系统当中的位置:

+-------------------------------------------------------+
|                   optee os                            |
+-------------------------------------------------------+
|                  optee_vela                           |
+-------------------------------------------------------+
|                  vela kernel                          |
+-------------------------------------------------------+

项目描述

optee_vela当中主要是包含3部分功能:

  1. compat: 用于支持optee os上层framework在vela当中运行的系统模块,例如atomic, fs, mem操作等基础模块
  2. server: 用于接收和处理所有来自vela ap发起的对vela tee的请求,例如打开open TA,invoke TA cmd等操作
  3. wasm: 用于支持vela特有的wasm TAoptee os当中运行

下面分别介绍:

1. compat

compat适配层主要是将optee os上层framework需要用到的系统API使用vela的系统API进行实现,例如atomic,mem,fs等基础API. 下面介绍一下主要的被替换的API模块:

  1. fs

fs模块当中主要是包含了2部分:

    1. host_fs host_fs主要是用于实现optee os当中需要的ree fs操作.在optee os当中,ree fs的实现是将所有的和fs相关的操作都转发到ree当中进行处理. 这是因为optee os当中本身对fs的操作支持有限,所以复杂的fs操作都需要跨核传递到ree当中来处理. 但是由于vela tee是一个全功能的os,在tee当中也支持复杂的fs操作,因此vela tee当中的ree fs可以直接在vela tee侧来完成. 而host_fs就是用于实现该功能.
    1. rpmb_fs rpmb_fs主要是用于实现optee os当中需要的操作rpmb驱动的实现. vela tee本身支持rpmb驱动,然后通过rpmb_fs就可以在optee os当中直接使用rpmb驱动.
  1. atomic

这个API模块主要是将optee os运行需要的atomicspinlock替换成vela系统支持的atomicspinlock接口实现。

2. server

vela当中,vela apvela tee之间的通信过程是通过rpmsg socket来进行的。 在这个过程当中,我们可以将vela ap作为客户端,然后vela tee作为服务端。 vela tee当中的server就是实现为rpmsg socket server,用于接收和处理rpmsg socket client发起的请求.

server部分本身用于完成vela ap发起的对vela tee的请求处理. server部分会创建一个opteed的task出来. 然后在系统启动的时候,会在后台启动opteed:

opteed &

3. wasm

vela tee本身支持wasm TA, wasm TA是指的TA程序本身是以wasm字节码的格式来编译链接,然后在运行的时候,由vela tee内置的wamr framework来 加载和运行该wasm TA.

项目介绍

可实现 Vela tee 与 optee os 间的适配,让 optee_os 运行于 Vela tee 系统,TA 和 CA 程序可直接运行。核心功能含 compat 系统模块、server 请求处理及 wasm TA 支持。【此简介由AI生成】

定制我的领域