go-ethereum/core/genesis.go

53 lines
978 B
Go
Raw Normal View History

2014-12-04 11:28:02 +02:00
package core
2014-02-15 00:56:09 +02:00
import (
"math/big"
2014-10-31 13:37:43 +02:00
"github.com/ethereum/go-ethereum/crypto"
"github.com/ethereum/go-ethereum/ethutil"
2014-02-15 00:56:09 +02:00
)
/*
* This is the special genesis block.
*/
var ZeroHash256 = make([]byte, 32)
var ZeroHash160 = make([]byte, 20)
var ZeroHash512 = make([]byte, 64)
2014-10-31 13:37:43 +02:00
var EmptyShaList = crypto.Sha3(ethutil.Encode([]interface{}{}))
2014-11-04 00:45:16 +02:00
var EmptyListRoot = crypto.Sha3(ethutil.Encode(""))
2014-02-15 00:56:09 +02:00
2014-02-18 17:40:58 +02:00
var GenesisHeader = []interface{}{
2014-02-15 00:56:09 +02:00
// Previous hash (none)
ZeroHash256,
2014-10-21 14:25:31 +03:00
// Empty uncles
EmptyShaList,
2014-02-15 00:56:09 +02:00
// Coinbase
ZeroHash160,
// Root state
EmptyShaList,
2014-11-04 00:45:16 +02:00
// tx root
EmptyListRoot,
// receipt root
EmptyListRoot,
// bloom
ZeroHash512,
2014-02-15 00:56:09 +02:00
// Difficulty
//ethutil.BigPow(2, 22),
2014-08-21 21:13:26 +03:00
big.NewInt(131072),
2014-05-20 15:29:52 +03:00
// Number
ethutil.Big0,
// Block upper gas bound
big.NewInt(1000000),
// Block gas used
ethutil.Big0,
2014-02-15 00:56:09 +02:00
// Time
2014-05-20 15:29:52 +03:00
ethutil.Big0,
2014-02-15 00:56:09 +02:00
// Extra
2014-05-20 15:29:52 +03:00
nil,
2014-02-15 00:56:09 +02:00
// Nonce
2014-10-31 13:37:43 +02:00
crypto.Sha3(big.NewInt(42).Bytes()),
2014-02-15 00:56:09 +02:00
}
2014-02-18 17:40:58 +02:00
var Genesis = []interface{}{GenesisHeader, []interface{}{}, []interface{}{}}