Konubinix' opinionated web of thoughts

Sgx Dcap Out-of-Tree Driver

Fleeting

sgx dcap out-of-tree driver

The SGXDataCenterAttestationPrimitives project maintains an out-of-tree driver for the Linux* Intel(R) SGX software stack, which will be used until the driver upstreaming process is complete. It is used on the platforms with Flexible Launch Control and Intel(R) AES New Instructions support and could support both Elliptic Curve Digital Signature algorithm (ECDSA) based attestation and Enhanced Privacy Identification (EPID) based attestation.

The linux-sgx-driver project hosts the other out-of-tree driver for the Linux* Intel(R) SGX software stack, which will be used until the driver upstreaming process is complete. It is used to support Enhanced Privacy Identification (EPID) based attestation on the platforms without Flexible Launch Control.

https://github.com/intel/linux-sgx

Intel(R) SGX driver package is for Intel(R) SGX DCAP and is derived from the upstream version of the SGX driver

https://github.com/intel/SGXDataCenterAttestationPrimitives/tree/master/driver/linux

Ensure that you have the following required hardware:

  • 8th Generation Intel(R) Core(TM) Processor or newer with Flexible Launch Control and Intel(R) AES New Instructions support*
  • Intel(R) Atom(TM) Processor with Flexible Launch Control and Intel(R) AES New Instructions support*

https://github.com/intel/SGXDataCenterAttestationPrimitives/tree/master/driver/linux

Note: Refer to the “Intel® SGX Resource Enumeration Leaves” section in the Intel SGX Programming reference guide to make sure your cpu has the SGX feature

https://github.com/intel/SGXDataCenterAttestationPrimitives/tree/master/driver/linux

This table lists the equivalent upstream kernel patch for each version of the driver and summarizes compatibility between driver versions and PSW releases.

Driver version Equivalent kernel patch PSW 2.7 PSW 2.8 PSW 2.9/2.9.1 PSW 2.10-2.12 PSW 2.13
1.21 N/A YES YES YES YES YES
1.22 V14(approximate) NO YES YES YES YES
1.32/1.33 V28 NO NO* YES YES YES
1.34 V29 NO NO NO YES YES
1.35 V32 NO NO NO YES YES
1.36 V36 NO NO NO YES YES
1.41 V41 NO NO NO YES* YES

https://github.com/intel/SGXDataCenterAttestationPrimitives/tree/master/driver/linux

Notes pointant ici