Open drewstone opened 2 years ago
@drewstone can you please provide more details here.
Bootstrapping off of the session change mechanism, we currently expect the queued
authorities to run the DKG. Here, we similarly may expect the queued
authorities to run the DKR. To this end, we need to identify what is necessary for running the DKG.
Overview
We want to implement a key rotation using a distributed key refresh protocol wherein the group keypair remains the same.
Currently in the DKG, we re-run the protocol entirely and sign the new key with the active key, eventually rotating this if the signature is valid and verifies on-chain.
Checklist
Research
https://github.com/ZenGo-X/fs-dkr
Examples
https://github.com/ing-bank/threshold-signatures/blob/master/src/ecdsa/resharing.rs
Questions/Issues
The security assumptions and implementations do change ofc. These protocols usually can't guarantee that parties have thrown away their old keys. This does diminish over time but it does allow for different adversaries to tamper with the network in different models.