aboutsummaryrefslogblamecommitdiffstats
path: root/chain/genesis.go
blob: 3a552f5834b582a936caa7eeef5616ae81db259a (plain) (tree)
1
2
3
4
5
6
7
             

        

                  
                                                
                                                 







                                     
                                  
                                                               
 
                                  
                               
                    
                       
                     


                     
                     
                 




                       
                     
                                
                           







                                  
               
                     
                
            
                
                                            

 
                                                                            
package chain

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 GenesisHeader = []interface{}{
    // Previous hash (none)
    ZeroHash256,
    // Empty uncles
    EmptyShaList,
    // Coinbase
    ZeroHash160,
    // Root state
    EmptyShaList,
    // tx sha
    EmptyShaList,
    // receipt list
    EmptyShaList,
    // bloom
    ZeroHash512,
    // Difficulty
    //ethutil.BigPow(2, 22),
    big.NewInt(131072),
    // Number
    ethutil.Big0,
    // Block minimum gas price
    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{}{}}