aboutsummaryrefslogtreecommitdiffstats
path: root/ethchain/genesis.go
diff options
context:
space:
mode:
authorobscuren <geffobscura@gmail.com>2014-02-15 06:56:09 +0800
committerobscuren <geffobscura@gmail.com>2014-02-15 06:56:09 +0800
commitf6d1bfe45bf3709d7bad40bf563b5c09228622e3 (patch)
treedf48311a5a494c66c74dcd51f1056cc699f01507 /ethchain/genesis.go
parentc2fb9f06ad018d01ce335c82b3542de16045a32d (diff)
downloaddexon-f6d1bfe45bf3709d7bad40bf563b5c09228622e3.tar.gz
dexon-f6d1bfe45bf3709d7bad40bf563b5c09228622e3.tar.zst
dexon-f6d1bfe45bf3709d7bad40bf563b5c09228622e3.zip
The great merge
Diffstat (limited to 'ethchain/genesis.go')
-rw-r--r--ethchain/genesis.go39
1 files changed, 39 insertions, 0 deletions
diff --git a/ethchain/genesis.go b/ethchain/genesis.go
new file mode 100644
index 000000000..060d347e4
--- /dev/null
+++ b/ethchain/genesis.go
@@ -0,0 +1,39 @@
+package ethchain
+
+import (
+ "github.com/ethereum/eth-go/ethutil"
+ "math/big"
+)
+
+/*
+ * This is the special genesis block.
+ */
+
+var ZeroHash256 = make([]byte, 32)
+var ZeroHash160 = make([]byte, 20)
+var EmptyShaList = ethutil.Sha3Bin(ethutil.Encode([]interface{}{}))
+
+var GenisisHeader = []interface{}{
+ // Previous hash (none)
+ //"",
+ ZeroHash256,
+ // Sha of uncles
+ ethutil.Sha3Bin(ethutil.Encode([]interface{}{})),
+ // Coinbase
+ ZeroHash160,
+ // Root state
+ "",
+ // Sha of transactions
+ //EmptyShaList,
+ ethutil.Sha3Bin(ethutil.Encode([]interface{}{})),
+ // Difficulty
+ ethutil.BigPow(2, 22),
+ // Time
+ int64(0),
+ // Extra
+ "",
+ // Nonce
+ ethutil.Sha3Bin(big.NewInt(42).Bytes()),
+}
+
+var Genesis = []interface{}{GenisisHeader, []interface{}{}, []interface{}{}}