本文介绍了如何在 Ubuntu 上安装 Intel SGX SDK。SGX 全称 Intel Software Guard Extensions,是 Intel 在其 CPU 体系下的扩展,用于增强软件的安全性,用于可信计算 TEE。
本文所使用环境:
1 | 操作系统:Ubuntu 16.04 LTS |
按照如下步骤执行即可完成环境搭建:
执行:
1
2
3sudo apt-get update
sudo apt-get install libssl-dev libcurl4-openssl-dev libprotobuf-dev
sudo apt-get install build-essential python
下载 Intel SGX 驱动并安装:
1
2
3
4wget https://download.01.org/intel-sgx/sgx-linux/2.7.1/distro/ubuntu16.04-server/sgx_linux_x64_driver_2.6.0_4f5bb63.bin
chmod +x sgx_linux_x64_driver_2.6.0_4f5bb63.bin
sudo ./sgx_linux_x64_driver_2.6.0_4f5bb63.bin
sudo reboot
下载 Intel SGX PSW 并安装:
1
2wget https://download.01.org/intel-sgx/sgx-linux/2.7.1/distro/ubuntu16.04-server/libsgx-enclave-common_2.7.101.3-xenial1_amd64.deb
sudo dpkg -i ./libsgx-enclave-common_2.7.101.3-xenial1_amd64.deb
下载并安装 Intel SGX SDK:
1
2
3wget https://download.01.org/intel-sgx/sgx-linux/2.7.1/distro/ubuntu16.04-server/sgx_linux_x64_sdk_2.7.101.3.bin
chmod +x ./sgx_linux_x64_sdk_2.7.101.3.bin
./sgx_linux_x64_sdk_2.7.101.3.bin安装过程中可以手动输入 SDK 要安装到的目标位置
添加环境变量,第 4 步结束会输出一行命令,执行:
1
source /path/to/sgxsdk/environment
至此环境就已经搭建好了,现在我们来运行一下实例程序:
切换目录
1
cd /path/to/sgxsdk/SampleCode/SampleEnclave
编辑一下 Makefile:
1
2
3
4
5
6
7
8# Intel SGX SDK 的安装位置
SGX_SDK ?= /home/luoyhang003/SGX/sgxsdk
# 运行类型:HW 真实环境;SIM 模拟器环境
SGX_MODE ?= SIM
# 运行架构:仅支持 64 位
SGX_ARCH ?= x64
# 是否为:Debug 调试模式
SGX_DEBUG ?= 1
编译:
1
sudo make
运行:
1
./app
运行结果:
1
2
3
4Checksum(0x0x7fff2aa60d00, 100) = 0xfffd4143
Info: executing thread synchronization, please wait...
Info: SampleEnclave successfully returned.
Enter a character before exit ...
本文的版权归作者 罗远航 所有,采用 Attribution-NonCommercial 3.0 License。任何人可以进行转载、分享,但不可在未经允许的情况下用于商业用途;转载请注明出处。感谢配合!