Secrets required to bootstrap a node #4131
-
I tried and failed to find the code that allows a newly bootstrapped node to obtain the "root" signing and encryption keys it needs in order to participate in the consortium and to decrypt its confidential tables. |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
The different keys CCF uses are documented under https://microsoft.github.io/CCF/main/architecture/cryptography.html Network bootstrapping is covered under https://microsoft.github.io/CCF/main/operations/start_network.html for the operational part, and https://microsoft.github.io/CCF/main/governance/open_network.html for the governance part. Similarly, DR operation: https://microsoft.github.io/CCF/main/operations/recovery.html and governance: https://microsoft.github.io/CCF/main/governance/accept_recovery.html CCF does not use SGX key sealing, precisely for the reason you point out. Instead a wrapper key is created, used the encrypt the ledger secrets, and split among members (see the first link for details). The endpoint that's called by a new node joining is |
Beta Was this translation helpful? Give feedback.
The different keys CCF uses are documented under https://microsoft.github.io/CCF/main/architecture/cryptography.html
Network bootstrapping is covered under https://microsoft.github.io/CCF/main/operations/start_network.html for the operational part, and https://microsoft.github.io/CCF/main/governance/open_network.html for the governance part.
Similarly, DR operation: https://microsoft.github.io/CCF/main/operations/recovery.html and governance: https://microsoft.github.io/CCF/main/governance/accept_recovery.html
CCF does not use SGX key sealing, precisely for the reason you point out. Instead a wrapper key is created, used the encrypt the ledger secrets, and split among members (see the fir…