From 9008b155d3c8d2a32c4c8945f1174243d48d4e90 Mon Sep 17 00:00:00 2001 From: obscuren Date: Thu, 4 Dec 2014 10:28:02 +0100 Subject: Renamed `chain` => `core` --- core/genesis.go | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 core/genesis.go (limited to 'core/genesis.go') diff --git a/core/genesis.go b/core/genesis.go new file mode 100644 index 000000000..707154759 --- /dev/null +++ b/core/genesis.go @@ -0,0 +1,52 @@ +package core + +import ( + "math/big" + + "github.com/ethereum/go-ethereum/crypto" + "github.com/ethereum/go-ethereum/ethutil" +) + +/* + * This is the special genesis block. + */ + +var ZeroHash256 = make([]byte, 32) +var ZeroHash160 = make([]byte, 20) +var ZeroHash512 = make([]byte, 64) +var EmptyShaList = crypto.Sha3(ethutil.Encode([]interface{}{})) +var EmptyListRoot = crypto.Sha3(ethutil.Encode("")) + +var GenesisHeader = []interface{}{ + // Previous hash (none) + ZeroHash256, + // Empty uncles + EmptyShaList, + // Coinbase + ZeroHash160, + // Root state + EmptyShaList, + // tx root + EmptyListRoot, + // receipt root + EmptyListRoot, + // bloom + ZeroHash512, + // Difficulty + //ethutil.BigPow(2, 22), + big.NewInt(131072), + // Number + ethutil.Big0, + // Block upper gas bound + big.NewInt(1000000), + // Block gas used + ethutil.Big0, + // Time + ethutil.Big0, + // Extra + nil, + // Nonce + crypto.Sha3(big.NewInt(42).Bytes()), +} + +var Genesis = []interface{}{GenesisHeader, []interface{}{}, []interface{}{}} -- cgit