bios里的sgx是什么意思?     DATE: 2026-05-05 07:48:01

bios里的意思sgx是什么意思?

SGX技術(shù)定義

SGX全稱(chēng)Intel Software Guard Extens??ions,顧名思義,意思其是意思對因特爾體系(IA)的一個(gè)擴展,用于增強軟件的意思安全性。

SGX指令集擴展,意思旨在以硬件安全??為強制性保障,意思不依賴(lài)于固件和軟件的意思安全狀態(tài),提供用戶(hù)空間的意思可信執行環(huán)境,通過(guò)一組新的意思指令集擴展與訪(fǎng)問(wèn)控制機制,實(shí)現不同程序間的(de)意思隔離運行,保障用戶(hù)關(guān)鍵代碼和數據的意思機密性與完整性不受惡意軟件的破壞。

這(zhe)種方式并不是意思識別和隔離平臺上的所有惡意軟件,而是意思將合法軟件的安全操作封裝在一個(gè)enclave中,保護其不受惡意軟件的意思攻擊,特權或者非特權的意思軟件都無(wú)法訪(fǎng)問(wèn)enclave,也就是說(shuō),一旦軟件和數據位于enclave中,即便操作系統或者和VMM(Hypervisor)也無(wú)法影響enclave里面的代碼和數據。

Enclave的安全邊界只包含CPU和它自身。SGX創(chuàng )建的enclave也可以理解為一個(gè)可信執行環(huán)境TEE(Trusted Execution Environment)。

不過(guò)其與ARM TrustZone(TZ)還是有一點(diǎn)小區別的,TZ中通過(guò)CPU劃??分為兩個(gè)隔離ヾ(′▽?zhuān)??環(huán)境(安全世界和正常世界),兩者之間通過(guò)SMC指令通信;而SGX中一個(gè)CPU可以運行多個(gè)安全en??claves,并發(fā)執行亦可。

當然,在TZ的安全世界內部實(shí)??現多個(gè)相互隔離的安全服務(wù)亦可達到同樣的效果。

SGX Enclave的創(chuàng )建

借助Intel處理器的SGX技術(shù),??通過(guò)CPU的硬件模式切換,系統進(jìn)入可信模式執行,只使用必需的硬件構成一個(gè)完全隔離的(de)特權模式,加載一個(gè)極小的微內核操作系統支持任務(wù)調度??,完成身份認證,并根據認證后的用(yong)戶(hù)身份.

通過(guò)使用Intel SGX技術(shù),構建Enclave作為完全隔離的特權模式的具體實(shí)現方案如下: (1)將需要運行的虛擬機鏡像加載到磁盤(pán)中。 (2)生成加密應用程序代碼和數據的秘鑰憑證,SGX技術(shù)提供了一種較為先進(jìn)的秘鑰加密方法,其秘鑰由SGX版本秘鑰、C??PU機器秘鑰和Intel官方分配給用戶(hù)的秘鑰在秘鑰生成算法下生成的全新秘鑰,使用此秘鑰對需要加載的(′_`)應用程序的代碼和數據進(jìn)行加密。 (3)將需要加載的應用?程序或鏡像的??代碼和數據首先加載到SGX Loader加載器中,為將其加載至Encl(′?ω?`)ave做準備。 (4??)在Intel SGX 可信模式下動(dòng)態(tài)申請構建一個(gè)Enclave。 (5)將需??要加載的程序和數據以EPC(Enclave Page Cache)的形式首先通過(guò)秘鑰憑證解密。 (6)通過(guò)SGX指令證明解密后的程序和數據可信,并(bing)將其加載進(jìn)Enclave中,然后對加載進(jìn)??Enclave中的每個(gè)EPC內容進(jìn)行復制(╬?益?)。 (7)由于使用了硬件隔離,進(jìn)一步保障Enclave的機密性和完整性,保障了不同的Enclave之間不會(huì )發(fā)生沖突更不會(huì )允許其互相訪(fǎng)問(wèn)。 (8)啟動(dòng)Enclave初始化程序,禁止繼續加載和驗證EPC,生成Enclave身份憑證,并對此憑證進(jìn)行加密,并作為Enclave標示存入Enclave的TCS(Threa(?Д?)d Control Structure)中,用以恢復和驗證其身份。 (9)SGX的隔離完成,通過(guò)硬件隔離的Enclave中的鏡像程序開(kāi)始執行,構建基于SGX技術(shù)的硬件隔離完成。

SGX Enclave的啟動(dòng)和銷(xiāo)毀

在完成構建Enclave后,為保護Encヽ(′▽?zhuān)?/la?ve在運行結束或掛起后,Encl??ave中的信息不被泄露,而Enclave中的應用程序可能會(huì )因為系統出現中斷、異常等出現非正常情況下的退出,為解決(jue)此類(lèi)問(wèn)題使用SGX技術(shù)對可能出現(xian)的同ヾ(^-^)ノ步(bu)退出和異步ヾ(′?`)?退出設置不( ?ヮ?)同的處理方式,在同步退出時(shí),Enclave中運行的數據和代碼將會(huì )根據自定義的EEE(Enclave Exiting Events) 設置的處理(li)方式進(jìn)行處理。而如果時(shí)異步退出的情況下,Enclave中的數據和運行狀態(tài)等信息將會(huì )秘鑰憑證進(jìn)行加密,并存儲到Enclave之外,在下一次啟動(dòng)系統時(shí)有選擇的恢復中斷的Enclave。

SGX 創(chuàng )建Enclave可信通信通道

對于SGX Enclave的訪(fǎng)問(wèn)請求,構建檢測機制進(jìn)行限制,首先判斷是否啟動(dòng)了Enclave模?式,然后判斷訪(fǎng)問(wèn)請求是否來(lái)源于Enclave內部,如果是則繼續判斷,如果不是則返回訪(fǎng)問(wèn)失敗,然后根據給予生成Enclave前的身份憑證用于檢驗此訪(fǎng)問(wèn)請求是否來(lái)源于同一個(gè)Enclave,如果是則通過(guò)訪(fǎng)問(wèn)檢測,若不是則根據Enclave的身份憑證記錄表,更換下一個(gè)Enclave身份憑證進(jìn)行匹配,知道所有的正在運行的Enclave全部匹配完成,若還無(wú)法匹配成功,返回訪(fǎng)問(wèn)失敗。