Intel® Software Guard Extensions SDK Installation Guide

Published:09/04/2016   Last Updated:06/15/2017

Intel® Software Guard Extensions (Intel® SGX) is an Intel technology for application developers seeking to protect select code and data from disclosure or modification. Intel® SGX makes such protections possible through the use of enclaves. Enclaves are protected areas of execution. Application code can be put into an enclave through special instructions and software made available to developers by the Intel® SGX SDK.

Revision History

Revision Number Description Revision Date
1.1 Intel® SGX Win 1.1 release September 2015
1.6 Intel® SGX Win 1.6 release May 2016
1.7 Intel® SGX Win 1.7 release November 2016
1.8 Intel® SGX Win 1.8 release June 2017

Intel® Software Guard Extensions SDK and Platform Software Installation

This document provides the instructions on how to install Intel® Software Guard Extensions SDK and platform software. You can see the details in the following topics:

  • Install Intel® SGX SDK
  • Install Intel® SGX Platform Software

Install Intel® SGX SDK

Prerequisites

The Intel® Software Guard Extensions SDK package includes components to develop SGX applications. The main components include:

Trusted libraries, including standard C library, C++ runtime support, C++ STL, C++11, and so on.

Development tools including Edger8r application, signing tool, add-ins and wizards for Microsoft Visual Studio* 2013 IDE and Microsoft Visual Studio* 2015 IDE, and EPC measurement tool.

Sample Projects

The installer only installs the add-in and wizard for Microsoft Visual Studio* 2013 IDE and/or Microsoft Visual Studio* 2015 IDE if those applications have been installed on the platform.

Install

To install the Intel® Software Guard Extensions SDK, run Intel(R)_SGX_Windows_SDK_<version>.exe and follow the instructions.

Command Line Options

Usage: Intel(R)_SGX_Windows_SDK_<version>.exe --a [<command>] [arguments...]

command

install - install the product

remove - remove the product

repair - repair existing installation

modify - modify existing installation

arguments (mandatory)

--output=<file> [command: all] - specify a file where the output will be redirected

--eula={accept|reject} [command: install] - accept or reject the End User License Agreement (EULA); you should explicitly accept the EULA to proceed with the installation

arguments (optional) none

When you complete the installation, you should be able to see the item Intel® Software Guard Extensions SDK for Windows* in the Control Panel\Programs\Programs and Features list.

Uninstall/Update

To uninstall/update the Intel® Software Guard Extensions SDK, run Intel(R)_SGX_Windows_SDK_<version>.exe, and select one option from the following actions listed on the welcome page.

  1. Modify – Change installed features or feature settings.
  2. Repair – Fix missing or corrupted files, shortcuts, and/or registry entries.
  3. Remove – Remove Intel® Software Guard Extensions SDK from the platform.

Install Intel® SGX Platform Software

Prerequisites

Before installing the Intel® Software Guard Extensions platform software, ensure that the following environment has been set up properly:

  1. Intel® Software Guard Extensions supported machine
  2. Administrator privilege
  3. You need administrator privileges to run the installer

Note: You can’t install Intel® SGX PSW installer when Windows OS is installed in Legacy mode and Intel® SGX is configured as “Software Controlled” in BIOS. You need to configure Intel® SGX as “Enabled” in BIOS before installing Intel® SGX PSW.

Additional Dependencies

To use Intel® SGX platform service, you need to install a full set of Intel® Management Engine (Intel® ME) software components, which includes Intel® Dynamic Application Loader Host Interface Service (Intel® DAL Host Interface Service). If you install Intel® ME driver only, Intel® SGX platform service is not available.

Typically, the Intel DAL stack and Intel ME stack are pre-installed with other Intel software on a platform. However, if you receive an error that Intel SGX platform service is unavailable, install the appropriate Intel DAL stack and/or Intel ME stack.

Installation

To install the Intel® Software Guard Extensions Platform Software, run Intel(R)_SGX_Windows_x64_PSW_<version>.exe with Administrator privileges and follow the instructions.

Command Line Options

Usage: Intel(R)_SGX_Windows_x64_PSW_<version>.exe --a [<command>] [arguments...]

command

install - install the product

remove - remove the product

repair - repair existing installation

modify - modify existing installation

arguments (mandatory)

--output=<file> [command: all] - specify a file where the output will be redirected

--eula={accept|reject} [command: install] - accept or reject the End User License Agreement (EULA); you should explicitly accept the EULA to proceed with the installation

arguments (optional)

--extractdriver=<path> [command: install] - specify a location for extracted Intel SGX drivers from the Intel SGX PSW installer

--freshinstall [command: install] - uninstall the existing Intel SGX PSW installer and install a new one

--driveronly [command:install] - install only the Intel SGX driver

--applicationonly [command:install] - install only the Intel SGX AESM service

--force-install [command:install] - skip platform compatibility check

Silent Install

SGX_PSW.exe --s --a install --output=c:\log.txt --eula=accept --no-progress

After you complete the installation, you should be able to see the item Intel® Software Guard Extensions Platform Software in the Control Panel\Programs\Programs and Features list.

Uninstall/Update

To uninstall/update the Intel(R) Software Guard Extensions Platform Software, run Intel(R)_SGX_Windows_x64_PSW_<version>.exe, and select one option from the following actions listed on the welcome page.

  • Modify - Change installed features or feature settings.
  • Repair – Fix missing or corrupted files, shortcuts, and/or registry entries.
  • Remove – Remove Intel® Software Guard Extensions Platform Software from the platform.

Note: The Intel SGX PSW installer does not uninstall the Intel SGX device driver after the uninstallation of the platform software. Subsequent installations of the Intel SGX PSW will update the driver to a newer version only (no downgrade is allowed).

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804