Initializing a proof of stake blockchain is a high risk moment in the chain life cycle.
The purpose of the StarFish tool is to allow Cosmos community members who control an address in the recommended genesis allocation to declare and bond validators.
The finally genesis state of the network should include all valid candidacy with. 2/3 +1 of the top 100 validators sorted by bond need to come online to start the network. We ask that any community member who wants to participate be available to start their equipment within 12 hours of publication of the genesis state.
We also ask that community members who participate optionally broadcast their intentions and the tx id of their genesis bonding via twitter or some other broadcast to provide additional accountability to the ICF.
StarFish should be a deployed as interactive workflow based command line tool.
The StartFish tool takes the following inputs
- A bitcoin or Ethereum full node or the ICF recommended allocation
- The number of atoms a user wish to bond
- The cosmosvalpub bech32 encoded key of the users validator
- Moniker, website, key base id of the validator
- This will generate a json encoded message that be put in genesis.json, a signature and pubkey for the account.
When we init state we need to require the signatures be verified.
I would expect 3-5% of stake be bonded during this process. No delegation will be accepted via starfish just self bonds.
Could this be implemented in
gaiacli
orgaiad
? Would remove an input and could be placed in already existing commands likegaiad init starfish
.