1

We are building a data-analytics platform for ethereum transactions. I am using both a local Parity node and an Infura Geth node but cannot find the transactions that occurred at block 0.

Etherscan tells me that block 0 has 8893 transactions, but these transactions are not available in both the nodes.

Result from Infura node

>>> from ethjsonrpc import InfuraEthJsonRpc
>>> c = InfuraEthJsonRpc(network='mainnet')
>>> block_data = c.eth_getBlockByNumber(0)
>>> block_data 
{u'nonce': u'0x0000000000000042', u'receiptsRoot': u'0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421', u'hash': u'0xd4e56740f876aef8c010b86a40d5f56745a118d0906a34e69aec8c0db1cb8fa3', u'uncles': [], u'timestamp': u'0x0', u'sha3Uncles': u'0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347', u'miner': u'0x0000000000000000000000000000000000000000', u'parentHash': u'0x0000000000000000000000000000000000000000000000000000000000000000', u'extraData': u'0x11bbe8db4e347b4e8c937c1c8370e4b5ed33adb3db69cbdb7a38e1e50b1b82fa', u'gasLimit': u'0x1388', u'number': u'0x0', u'stateRoot': u'0xd7f8974fb5ac78d9ac099b9ad5018bedc2ce0a72dad1827a1709da30580f0544', u'difficulty': u'0x400000000', u'transactionsRoot': u'0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421', u'size': u'0x21c', u'transactions': [], u'mixHash': u'0x0000000000000000000000000000000000000000000000000000000000000000', u'totalDifficulty': u'0x400000000', u'gasUsed': u'0x0', u'logsBloom': u'0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'}

Result from Parity node

>>> from ethjsonrpc import ParityEthJsonRpc
>>> c = ParityEthJsonRpc()
>>> block_data = c.eth_getBlockByNumber(0)
>>> block_data
{u'transactionsRoot': u'0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421', u'gasLimit': u'0x1388', u'number': u'0x0', u'size': u'0x21c', u'author': u'0x0000000000000000000000000000000000000000', u'mixHash': u'0x0000000000000000000000000000000000000000000000000000000000000000', u'sha3Uncles': u'0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347', u'miner': u'0x0000000000000000000000000000000000000000', u'logsBloom': u'0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000', u'nonce': u'0x0000000000000042', u'hash': u'0xd4e56740f876aef8c010b86a40d5f56745a118d0906a34e69aec8c0db1cb8fa3', u'uncles': [], u'transactions': [], u'timestamp': u'0x0', u'sealFields': [u'0xa00000000000000000000000000000000000000000000000000000000000000000', u'0x880000000000000042'], u'receiptsRoot': u'0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421', u'difficulty': u'0x400000000', u'parentHash': u'0x0000000000000000000000000000000000000000000000000000000000000000', u'extraData': u'0x11bbe8db4e347b4e8c937c1c8370e4b5ed33adb3db69cbdb7a38e1e50b1b82fa', u'stateRoot': u'0xd7f8974fb5ac78d9ac099b9ad5018bedc2ce0a72dad1827a1709da30580f0544', u'totalDifficulty': u'0x400000000', u'gasUsed': u'0x0'}

Generally, the transaction information is appended after the block information. None of the nodes give transactions that occurred at block 0 in the response.

Where can I get this information? I would prefer scraping this data from an ethereum node.

1 Answer 1

2

I got the reply to this question on Gitter so posting the results here:

  1. There were no transactions in block 0.
  2. The results from both the nodes are the canonical truths
  3. The genesis state of ethereum started with few account balances.
  4. "The genesis block has a bunch of balances; I assume Etherscan has implemented its own 'virtual transactions' to balance the books."

The balances of the genesis state can be found here

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.