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