Intel SGX

news/2024/11/28 20:32:47/

最近Intel推出的SGX技术对云计算安全保护有重要意义,SGX技术是Intel于2013年在ISCA会议的Workshop HASP中提出的,但只是提出了这一概念和原理,2015年10月第一代支持SGX技术的CPU问世。在这两年间,微软基于SGX模拟器提出了SGX技术两种应用,分别是Haven(USENIX 2014)和VC3(SP 2015)。本次主要学习SGX的原理。

0x01. SGX介绍

Intel SGX是Intel Software Guard Extension的缩写。SGX是Intel指令集架构(ISA)的扩展,主要提供了一些指令用于创建一个可信执行环境(TEE)Enclave。用户态应用程序可以在Enclave中安全执行,而不被恶意的OS、hypervisor(VMM)所攻击。

0x02. SGX原理

SGX的保护是针对应用程序的地址空间的。SGX利用处理器提供的指令,在内存中划分处一部分区域(叫做EPC),并将应用程序地址空间中的Enclave映射到这部分内存区域。这部分内存区域是加密的,通过CPU中的内存控制单元进行加密和地址转化。

SGX内存保护原理:当处理器访问Enclave中数据时,CPU自动切换到一个新的CPU模式,叫做enclave模式。enclave模式会强制对每一个内存访问进行额外的硬件检查。由于数据是放在EPC中,为了防止已知的内存攻击(如,内存嗅探),EPC中的内存内容会被内存加密引擎(MEE)加密的。EPC中的内存内容只有当进入CPU package时,才会解密;返回EPC内存中会被加密。

SGX中的一些术语:
(1). Enclave Page Cache (EPC): 一个保留加密的内存区域。Enclave中的数据代码必需在其中执行。为了在EPC中执行一个二进制程序,SGX指令允许将普通的页复制到EPC页中。
(2). Enclave Page Cahce Map (EPCM):为了对每个EPC页进行访问控制,会在CPU指定的数据结构中维持访问权限和EPC页所属的enclave。
(3). State Save Area (SSA ):当Enclave内部涉及到一个系统调用时,会发生上下文切换,保存Enclave的上下文到EPC中保留区域,这部分区域叫做状态保留区域。


http://www.ppmy.cn/news/181356.html

相关文章

windows安装G++编译器

1.验证有无安装gcc winr 调出Run,输入cmd,调出cmd窗口 输入 g -v 2安装 在https://sourceforge.net/projects/mingw/ 下载MinGW,minimalist GUN for windows GUN-Gun’s not unix GCC-GNU Compiler Collection 在MinGW的列表中,勾选希望安装的…

振芯GM7123C:功能RGB转VGA芯片方案简介

1. 概述GM7123是一款频率330MHz的3通道10位高速视频DAC芯片,兼容RS-343A/RS-170标准差分输出,输出电流范围是2mA~26mA。输入兼容TTL电平,内部基准1.23V,单电源3.3V供电,采用LQFP48封装。该芯片可应用于&…

Cygwin安装

Cygwin是一个在Windows平台上运行的类UNIX模拟环境,在其提供的命令行界面中完美地兼容了Windows和Linux的命令行指令,安装和使用教程很容易百度到,可从官网下载安装包:Cygwin官网。安装步骤如下所示,也可自行百度安装方…

linux 64位操作系统环境下用gcc、g++编译32位程序

在linux 64位操作系统环境下,默认编译生成的可执行文件是64位的。今天由于测试验证需要,需要将程序编译成32位的可执行文件,碰到了一些问题,下面做一下记录。 gcc、g编译时,增加下列参数之一: -m32 :将int…

Cygwin+OSgeo4w安装

CygwinOSGeo4W安装 一、Cygwin和OSGeo4W介绍 二、Cygwin安装 三、OSGeo4W安装 几乎所有的开源GIS项目都在某种程度上使用GDAL来读写数据,但是因为Windows是一个封闭的平台,所以它没有像基于Unix的操作系统那样开发软件包管理器。鉴于此,在Uni…

GD32硬件IIC

GD32E230硬件IIC 我们熟悉IIC都是使用软件代码的形式模拟时序图来编程 现在使用GD32E230中的HAL库中硬件IIC模式IIC。的总线机制都是一种两线接口、简单、双向二线制同步的串行总线,二线制就是时钟线(SCL)和数据线(SDA)两个信号线。IIC寻址时分为主从设备之分&#…

Intel SGX Explained

文章目录 SGX新增第二章 Intel体系架构背景知识Overview计算模型软件权限级别地址空间地址转换 第五章 SGX Programming Medol5.1 SGX物理内存组织5.1.1 The Enclave Page Cache(EPC)5.1.2 The Enclave Page Cache Map(EPCM)5.1.3…

读改变未来的九大算法笔记02_数据库

1. 基础思想 1.1. 预写日志记录 1.2. 两阶段提交 1.3. 关系数据库 2. 两个事实 2.1. 计算机程序会崩溃 2.1.1. 当一个程序崩溃时,它会丢掉所有正在处理的东西 2.1.2. 只有安放在计算机文件系统中的信息会得到保存 2.1.3. 崩溃相当宽泛:包括任何可…