You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Changes:
Added a command option “-resign” for Signing Tool.
Split the header file of Un-trusted Architecture Services.
Supported Red Hat* Enterprise Linux* Server 8.0 (for x86_64). And we do not support
Red Hat* Enterprise Linux* Server 7.6 (for x86_64) from this release
Added support for new version Intel(R) Provisioning Certification Server interfaces.
Added new libraries libsgx_epid.so, libsgx_launch.so, libsgx_platform.so and libsgx_quote_ex.so
Fixed bugs.
Signed-off-by: Zhang Lili Z <[email protected]>
.PHONY: all dcap_source psw sdk clean rebuild sdk_install_pkg psw_install_pkg
37
42
.NOTPARALLEL: dcap_source sdk psw
38
43
39
-
all: dcap_source sdk psw
44
+
all: tips
45
+
46
+
tips:
47
+
@echo "Tips:"
48
+
@echo " This \"make\" command will show tips only and make nothing."
49
+
@echo " 1. If you want to build Intel(R) SGX SDK with default configuration, please take the following steps:"
50
+
@echo " 1) ensure that you have installed required tools described in README.md in same directory"
51
+
@echo " 2) enter the command: \"make sdk\""
52
+
@echo " 2. If you want to build Intel(R) SGX PSW with default configuration, please take the following steps:"
53
+
@echo " 1) ensure that you have installed additional required tools decribed in README.md in same directory"
54
+
@echo " 2) ensure that you have installed latest Intel(R) SGX SDK Installer which could be downloaded from: https://software.intel.com/en-us/sgx-sdk/download" and followed Installation Guide in the same page to finish installation.
55
+
@echo " 3) enter the commmand: \"make psw\""
56
+
@echo " 3. If you want to build other targets, please also follow README.md in same directory"
Copy file name to clipboardExpand all lines: README.md
+72-60Lines changed: 72 additions & 60 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -13,7 +13,7 @@ The Linux\* Intel(R) SGX software stack is comprised of the Intel(R) SGX driver,
13
13
14
14
The [linux-sgx-driver](https://github.com/01org/linux-sgx-driver) project hosts the out-of-tree driver for the Linux\* Intel(R) SGX software stack, which will be used until the driver upstreaming process is complete.
15
15
16
-
The repository provides a reference implementation of a Launch Enclave for 'Flexible Launch Control' under [psw/ae/ref_le](psw/ae/ref_le). The reference LE implemenation can be used as a basis for enforcing different launch control policy by the platform developer or owner. To build and try it by yourself, please refer to the [ref_le.md](psw/ae/ref_le/ref_le.md) for details.
16
+
The repository provides a reference implementation of a Launch Enclave for 'Flexible Launch Control' under [psw/ae/ref_le](psw/ae/ref_le). The reference LE implementation can be used as a basis for enforcing different launch control policy by the platform developer or owner. To build and try it by yourself, please refer to the [ref_le.md](psw/ae/ref_le/ref_le.md) for details.
17
17
18
18
License
19
19
-------
@@ -41,7 +41,7 @@ Build the Intel(R) SGX SDK and Intel(R) SGX PSW Package
41
41
* Ubuntu\* 18.04 LTS Desktop 64bits
42
42
* Ubuntu\* 18.04 LTS Server 64bits
43
43
* Red Hat Enterprise Linux Server release 7.4 64bits
44
-
* Red Hat Enterprise Linux Server release 7.6 64bits
44
+
* Red Hat Enterprise Linux Server release 8.0 64bits
45
45
* CentOS 7.5 64bits
46
46
* Fedora 27 Server 64bits
47
47
* SUSE Linux Enterprise Server 12 64bits
@@ -55,10 +55,10 @@ Build the Intel(R) SGX SDK and Intel(R) SGX PSW Package
Ensure that you have downloaded latest Intel(R) SGX SDK Installer from the [Intel(R) SGX SDK](https://software.intel.com/en-us/sgx-sdk/download) and followed the Installation Guide in the same page to install latest Intel(R) SGX SDK Installer.
89
+
86
90
- Use the script ``download_prebuilt.sh`` inside source code package to download prebuilt binaries to prebuilt folder
87
91
You may need set an https proxy for the `wget` tool used by the script (such as ``export https_proxy=http://test-proxy:test-port``)
88
92
```
89
93
$ ./download_prebuilt.sh
90
94
```
91
95
92
-
### Build the Intel(R) SGX SDK and Intel(R) SGX PSW
93
-
The following steps describe how to build the Intel(R) SGX SDK and PSW. You can build the project according to your requirements.
94
-
- To build both Intel(R) SGX SDK and PSW with default configuration, enter the following command:
96
+
### Build the Intel(R) SGX SDK and Intel(R) SGX SDK Installer
97
+
- To build Intel(R) SGX SDK with default configuration, enter the following command:
95
98
```
96
-
$ make
99
+
$ make sdk
97
100
```
98
-
You can find the tools and libraries generated in the `build/linux` directory.
99
-
**Note**: You can also go to the `sdk` folder and use the `make` command to build the Intel(R) SGX SDK component only. However, building the PSW component is dependent on the result of building the Intel(R) SGX SDK.
101
+
You can find the tools and libraries generated in the `build/linux` directory.
102
+
**Note**: You can also go to the `sdk` folder and use the `make` command to build the Intel(R) SGX SDK component only.
100
103
101
104
- This repository supports to build the Intel(R) SGX SDK based on either precompiled optimized IPP/string/math libraries or open sourced version of SGXSSL/string/math libraries.
102
105
The default build uses precompiled optimized libraries, which are downloaded by the script ``./download_prebuilt.sh``.
103
106
You can also use the open sourced version implementation instead by entering the following command:
104
107
```
105
-
$ make USE_OPT_LIBS=0
108
+
$ make sdk USE_OPT_LIBS=0
106
109
```
107
-
**Note**: Building the Intel(R) SGX PSW with open sourced SGXSSL/string/math libraries is not supported. The above command builds Intel(R) SGX SDK only and the build of PSW part will be skipped.
110
+
**Note**: Building the Intel(R) SGX PSW with open sourced SGXSSL/string/math libraries is not supported.
108
111
109
-
- To build Intel(R) SGX SDK and PSW with debug information, enter the following command:
112
+
- To build Intel(R) SGX SDK with debug information, enter the following command:
110
113
```
111
-
$ make DEBUG=1
114
+
$ make sdk DEBUG=1
112
115
```
113
-
- To clean the files generated by previous `make` command, enter the following command:
116
+
- To clean the files generated by previous `make sdk` command, enter the following command:
114
117
```
115
118
$ make clean
116
119
```
117
-
118
-
- The build above uses prebuilt Intel(R) Architecture Enclaves(LE/PvE/QE/PCE/PSE-OP/PSE-PR) and applet(PSDA) - the files ``psw/ae/data/prebuilt/libsgx_*.signed.so`` and ``psw/ae/data/prebuilt/PSDA.dalp``, which have been signed by Intel in advance.
119
-
To build those enclaves by yourself (without a signature), first you need to build both Intel(R) SGX SDK and PSW with the default configuration. After that, you can build each Architecture Enclave by using the `make` command from the corresponding folder:
120
-
```
121
-
$ cd psw/ae/le
122
-
$ make
123
-
```
124
-
125
-
### Build the Intel(R) SGX SDK Installer
126
-
To build the Intel(R) SGX SDK installer, enter the following command:
120
+
- To build the Intel(R) SGX SDK installer, enter the following command:
127
121
```
128
122
$ make sdk_install_pkg
129
123
```
@@ -134,10 +128,30 @@ You can find the generated Intel(R) SGX SDK installer ``sgx_linux_x64_sdk_${vers
134
128
$ make sdk_install_pkg DEBUG=1
135
129
```
136
130
137
-
### Build the Intel(R) SGX PSW Installer
138
-
To build the Intel(R) SGX PSW installer, enter the following command:
139
-
- On Ubuntu 16.04 and Ubuntu 18.04:
140
-
```
131
+
### Build the Intel(R) SGX PSW and Intel(R) SGX PSW Installer
132
+
- To build Intel(R) SGX PSW with default configuration, enter the following command:
133
+
```
134
+
$ make psw
135
+
```
136
+
You can find the tools and libraries generated in the `build/linux` directory.
137
+
**Note**: You can also go to the `psw` folder and use the `make` command to build the Intel(R) SGX PSW component only.
138
+
- To build Intel(R) SGX PSW with debug information, enter the following command:
139
+
```
140
+
$ make psw DEBUG=1
141
+
```
142
+
- To clean the files generated by previous `make psw` command, enter the following command:
143
+
```
144
+
$ make clean
145
+
```
146
+
- The build above uses prebuilt Intel(R) Architecture Enclaves(LE/PvE/QE/PCE/PSE-OP/PSE-PR) and applet(PSDA) - the files ``psw/ae/data/prebuilt/libsgx_*.signed.so`` and ``psw/ae/data/prebuilt/PSDA.dalp``, which have been signed by Intel in advance.
147
+
To build those enclaves by yourself (without a signature), first you need to install latest Intel(R) SGX SDK from the [Intel(R) SGX SDK](https://software.intel.com/en-us/sgx-sdk/download) and then build PSW with the default configuration. After that, you can build each Architecture Enclave by using the `make` command from the corresponding folder:
148
+
```
149
+
$ cd psw/ae/le
150
+
$ make
151
+
```
152
+
- To build the Intel(R) SGX PSW installer, enter the following command:
153
+
* On Ubuntu 16.04 and Ubuntu 18.04:
154
+
```
141
155
$ make deb_pkg
142
156
```
143
157
You can find the generated Intel(R) SGX PSW installer ``libsgx-urts_${version}-${revision}_amd64.deb`` and ``libsgx-enclave-common_${version}-${revision}_amd64.deb`` located under `linux/installer/deb`, where `${version}` refers to the version number and the `${revision}` refers to the revision number of the package.
@@ -149,9 +163,9 @@ To build the Intel(R) SGX PSW installer, enter the following command:
149
163
```
150
164
$ make deb_pkg DEBUG=1
151
165
```
152
-
-On Red Hat Enterprise Linux 7.4, Red Hat Enterprise Linux 7.6 and CentOS 7.5:
153
-
- On Fedora 27:
154
-
- On SUSE Linux Enterprise Server 12:
166
+
* On Red Hat Enterprise Linux 7.4, Red Hat Enterprise Linux 8.0 and CentOS 7.5:
167
+
* On Fedora 27:
168
+
* On SUSE Linux Enterprise Server 12:
155
169
```
156
170
$ make psw_install_pkg
157
171
```
@@ -161,8 +175,8 @@ To build the Intel(R) SGX PSW installer, enter the following command:
161
175
```
162
176
$ make psw_install_pkg DEBUG=1
163
177
```
164
-
To build the Intel(R) SGX PSW development installer separately, enter the following command:
165
-
- On Ubuntu 16.04 and Ubuntu 18.04:
178
+
- To build the Intel(R) SGX PSW development installer separately, enter the following command:
179
+
* On Ubuntu 16.04 and Ubuntu 18.04:
166
180
```
167
181
$ make deb_sgx_enclave_common_dev_pkg
168
182
```
@@ -177,7 +191,7 @@ Install the Intel(R) SGX SDK
177
191
* Ubuntu\* 18.04 LTS Desktop 64bits
178
192
* Ubuntu\* 18.04 LTS Server 64bits
179
193
* Red Hat Enterprise Linux Server release 7.4 64bits
180
-
* Red Hat Enterprise Linux Server release 7.6 64bits
194
+
* Red Hat Enterprise Linux Server release 8.0 64bits
181
195
* CentOS 7.5 64bits
182
196
* Fedora 27 Server 64bits
183
197
* SUSE Linux Enterprise Server 12 64bits
@@ -186,7 +200,7 @@ Install the Intel(R) SGX SDK
186
200
```
187
201
$ sudo apt-get install build-essential python
188
202
```
189
-
* On Red Hat Enterprise Linux 7.4, Red Hat Enterprise Linux 7.6 and CentOS 7.5:
203
+
* On Red Hat Enterprise Linux 7.4, Red Hat Enterprise Linux 8.0 and CentOS 7.5:
190
204
```
191
205
$ sudo yum groupinstall 'Development Tools'
192
206
$ sudo yum install python
@@ -243,7 +257,7 @@ Install the Intel(R) SGX PSW
243
257
* Ubuntu\* 18.04 LTS Desktop 64bits
244
258
* Ubuntu\* 18.04 LTS Server 64bits
245
259
* Red Hat Enterprise Linux Server release 7.4 64bits
246
-
* Red Hat Enterprise Linux Server release 7.6 64bits
260
+
* Red Hat Enterprise Linux Server release 8.0 64bits
- On Red Hat Enterprise Linux 7.4, Red Hat Enterprise Linux 7.6 and CentOS 7.5:
294
+
- On Red Hat Enterprise Linux 7.4, Red Hat Enterprise Linux 8.0 and CentOS 7.5:
281
295
- On Fedora 27:
282
296
- On SUSE Linux Enterprise Server 12:
283
297
```
284
298
$ cd linux/installer/bin
285
299
$ sudo ./sgx_linux_x64_psw_${version}.bin
286
300
```
287
301
### ECDSA attestation
288
-
To enable ECDSA attestation
302
+
To enable ECDSA attestation
289
303
- Ensure that you have the following required hardware:
290
304
* 8th Generation Intel(R) Core(TM) Processor or newer with **Flexible Launch Control** support*
291
305
* Intel(R) Atom(TM) Processor with **Flexible Launch Control** support*
292
-
- To use ECDSA attestation, you must install Intel(R) Software Guard Extensions Driver for Data Center Attestation Primitives (Intel(R) SGX DCAP). Please follow the [Intel® SGX DCAP Installation Guide for Linux* OS](https://download.01.org/intel-sgx/latest/dcap-latest/linux/docs/Intel_SGX_DCAP_Linux_SW_Installation_Guide.pdf), section “Intel® SGX Driver”, to install the Intel(R) SGX DCAP driver.
293
-
**NOTE**: If you have already installed Intel(R) SGX driver without ECDSA attestation, please uninstall the driver firstly. Otherwise the newly installed ECDSA attestation enabled Intel(R) SGX driver will be unworkable.
306
+
- To use ECDSA attestation, you must install Intel(R) Software Guard Extensions Driver for Data Center Attestation Primitives (Intel(R) SGX DCAP).
307
+
Please follow the [Intel(R) SGX DCAP Installation Guide for Linux* OS](https://download.01.org/intel-sgx/latest/dcap-latest/linux/docs/Intel_SGX_DCAP_Linux_SW_Installation_Guide.pdf) to install the Intel(R) SGX DCAP driver.
308
+
309
+
**NOTE**: If you had already installed Intel(R) SGX driver without ECDSA attestation, please uninstall the driver firstly and then install the Intel(R) SGX DCAP driver. Otherwise the newly installed Intel(R) SGX DCAP driver will be unworkable.
294
310
295
311
- Install PCK Caching Service. For how to install and configure PCK Caching
296
312
Service, please refer to [SGXDataCenterAttestationPrimitives](https://github.com/intel/SGXDataCenterAttestationPrimitives/tree/master/QuoteGeneration/pccs)
297
-
- Ensure the PCK Caching Service is setup correctly by local administrator
298
-
or data center administrator. Also make sure that the configure file of
299
-
quote provider library (/etc/sgx_default_qcnl.conf) needs to be consistent
- Ensure the PCK Caching Service is setup correctly by local administrator or data center administrator. Also make sure that the configure file of quote provider library (/etc/sgx_default_qcnl.conf) is consistent with the real environment, for example: PCS_URL=https://your_pcs_server:8081/sgx/certification/v1/
302
314
303
315
### Start or Stop aesmd Service
304
316
The Intel(R) SGX PSW installer installs an aesmd service in your machine, which is running in a special linux account `aesmd`.
0 commit comments