TEE开源框架总结
创始人
2025-05-28 12:55:49
0

参考文献

  • 隐私计算之TEE技术和应用实践分析(2021.6)

对比分析

开源项目公司支持芯片特点支持的库开发语言
Teaclave/MesaTEE百度SGX、TrustZoneApache孵化项目之一。Teaclave设计思路是构建一个类FaaS(Function as a Service)的计算平台服务。平台在提供TEE机密计算、远程验证、安全存储等功能基础上,再通过一套任务管理框架实现了多任务的管理和并发操作。同时按照FaaS的设计逻辑实现计算函数的可插拔Marshal、Math、Binascii、Itertools、MicronumpyRust、Python
Graphene / Gramine OSOSCAR LabSGX LinuxSGX LibOS项目。Gramine(以前叫Graphene)是一个轻量级的库式操作系统,旨在以最小的主机要求运行单个应用程序。Gramine可以在一个孤立的环境中运行应用程序,其好处可以与在虚拟机中运行一个完整的操作系统相媲美–包括客体定制,易于移植到不同的操作系统,以及进程迁移。。Tensorflow、Pytorch、OpenVINO、Memchached、Redis、Nginx、Apache HTTP Serverc、python
Occlum蚂蚁金服SGX降低遗留应用迁移到SGX中的编码成本。对应用代码不做更改或者只做少量调整,就可以迁移到SGX中运行,获得机密性和完整性保护。与其他LibOS项目相比,具有Enclave内多进程管理、全类型的文件系统支持、内存安全、容器化设计功能。rust、c/c++
OpenEnclaveMicrosoftSGX、TrustZone(预览阶段)Open Enclave是一套C/C++的SDK。Open Enclave SDK主要封装了Enclave生命周期管理、Enclave度量、Enclave内外互调用、系统调用、数据封装、远程验证以及一些密码学库。MUSL、Openssl、Mbedtls、LLVM LibC++
AsyloGoogleSGX提供了C/C++的SDK,但不同的是Asylo更进一步定义了基于SGX的应用实现规范,也就是所谓的编程框架。基于Asylo实现的应用也是分为非可信区和可信区,但互相的通信被约束为C/S模式。非可信部分实现客户端和Enclave管理器,可信部分实现计算服务端。Asylo是一套把SGX做成服务化的编程框架-C/C++
KubeTEESGXKubeTEE是一个TEE开发、部署、维护中间件框架和服务的集合。特别是,它是针对云原生工作流程的。顾名思义,KubeTEE是基于docker容器、Kubernetes编排和其他云原生技术。它的目标是帮助开发者实现基于TEE的应用,并更容易和顺利地部署TEE服务。
OP-TEELinaroTrustZoneTrusted OS的一个开源实现。 OP-TEE包括安全世界操作系统(OPTEE_OS),普通世界客户端(OPTEE_Client),测试套件(OPTEE_Test / XTest)和Linux驱动程序。操作系统和客户端符合Global Platform规范。项目由Linaro维护,已经适配支持28多个平台/处理器。开发用户负责开发在Linux上运行的客户端应用程序(CA)和在OP-TEE上运行的可信应用程序(TA)。CA使用TEE客户端API与TA对话并从中获取安全服务。CA和TA使用共享内存在彼此之间传递数据--
OPEN-TEESecure Systems groupTustZone (≥Ubuntu14.04)Open-TEE开源项目的目标是实现一个符合最近全球平台TEE规范的 “虚拟TEE”。-c/c++
Trusty OSAndroid社区开源项目SGX、TrustZoneTrusty 是一种安全的操作系统 (OS),可为 Android 提供可信执行环境 (TEE)。Trusty OS 与 Android OS 在同一处理器上运行,但 Trusty 通过硬件和软件与系统的其余组件隔离开来。Trusty 与 Android 彼此并行运行。Trusty 可以访问设备主处理器和内存的全部功能,但完全隔离。隔离可以保护 Trusty 免受用户安装的恶意应用以及可能在 Android 中发现的潜在漏洞的侵害。 Trusty 与 ARM 和 Intel 处理器兼容。在 ARM 系统中,Trusty 使用 ARM 的 Trustzone™ 虚拟化主处理器,并创建安全的可信执行环境。使用 Intel 虚拟化技术的 Intel x86 平台也提供类似的支持。Little Kernel、Linux 内核驱动程序、Android 用户空间库-
SierraTEE OSSierrawareTrustZone、MIPS提供了一个最小的安全内核,可以与功能更全面的高级操作系统(如Linux、Android、BSD)在同一内核上并行运行。它还为丰富的操作系统(“正常世界”)提供了驱动程序,以便与安全内核(“安全世界”)通信。-

很多企业自用闭源的Trusted OS,比如苹果的Secure Enclave、高通的QTEE、三星的Knox、Teegris、Trustonic的Kinibi OS、华为的TrustedCore等。

LibOS for SGX

  • 为什么需要LibOS见 这儿

英特尔SGX通过应用隔离技术帮助保护选定的代码和数据不被修改。应用程序可以从英特尔SGX的保密性和完整性保证中受益,但开发人员需要非常熟练地对英特尔SGX环境进行有效分区和代码修改。同时,SGX SDK提供了有限的系统调用接口,因此,在Enclave中的应用程序会因为没有暴露的接口而无法运行。

为了很好地支持在英特尔SGX Enclave中运行的应用程序,开发者可以免于编写任何额外的enclave感知代码。LibOS的主要功能如下:

  • 提供一个智能点来划分不信任/信任的系统
  • 不扩大不信任的接口
  • 将整个应用程序移植到Enclave

LibOS for SGX的通用框架是:

目前,支持Intel SGX的开源LibOS有Gramine、Occlum、SCONE和Fortanix等。其中常用的是Gramine和Occlum。

所以 LibOS 也属于 Trusted OS。Trusted OS 是为了开发方便,提供API让应用程序安全访问隔离空间,进行机密计算。

相关内容

热门资讯

监控摄像头接入GB28181平... 流程简介将监控摄像头的视频在网站和APP中直播,要解决的几个问题是:1&...
Windows10添加群晖磁盘... 在使用群晖NAS时,我们需要通过本地映射的方式把NAS映射成本地的一块磁盘使用。 通过...
protocol buffer... 目录 目录 什么是protocol buffer 1.protobuf 1.1安装  1.2使用...
Fluent中创建监测点 1 概述某些仿真问题,需要创建监测点,用于获取空间定点的数据࿰...
educoder数据结构与算法...                                                   ...
MySQL下载和安装(Wind... 前言:刚换了一台电脑,里面所有东西都需要重新配置,习惯了所...
MFC文件操作  MFC提供了一个文件操作的基类CFile,这个类提供了一个没有缓存的二进制格式的磁盘...
在Word、WPS中插入AxM... 引言 我最近需要写一些文章,在排版时发现AxMath插入的公式竟然会导致行间距异常&#...
有效的括号 一、题目 给定一个只包括 '(',')','{','}'...
【Ctfer训练计划】——(三... 作者名:Demo不是emo  主页面链接:主页传送门 创作初心ÿ...