I may not fully understand the genesis file.
- Why is there a nonce and mixHash value in the file if nothing is being mined?
- It was my impression the genesis file is used to bootstrap block 0, then that's it. If that's the case, why does these values exist at all?
- Where can I find the mainnet genesis file in geth? What is the filepath?
So it's to make block 0 look like any other block, because it needs those values just like any other block does? If that's the case, then there's no validation that those values actually work in terms of the Ethash algorithm, right? It seems you can put anything there.
– AlwaysQuestioning Jan 28 '18 at 14:00alloc {}section, how does my chain know what transactions take place in block 0? This is important: Does the mainnet genesis.json have the alloc {} section filled out, and it matches exactly the genesis transactions shown on block 0 of Ethereum? – AlwaysQuestioning Jan 28 '18 at 14:03