编译配置SGX-SSL

编译配置SGX-SSL(SGX支持的openssl函数库)

由于在sgx中需要对超级大的整数进行操作,于是引入openssl库,下面是一些安装步骤,主要参考的了官方github给出的教程:

所用的电脑配置

  • 电脑:联想Thinkpad E14

  • 操作系统:ubuntu18.04

  • 处理器:i5-10210U

  • 内存:8G

  • 硬盘:1TB

  • 在电脑BIOS中启用Intel SGX。重装系统不会更改BIOS中的设置,所以即使重装系统,Intel SGX也会一直保持启用状态。

  • 安装如下工具:

    1
    sudo apt-get install gcc git cpuid

正式开始配置

预备

  • Perl
  • Toolchain(需要的工具,参照我的上一个博客安装sgxsdk,执行下面的指令之后可以看到这些工具的路径)
1
2
sudo cp external/toolset/{current_distr}/{as,ld,ld.gold,objdump} /usr/local/bin
which as ld ld.gold objdump
  • Intel SGX driver、SDK和PSW
  • 准备好OpenSSL源码压缩包openssl-${version}.tar.gz。本博客使用的是openssl-1.1.1q版本,之前计划使用openssl-1.1.1p版本,但是编译的时候报错让我使用openssl-1.1.1q版本,随着时间的推移官方的更新可能之后还需要其他版本,大家自行辨别。

下载sgx-ssl项目

从GitHub拉取intel-sgx-ssl项目,这个网站也是可以访问的

1
git clone https://github.com/intel/intel-sgx-ssl

下载openssl压缩包

1
2
cd intel-sgx-ssl/openssl_source
wget https://openssl.org/source/openssl-1.1.1q.tar.gz

这样openssl-1.1.1q.tar.gz压缩包就到了/intel-sgx-ssl/openssl_source/目录下

编译并安装

我们现在在openssl_source目录,下面进入linux目录Linux/directory

1
2
cd ../Linux
source /opt/intel/sgxsdk/environment //这里应填写sgx的安装路径,我的是/opt/intel/sgxsdk/

使得sgx开发环境生效。
无脑编译安装

1
2
make all test
sudo make install

安装完毕,可以在/opt/intel/sgxssl/找到编译好的库函数。


编译配置SGX-SSL
http://example.com/2022/10/11/Ubuntu18.04编译配置SGX-SSL(SGX支持的openssl函数库)/
作者
harper
发布于
2022年10月11日
许可协议