Genesis
如何獲取創世塊資訊
我正在玩一個私有區塊鏈,我意識到我不知道如何獲取“創世塊”資訊。eth.getBlock(0) 不顯示創世資訊,例如“alloc”預資助。
那麼,我該如何檢索創世區塊的資訊呢?
我的 Genesis 文件如下所示:
"gasLimit": "0x30000000", "difficulty": "0x1", "mixHash": "0x0000000000000000000000000000000000000000000000000000000000000000", "coinbase": "0x0000000000000000000000000000000000000000", "alloc": { "e9722f81388f8f99771cad2770aba1f4b9e2d86c": { "balance": "1000000000000000000000000" } },
我想知道的是如何通過 web3 或 JSON-RPC API 獲取“alloc”資訊。
對於公共網路,這些值在配置文件中定義。對於 geth,您可以在此文件中找到這些值(對於主網和測試網)
https://github.com/ethereum/go-ethereum/blob/master/params/config.go#L33
關於私有網路,你需要一個創世文件來初始化你的網路,所以你應該把它放在某個地方。但是,可以對大多數值進行逆向工程。看一下rpc方法:
https://github.com/ethereum/wiki/wiki/JSON-RPC
例如,從您的 javascript 控制台 (
$ geth attach "http://localhost:8545"
) 呼叫> net.version
將返回您的networkId
> eth.getBlock('latest')
將返回您可以從中找到的最新塊
gasLimit
等