go-ethereumを読む(1) 準備編
3143 ワード
ブロックチェーンの勉強のためにEthereumのデファクトとなっているgo-ethereumのソースコードを読んだのでそれを記録としてまとめます。
v1.8.15ベースに解説します。
debug
pritty printがあると便利
go-ethereumはgovendorを使っているので下記のコマンドでインストールしておくのをおすすめ
$ govendor fetch github.com/k0kubun/pp@=v2.3.0
geth
urfave/cli
gethでつかっているcliライブラリ
主要なディレクトリ構成
名前 | 説明 |
---|---|
accounts | Ethereumはアカウントベースなので、アドレスや鍵のプログラムがここにある |
cmd | gethコマンド,puppethコマンドなどコマンドのmain.goなどがある |
common | Addressなどの汎用的に使う型やそれ用の関数がある |
consensus | ethash(PoW), clique(PoA)などのロジックがある |
core | Ethereumのコア機能の実装がある |
eth | EthServiceの機能がある |
ethclient | rpcリクエスト用のクライアントがある |
ethdb | LevelDBのwrapper |
event | FeedやSubscriptionといったものがある |
miner | マイニング用の汎用的なロジックがある(ethash, cliqueなどの特化したロジック以外) |
node | nodeをセットアップ、起動するためのロジックがある |
p2p | p2pのロジックがある |
rlp | Recursive Length PrefixというEthereumで独自定義されているバイナリフォーマット用のロジックがある |
rpc | http,ws,ipcなど具体的なrpcサーバのロジックがある |
trie | データ保存形式の作成ロジックがある |
Author And Source
この問題について(go-ethereumを読む(1) 準備編), 我々は、より多くの情報をここで見つけました https://qiita.com/t10471/items/2c6dbef653be8f1c8976著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .