I'm trying to implement a PoS network on substrate using substrate provided pallets - pallet_session
, pallet_staking
, pallet_babe
, etc. The current Runtime and chain spec implementation is similar to what is found in the substrate repository.
I've realized that I need to set Session keys for GenesisConfig
before starting the blockchain. I also noticed that the Session keys set for SessionConfig
are used to configure the grandpa authorities.
My questions are:
Is there a way to start the blockchain such that no session keys are set?
Do all grandpa
authorities need to be hardcoded in the chain spec? If not, how are the authorities added after nodes have gone live?