当前位置:网站首页>Intel SGX preliminary learning and understanding notes (continuously updated)
Intel SGX preliminary learning and understanding notes (continuously updated)
2022-04-23 05:26:00 【What’smean】
Some of the concepts
- SGX(Software Guard eXtensions) Software protection extension : It's a group. CPU Instruction extension , Can create a Trusted execution environment To protect code and data , Even using root Permissions are also inaccessible . Through this hardware facility , Applications can isolate code and data to achieve security , Mostly applied to Distributed systems in .SGX The implementation of requires a processor 、 Memory management unit 、BIOS、 The driver 、 The runtime environment and other software and hardware cooperate to complete . In addition to providing memory isolation and protection, security properties ,SGX The architecture also supports remote authentication and sealing , It can be used in the design of security software applications and interaction protocols .
-
sgx Overall memory abstraction model ( The figure below ): Including memory management 、 Layout and organization .PRM(Preserved Random Memory) It's dynamic memory DRAM The middle paragraph is used for SGX The reserved area of , This continuous memory space is at the lowest BIOS Layer and cannot be accessed by any software .EPC(Enclave Page Cache) yes PRM The of loading application data and code assigned by the operating system in 4KB A collection of memory sizes .EPCM(EPC Metadata) It's maintenance EPC Entry address , And contains CPU track EPC Status table of memory page metadata . It ensures that every EPC(4kb page) By a Enclave exclusive .

- Trusted execution environment (TEE):Trusted execution environment Abbreviation , Applied to secure intelligent devices , Secure payment and other fields . It is a safe area in the main processor . It runs in a separate environment and runs in parallel with the operating system . It ensures that TEE The confidentiality and integrity of the code and data loaded in are protected . Protect data and code by using both hardware and software , This parallel system is better than the traditional system ( namely REE, Rich execution environment ) More secure . stay TEE Trusted applications running in can access all the functions of the device's main processor and memory , Hardware isolation protects these components from the host operating system The impact of user installed applications running in .TEE Software and encryption isolation in protect different trusted applications from each other . It can safely handle private information such as password and private key , And ensure that the information will never be leaked to nodes or others , It can also prove that the data has not been tampered with .
- Distributed systems : It is a group that communicates through the network 、 A system of computer nodes that coordinate work to accomplish common tasks . Distributed systems have emerged to use cheap 、 Ordinary machines do calculations that a single computer can't do 、 Storage tasks . The aim is to use more machines , Processing more data .
-
Enclave: Is a protected content container , yes sgx Core technologies , It is used to store application sensitive data and code . When the part of the application that needs to be protected is loaded into enclave after , SGX Protect them from external software . be-all enclave They all reside in EPC(enclave page cache) in .
-
EPC(enclave page cache): This is a protected physical memory area in the system , For storage enclave and SGX data structure .EPC The layout is determined by the specific implementation of the platform , If CPU Support SGX Architecture and encryption protection DRAM (dynamic random access memory) To realize EPC, Then it supports BIOS Keep a paragraph called PRM(processor reserved memory) Memory range .BIOS Allocate by configuring a set of range registers PRM. Concrete PRM and EPC The layout is related to the platform . And depends on BIOS Set up .( The following figure for PRM、EPC、Enclave Layout diagram )

SGX
SGX The protection method is to operate the legal software safely ( Code 、 Data etc. ) Packaged in a enclave in , Protect it from malware . And execute SGX The authority of is very high , No privileged or non privileged software can access enclave, in other words , Once the software and data are in enclave in , Even if the operating system administrator and VMM(Hypervisor) It can't affect enclave Code and data inside .Enclave The security boundary only contains CPU And it itself .
Host application virtual memory view (abort page That is to say prm Area )

enclave Apply virtual memory view (Enclave Map to EPC The virtual memory of a page is called (enclave linear address range)ELRANGE)

版权声明
本文为[What’smean]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/04/202204220544124888.html
边栏推荐
- 可执行程序执行流程
- The annual transaction volume of the app store is US $1 million, and only 15% commission is paid. Small and medium-sized developers are very contradictory
- Quick app bottom navigation bar
- 双击.jar包无法运行解决方法
- Uniapp wechat sharing
- What are the most popular recruitment technical skills in 2022? You can't think of it
- 2021-10-08
- CPT 104_ TTL 09
- Cross domain CORS relationship~
- 2021-10-12
猜你喜欢

!!!!!!!!!!!!!!!!!!

When is it appropriate for automated testing? (bottom)

es6数组的使用

varnish入门

Master-slave replication of MariaDB database
Redis的基本知识

How to set the initial value of El input number to null

Three of three JS (webgl) simple sorting of rotation attribute function, and a simple case of rotating around the axis based on this

The title bar will be pushed to coincide with the status bar

相机成像+单应性变换+相机标定+立体校正
随机推荐
Various situations of data / component binding
Cloud computing and cloud native architecture design of openshift
selenium預先加載cookie的必要性
Uniapp wechat sharing
Domain driven model DDD (III) -- using saga to manage transactions
Use of uniapp native plug-ins
Uniapp hot update with progress bar
【openh264】cmake: msopenh264-static
Three 之 three.js (webgl)简单实现根据点绘制线/弧线(基于LineGeometry / Line2 / LineMaterial,绘制两点基于圆心的弧线段)
The source of anxiety of graduating college students looking for technology development jobs
Laravel routing job
What are the reasons for the failure of digital transformation?
即将毕业的大学生找技术开发工作的焦虑根源
!!!!!!!!!!!!!!!!!!
JS time format conversion
Redis的基本知识
Pandas to_ SQL function pit avoidance guide "with correct code to run"
Watch depth monitoring mode
Source code analysis of how to use jump table in redis
MFC implementation resources are implemented separately by DLL
