隗より始めよ

今後はいろいろ考え始めます。

はじめてのブロックチェーンアプリケーション(gethつまずきメモ①)

Cryptozombieをやってみて思ったのはEthereumは周辺ツールの発展も凄いのだなぁと思わされました。ちょっと作ってみたいというのであれば、Ethereumが良いようなという感想の元、簡単なものを作ってみようと思い、はじめてのブロックチェーンアプリケーション、Ethereumによるスマートコントラクト開発入門を買いました。

はじめてのブロックチェーン・アプリケーション Ethereumによるスマートコントラクト開発入門 (DEV Engineer's Books)

はじめてのブロックチェーン・アプリケーション Ethereumによるスマートコントラクト開発入門 (DEV Engineer's Books)

いきなりGenesisblockのところで躓いたので、メモしておきます。

本の通りGenesisBlockを作れてこれでローカルネットワーク作れる!!と得意げにエンターをタッターンと押したところエラーが帰ってきました。

Fatal: invalid genesis file: json: cannot unmarshal hex string of odd length into Go struct field Genesis.parentHash of type common.Hash

というわけでそのままグーグル先生に聞くと、stackexchangeというところが開き、geth1.6からgenesisblockの作りが変わったということでした。

ethereum.stackexchange.com

というわけでそこに書かれていたgethのページに行くと、新たなgenesisblockの書き方が載っていました。

{
    "config": {
        "chainId": 4649,
        "homesteadBlock": 0,
        "eip155Block": 0,
        "eip158Block": 0
    },
    "difficulty": "200000000",
    "gasLimit": "2100000",
    "alloc": {
        "7df9a875a174b3bc565e6424a0050ebc1b2d1d82": { "balance": "300000" },
        "f41c74c9ae680c1aa78f42e5647a62f353b7bdde": { "balance": "400000" }
    }
}

github.com

というわけで、genesisblockの書き方に変更があったというメモでした。