Ubuntu【16.04/20.04】上搭建intel SGX环境

 当用U盘启动盘刷了Ubuntu的机子后,可以配置一下:(请忽略)

1. 更新

sudo apt update #update the list
sudo apt upgrade #update contents of the list

2. 切换代理

sudo mv /etc/apt/sources.list /etc/apt/sources.list.bak
sudo vim /etc/apt/sources.list #https://developer.aliyun.com/mirror/ubuntu在此网址找到对应版本粘贴进去,保存
sudo apt-get update

正文

在尝试了一些教程之后,发现搭建SGX环境的过程较为复杂,不适合将代码下载到本地进行编译,容易出现各种各样的报错,令人头疼。终于、找到一篇教程,并在Ubuntu20.04和16.04的版本上亲测过搭建成功!将20.04版本的也补充在这里:(建议选择本地编译还是看github上intel sgx的官方教程)

操作系统:Ubuntu 16.04/20.04 LTS

按照如下步骤执行即可完成环境搭建:

1. 执行:

sudo apt-get update
sudo apt-get install libssl-dev libcurl4-openssl-dev libprotobuf-dev
sudo apt-get install build-essential python

2. 下载 Intel SGX 驱动并安装:

******16.04******
wget 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

******20.04******
wget https://download.01.org/intel-sgx/sgx-linux/2.15/distro/ubuntu20.04-server/sgx_linux_x64_driver_2.11.0_2d2b795.bin
chmod +x sgx_linux_x64_driver_2.11.0_2d2b795.bin
sudo ./sgx_linux_x64_driver_2.11.0_2d2b795.bin
sudo reboot

3. 下载 Intel SGX PSW 并安装:

******16.04******
wget 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

******20.04******
wget https://download.01.org/intel-sgx/sgx-linux/2.15/distro/ubuntu20.04-server/debian_pkgs/libs/libsgx-enclave-common/libsgx-enclave-common_2.15.100.3-focal1_amd64.deb
sudo dpkg -i ./libsgx-enclave-common_2.15.100.3-focal1_amd64.deb

4. 下载并安装 Intel SGX SDK:

******16.04******
wget 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

******20.04******
wget https://download.01.org/intel-sgx/sgx-linux/2.15/distro/ubuntu20.04-server/sgx_linux_x64_sdk_2.15.100.3.bin
chmod +x ./sgx_linux_x64_sdk_2.15.100.3.bin
./sgx_linux_x64_sdk_2.15.100.3.bin

安装过程中可以手动输入 SDK 要安装到的目标位置

5. 添加环境变量,第 4 步结束会输出一行命令,执行:

source /path/to/sgxsdk/environment

至此环境就已经搭建好了,现在我们来运行一下实例程序:

① 切换目录

cd /path/to/sgxsdk/SampleCode/SampleEnclave

② 编辑一下 Makefile

# Intel SGX SDK 的安装位置
SGX_SDK ?= /home/luoyhang003/SGX/sgxsdk
# 运行类型:HW 真实环境;SIM 模拟器环境
SGX_MODE ?= SIM
# 运行架构:仅支持 64 位
SGX_ARCH ?= x64
# 是否为:Debug 调试模式
SGX_DEBUG ?= 1

③ 编译

sudo make

④ 运行

./app

运行结果:

Checksum(0x0x7fff2aa60d00, 100) = 0xfffd4143
Info: executing thread synchronization, please wait...  
Info: SampleEnclave successfully returned.
Enter a character before exit ...

​​​​​​TEE 可信执行环境 Intel SGX:环境搭建(Ubuntu) |远航 (luoyuanhang.com)

附上原文链接,感谢作者!

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值