Description
Summary
This is a feature request to introduce a replacement mechanism for validator operator keys.
It seems like a sensible place to introduce this would be in the "edit validator" code paths.
Problem Definition
With the fairly recent introduction of multisig it seems likely that validators will want to strengthen their security post launch, which will require the ability to replace the valoper key.
If a valoper key compromise is suspected it also makes sense to replace it.
Proposal
From a validator perspective it should be as simple as:
gaiacli edit-validator ... --from <existing key> --next-from <new key>
TX should be signed by the existing key and, for bonus points and to reduce risk, could required a signature with the new key as well.
Replacement should only be allowed if the new valoper account adheres to the minimum self bond.
Couple of ideas to solve scenario where validator can't finance 2 x min-self-bond:
- Respect a send message that happens in same TX, which moves >= min-self-bond from old account to new (my personal preference)
- Introduce explicit TX type (so not edit-validator) for this, which includes the logic to sufficiently fund the new account to level of min-self-bond.
For Admin Use
- Not duplicate issue
- Appropriate labels applied
- Appropriate contributors tagged
- Contributor assigned/self-assigned
Metadata
Assignees
Labels
Type
Projects
Status
🥳 Done