3 ms·
Newer versions of SGX include the "Flexible Launch Control" feature, which allows you to control the SGXLEPUBKEYHASH setting on the CPU. This contains the hash
by aseipp 8y ago
Newer versions of SGX include the "Flexible Launch Control" feature, which allows you to control the SGXLEPUBKEYHASH setting on the CPU. This contains the hash of the public key that the "launch enclave" for SGX must be signed with, which further grants tokens that can be used to launch subsequent enclaves (AFAIU). Control of the launch enclave key has been the main source of contention over SGX, as far as I can tell, since you currently have to enter into negotiations with Intel to get your enclave signed by their key.
Based on some posts from Andy Lutomirski on LKML, it seems highly unlikely that any SGX support will go upstream in Linux until Flexible Launch Control is available in consumer SKUs, at least.[1] In fact, I looked up the latest patches posted just a few days ago, which "Removed in-kernel LE i.e. this version of the SGX software stack only supports unlocked IA32_SGXLEPUBKEYHASHx MSRs."[2]
"SGXv2" with FLC is allegedly available in some SKUs right now (based on some googling[3]), but Intel hasn't been very forthcoming on exactly which ones those are, or even what the major differences between v2 and v1 are, besides FLC...
[1] https://lkml.org/lkml/2017/3/8/605 https://lkml.org/lkml/2017/3/8/605
[2] https://lore.kernel.org/lkml/20180703182118.15024-1-jarkko.sakkinen@linux.intel.com/ https://lore.kernel.org/lkml/20180703182118.15024-1-jarkko.s...
[3] https://communities.intel.com/thread/124490 https://communities.intel.com/thread/124490
- pjmlp 8y agoThe EnclaveDB paper bibliography has a few references about SGX based containers on Linux.