▲ | sxzygz 12 hours ago | |||||||
On AWS, if I run my software (some VM image), what guarantee is there that you are indeed running the image I provided to you? And, if is an approved image, what guarantee is there that image being run is the one publicly disclosed? | ||||||||
▲ | QuinnyPig 11 hours ago | parent | next [-] | |||||||
At some point it does come down to "we have to trust the provider isn't outright lying to us about what they're doing." That was a hard bridge for me to cross for a long time; I got there via sustained in-depth conversations with folks there who simply wouldn't stand for something that breathtakingly opposed to everything AWS has strived to achieve from a trust perspective, that they'd sooner tear it all down than implement such a thing. Some folks can't get there, and that's okay; if you don't have that level of trust, perhaps the cloud is not a fit for all of your workloads. | ||||||||
| ||||||||
▲ | crote 9 hours ago | parent | prev | next [-] | |||||||
If I understand correctly, it basically works the same as Trusted Boot on a local machine, with the host's CPU used as the root of trust. The difference is that the CPU creates multiple completely independent environments, with for example independent memory encryption keys. Once you've got that, it's the usual TPM dance: each phase of the boot process verifies the next step and "ratchets" the TPM forward. The final OS uses the TPM's attestation to prove the TPM is genuine and not emulated, and the TPM's final state is used to prove it's running a genuine image booted through the proper process. AMD had a whole bunch of SEV extensions for stuff like this. I reckon Intel isn't any different. | ||||||||
▲ | everfrustrated 11 hours ago | parent | prev [-] | |||||||
It's less about being able to prove to yourself and more about being able to prove to _other_ people. |