Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PoS validator consensus key change #36

Closed
Tracked by #2006
tzemanovic opened this issue Nov 8, 2021 · 6 comments · Fixed by #2137
Closed
Tracked by #2006

PoS validator consensus key change #36

tzemanovic opened this issue Nov 8, 2021 · 6 comments · Fixed by #2137
Assignees
Milestone

Comments

@tzemanovic
Copy link
Member

tzemanovic commented Nov 8, 2021

Add a tx and update PoS validity predicate to allow validators to change consensus key

NOTE: how do we update this in tendermint? We currently using the key file on disk. The key change on-chain will happen in a future epoch, so we'd need to update the file at the right time.

┆Issue is synchronized with this Asana task by Unito

@tzemanovic
Copy link
Member Author

NOTE: how do we update this in tendermint? We currently using the key file on disk. The key change on-chain will happen in a future epoch, so we'd need to update the file at the right time.

We can most likely use the same approach that is being developed for DKG integration, in which validators can change their PVSS public keys and the node waits for the txs to be applied before updating to the new key.

Additionally, we'll probably need to restart Tendermint after we update the priv_validator_key.json (I'm not sure if restarting it will be necessary with tendermint KMS).

@cwgoes
Copy link
Contributor

cwgoes commented Jan 12, 2023

@tzemanovic @brentstone do you know the status of this? we do need key rotation for mainnet. also, validators should be able to control this with their multisignature accounts.

@tzemanovic
Copy link
Member Author

@tzemanovic @brentstone do you know the status of this? we do need key rotation for mainnet. also, validators should be able to control this with their multisignature accounts.

we don't have this - I think changing consensus key itself should be pretty straight-forward, restarting tendermint at the right time might be finicky, but hopefully we can automate it

@cwgoes
Copy link
Contributor

cwgoes commented Jan 15, 2023

We shouldn't need to restart Tendermint at all - just pass a different key in the validator set changes.

@tzemanovic
Copy link
Member Author

We shouldn't need to restart Tendermint at all - just pass a different key in the validator set changes.

I'm not sure how this will work with KSM (#67), but without it, the consensus key is in a file in tendermint's dir. Because of the pipeline offset used when you change your consensus key, we need to switch the key in at the right time and I think this does necessitate TM restart, but I'm not 100% sure about it

@cwgoes
Copy link
Contributor

cwgoes commented Jan 16, 2023

Ah, I see - having the validator who is changing their key restart Tendermint makes sense, yeah. This can even be manual, though, we don't need to do it automatically. Usually keys will be rotated when a validator loses their key / thinks it might be compromised / etc.

@cwgoes cwgoes added this to the 0.15 milestone Jan 16, 2023
phy-chain pushed a commit to phy-chain/namada that referenced this issue Mar 1, 2024
* Add some unit tests to shielded account actions
* Configure to run in CI
* Adjusted a failing test to reflect a change in a dependency
* Removed a hard-coded value that was used during debugging
* Adjusted setting of the state based on the change in the type of actions result
* Changed the faulty test file name based on PR review
* removed unnecessary import
* Investigating a weird issue where the paths resolve locally but not in CI
* corrected the paths after renaming
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
No open projects
Status: Tested in Devnet
Development

Successfully merging a pull request may close this issue.

4 participants