0

When I query the genesis block I get this:

AttributeDict({'difficulty': 17179869184, 'extraData': HexBytes('0x11bbe8db4e347b4e8c937c1c8370e4b5ed33adb3db69cbdb7a38e1e50b1b82fa'), 'gasLimit': 5000, 'gasUsed': 0, 'hash': HexBytes('0xd4e56740f876aef8c010b86a40d5f56745a118d0906a34e69aec8c0db1cb8fa3'), 'logsBloom': HexBytes('0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'), 'miner': '0x0000000000000000000000000000000000000000', 'mixHash': HexBytes('0x0000000000000000000000000000000000000000000000000000000000000000'), 'nonce': HexBytes('0x0000000000000042'), 'number': 0, 'parentHash': HexBytes('0x0000000000000000000000000000000000000000000000000000000000000000'), 'receiptsRoot': HexBytes('0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421'), 'sha3Uncles': HexBytes('0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347'), 'size': 540, 'stateRoot': HexBytes('0xd7f8974fb5ac78d9ac099b9ad5018bedc2ce0a72dad1827a1709da30580f0544'), 'timestamp': 0, 'totalDifficulty': 17179869184, 
'transactions': [],
 'transactionsRoot': HexBytes('0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421'), 'uncles': []})

(spaced to show that transactions are empty)

But when I go to etherscan I see a list of transactions including the genesis.

Can anybody explain the discrepancy?

helpme
  • 67
  • 5

1 Answers1

2

The genesis block had no transactions, exactly like what you have queried on the eth node. On Etherscan, 8,893 "transactions" are actually the 8893 accounts involved in ETH ICO Presale before the Mainnet launch. So each of them got their allocated ETH amount at the genesis block, not by sending transactions but by setting the states of these accounts to have funds right at the beginning.

About why Etherscan names them as transactions, I guess it's for convenience in their frontend so they don't have to design a special page just for showing the presale addresses.

In GoEthereum, it's probably implemented here

In Nethermind it's here, near the end of the file

minhhn2910
  • 1,740
  • 4
  • 14