Hi!
We’re pretty close to finalizing our encryption protocol:
# Implementing the Secret in Contracts
:warning: This is a very advanced WIP.
- [Implementing the Secret in Contracts](#implementing-the-secret-in-contracts)
- [Bootstrap Process](#bootstrap-process)
- [`consensus_seed`](#consensus_seed)
- [Key Derivation](#key-derivation)
- [`consensus_seed_exchange_privkey`](#consensus_seed_exchange_privkey)
- [`consensus_io_exchange_privkey`](#consensus_io_exchange_privkey)
- [`consensus_state_ikm`](#consensus_state_ikm)
- [`consensus_state_iv`](#consensus_state_iv)
- [Bootstrap Process Epilogue](#bootstrap-process-epilogue)
- [Node Startup](#node-startup)
- [New Node Registration](#new-node-registration)
- [On the new node](#on-the-new-node)
- [On the consensus layer, inside the Enclave of every full node](#on-the-consensus-layer-inside-the-enclave-of-every-full-node)
- [`seed_exchange_key`](#seed_exchange_key)
- [Sharing `consensus_seed` with the new node](#sharing-consensus_seed-with-the-new-node)
- [Back on the new node, inside its Enclave](#back-on-the-new-node-inside-its-enclave)
This file has been truncated. show original
This^ document includes:
Bootstrapping the network
Registration of new nodes
Contracts state encryption
Contracts inputs and outputs encryption
Still not finished:
How network upgrades can occur without losing state and tx input/output history.
How to generate contract_id
in a trusted way, to prevent two contracts having the same encryption key (this section ).
We’d love to get your feedback on this!
So please ask us hard questions, including about all of the “TODO reasoning” and about attack vectors.
List of previous discussions: https://github.com/enigmampc/EnigmaBlockchain#implementation-discussions
6 Likes
guy
May 25, 2020, 1:34pm
2
All,
This is meaningful update to our earlier posts (1 , 2 ). As expected, as we went deeper into the details there were quite a few small tweaks and changes to be made.
The general ideas are still the same. These are mostly finer implementation details but as spec goes - this is where people should look at.
Thanks @assafmo , @reuven , @toml and others for helping in finding solutions through our internal discussions. We welcome any outside feedback and issues that are raised.
3 Likes