What does HN say? Do we trust Intel (motivation and implementation) that much?
What does HN say? Do we trust Intel (motivation and implementation) that much?
Intel's implementation is considerably worse than that. Even if you assume the hardware itself isn't compromised, every remote attestation has to go through the "Intel Attestation Service" which has no end-to-end protection. The IAS is what actually validates the enclave's signature, and it returns a "success" or "failure" message which is signed with an Intel key. But there's absolutely no technical measure that prevents Intel from being compelled to sign a falsified response; a client would have no way of telling the difference.
This is documented by Intel [1] and I'm hardly the first to notice it [2] but people still seem to talk about SGX as if compromising it is equivalent to backdooring the CPU, which is inaccurate.
[1]: https://software.intel.com/en-us/articles/intel-software-gua...
[2]: https://www.blackhat.com/docs/us-17/thursday/us-17-Swami-SGX...
It's also worth noting that SGX can run in two modes. There's "debug mode", which provides absolutely no security because a debugger has complete access to the state of the enclave. And then there's "release mode", which requires a key that you can only obtain by signing a commercial agreement and NDA with Intel.
That's shady af.
I've met some of the people working on this at Intel and I do have confidence that this isn't some conspiracy, I do think they have the intention of improving the crypto space with projects like this.
https://developer.amd.com/amd-secure-memory-encryption-sme-a...
Adapt or die
Moxie has good ideas, but SGX is a trap and he fell into it.