Linux平台 SGX 技術包括:SGX 驅動程序、SGX SDK 以及 SGX 平台軟件 (PSW) ,其 SDK 和 PSW 均托管在 linux-sgx 項目中。
搭建 SGX 環境步驟如下:
1、安裝相關依賴
$ sudo apt-get install build-essential ocaml ocamlbuild automake autoconf libtool wget python-is-python3 libssl-dev git cmake perl
2、下載 linux-sgx 代碼:
$ git clone https://github.com/intel/linux-sgx.git $ cd linux-sgx && make preparation
這里,make preparation 中會執行 ./download_prebuilt.sh 腳本,下載 external/toolset 目錄下的相關工具。
3、編譯 sdk 及 sdk 安裝器
$ make sdk
$ make sdk_install_pkg
之后,會在 linux/installer/bin/ 目錄下看到 sgx_linux_x64_sdk_${version}.bin 類似的文件,執行該文件即可安裝 SGX sdk
4、編譯 psw 及 psw 安裝器
$ make psw
$ make deb_psw_pkg
完成之后,就可以在 linux/installer/deb/libsgx-urts, linux/installer/deb/libsgx-enclave-common, linux/installer/deb/libsgx-uae-service, linux/installer/deb/libsgx-epid, linux/installer/deb/libsgx-launch, linux/installer/deb/libsgx-quote-ex and linux/installer/deb/sgx-aesm-service 目錄下找到安裝文件
5、編譯 debian 安裝包
$ make deb_local_repo
這樣即可在類似 linux/installer/deb/sgx_debian_local_repo 的目錄下找到 deb 文件
6、更新軟件源,修改 /etc/apt/sources.list 文件
對於 ubuntu 21.04 版本,添加:
deb [trusted=yes arch=amd64] file:/PATH_TO_LOCAL_REPO hirsute main
保存后,再執行 apt-get update 命令,之后即可安裝: