6 ms·
Surely I'm reading this wrong. Does the whole thing depend on users trusting that the nodes run the correct software, which uses these "enclaves" to hide privat
by orblivion 9y ago
Surely I'm reading this wrong. Does the whole thing depend on users trusting that the nodes run the correct software, which uses these "enclaves" to hide private data from itself?
- wmf 9y agoThe nodes can prove that they are running the correct software using SGX.
- kbwt 9y agoIf you trust Intel. In that case, why not use a centralized ledger operated by Intel? It would certainly be more efficient, and no less trust-worthy. You even eliminate a whole bunch of side-channel attack vectors on the MobileCoin software such as memory access patterns, heat dissipation patterns, timing analysis, and failure modes such as total compromise of SGX.
- orblivion 9y agoI'm not sure what this means. Supposing I'm a node that runs the correct software as well as some incorrect software. I prove (however this works) using SGX that I'm running the correct software. You send me the data and I run it through the incorrect software. I imagine my ignorance of SGX has something to do with this. Is there a 101 link somewhere?
- betterunix2 9y agoOne approach: use attestation to prove that a public key was created inside an SGX "enclave". Encrypt the inputs using the public key, and now only the enclave can decrypt and use the inputs.
- mike_hearn 9y agoAs betterunix says, the way you do it is that the signed data structure proving what software you're running can contain a public key, for which the private key exists only in the enclave. So you can then encrypt secrets that are readable only in the enclave.