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

network init: Verify no gentx are present in the initial genesis #2044

Closed
lumtis opened this issue Jan 31, 2022 · 5 comments · Fixed by #2646
Closed

network init: Verify no gentx are present in the initial genesis #2044

lumtis opened this issue Jan 31, 2022 · 5 comments · Fixed by #2646
Assignees
Milestone

Comments

@lumtis
Copy link
Contributor

lumtis commented Jan 31, 2022

Is your feature request related to a problem? Please describe.

Gentx must be forbidden in the initial genesis of the chain (given from URL for example). All the validators of the chain must go through the request for Genesis Validator because the on-chain data like consensus public key and self delegation are used to enable a verified IBC connection

Describe the solution you'd like

The initial genesis is generated from the initGenesis method in networkchain. checkGenesis verify that the validator-genesis command passes. We must add the check that no gentx is present in the initial genesis

@ilgooz
Copy link
Member

ilgooz commented Apr 13, 2022

@lubtd @fadeev, thinking about the Crescent example, are you sure that we want to have this kind of a behavior?

@fadeev
Copy link
Contributor

fadeev commented Apr 13, 2022

This behavior certainly requires everyone to use the Ignite CLI to apply to become a validator, but I don't see this as being particularly problematic.

@lumtis
Copy link
Contributor Author

lumtis commented Apr 13, 2022

This is a strict requirement for Incentivized Testnets otherwise IBC connection for monitoring can be impossible or can be gamed. I specified in Genesis Generation Specification that it is a requirement for Incentivized Testnet.

But there is no issue for other chains as long as the validators have the balances

It's possible I didn't make the precision in the issue for simplicity but if there is usage where validators are directly in the custom genesis then it's a behavior that we could authorize for non-incentivized chains

@ilgooz
Copy link
Member

ilgooz commented Apr 13, 2022

Then let's make it strict now by requiring no gentxs as proposed and if there is use case for the other scenario we can introduce it later.

@lumtis
Copy link
Contributor Author

lumtis commented May 11, 2022

This behavior certainly requires everyone to use the Ignite CLI to apply to become a validator, but I don't see this as being particularly problematic.

The validator can also send the gentx to the coordinator and the coordinator add the gentx. The sender of the request doesn't need to be the validator

@lumtis lumtis assigned lumtis and unassigned Pantani Jul 19, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment