【イーサリアム】クライアントソフト geth を使ってみた。

公開日: : 最終更新日:2020/11/19 仮想通貨 , , , ,

イーサリアムのクライアントソフト geth をインストールして使ってみました。

クライアントソフトを入れることによって、Ethereum ネットワークに参加することができます。

OSLinux にしました(Windows はインストールが少し面倒だと書いてあったので)。

Windows10 に Linux(Ubuntu)を入れる方法については以前にまとめました。
【WSL】Windows10 に Linux(Ubuntu) を入れてみた。

geth のインストール

まずは、geth をインストールします。

Genesis ブロックの作成

ローカル環境に1番最初のブロックの Genesis を作成します。

以下のような genesis.json ファイルを用意します。

以下のコマンドで初期化を行います。

以下のようなエラーが出てしまいました。

Fatal: Failed to write genesis block: unsupported fork ordering: eip150Block not enabled, but eip155Block enabled at 0

英語のサイトで調べ、genesis.json ファイルを以下のように修正しました。

無事に「Successfully…」と表示され、初期化できました。

INFO [07-17|11:11:21.323] Successfully wrote genesis state database=lightchaindata hash=”743236…b31e94″

geth の起動

Warning や ERROR がちょくちょくでましたが、「Welcome to the Geth JavaScript console!」と表示され、geth の対話型コンソールが起動できました。

アカウントの作成

EOA(Externally Owned Account) を作成します。引数にパスワードを指定します。

今回はプライベート環境を使っているので簡易なパスワードに設定しますが、本番環境では複雑なパスワードを設定しましょう。

「0x」から始まるアドレスが表示されます。

INFO [07-17|11:30:00.052] Your new key was generated address=0x7534af2C274F7DbC00b2f254cbfaf7BB0C0bBE9A

後ほど、ether の送金を行うので、アカウントを複数作っておきます。

アカウントの確認

複数作成したアカウントの確認を行います。

アドレスが配列で表示されます。

マイニング

マイニングを実行してみます。

ここで coinbase というものを設定します。coinbase は、マイニングの報酬などに紐づいたアカウントのことで、デフォルトでは配列の最初のアドレス(accounts[0])が設定されています。

eth.coinbase」コマンドで確認できます。

「miner.start(スレッド数)」コマンドで、マイニングが始まります。引数でスレッド数を指定することもできます。

「null」もしくは「true」と出力されていれば問題ありません。

放っておくとずっとマイニングしているので、適当なところで「miner.stop()」として停止させましょう。

残高の確認

coinbase について、マイニングした報酬を確認します。

送金

coinbase(accounts[0])から accounts[2] に送金をしてみます。

このとき、送金する側(accounts[0])のロックを解除しないとエラーが出てしまうようです。

エラーが出ます。

GoError: Error: account unlock with HTTP access is forbidden at web3.js:6347:37(47)
at native
at <eval>:1:24(6)

エラーが出たので geth の起動オプションを変更してみました。

まず、「password.txt」というファイルを「eth_private_nex」ディレクトリ直下に作成し、4つのアカウントのパスワードを指定します。

password
password
password
password

そして、以下のように geth の起動オプションでアカウントと password.txt ファイルを指定します。


しかし、以下のようなエラーが出てしまいました。

Fatal: Account unlock with HTTP access is forbidden!

ちょっとこれ以上はよく分からなかったので送金は断念しました。。

参考書籍

関連記事

【ビットコイン】ハッシュ関数(SHA-256・RIPEMD-160)について調べてみた。

ビットコインなどの仮想通貨で使用されているハッシュ関数(hash function)という技

記事を読む

初心者でも分かるビットコインの仕組みについてまとめてみた。

ビットコインは,時価総額が1位で最も有名な仮想通貨です. 仮想通貨の時価総額の見方について

記事を読む

【イーサリアム】 ハッシュ関数(Keccak-256)について調べてみた。

仮想通貨の1つであるイーサリアムで用いられているハッシュ関数「Keccak-256」について

記事を読む

【イーサリアム】日本円のチャートで比較する方法【イーサリアム・クラシック】

イーサリアム(Ethereum)は、2020年時点で、時価総額がビットコインに次ぐ第2位の仮

記事を読む

【仮想通貨】トランザクションについて調べてみた【ブロックチェーン】

ビットコインなどの仮想通貨では、取引をトランザクションで記述されます。 そのトランザク

記事を読む

【仮想通貨】新しいトランザクション(取引)の追加方法【ブロックチェーン】

仮想通貨で用いられているブロックチェーン技術において、新しいトランザクション(取引)をどのよ

記事を読む

【ビットコイン】 アドレス生成方法について調べてみた。

仮想通貨の1つであるビットコインを送金するときは、送付側と受け手側のそれぞれのアドレスが必要

記事を読む

【Solidity】 イーサリアムでコントラクトを生成してみた。

スマートコントラクトプログラミングの高級言語の1つである Solidity を使って、イーサ

記事を読む

【イーサリアム】 公開鍵暗号について調べてみた。

仮想通貨の1つであるイーサリアムでは、公開鍵暗号という技術が使われています。 公開鍵暗

記事を読む

【ビットコイン】1ブロックに含まれる情報について調べてみた【マークル木】

ビットコインなどの仮想通貨では、トランザクション(取引)の束を「ブロック」という単位で扱い、

記事を読む

【MQL4】EAファイルを作成・実行する方法【FX自動売買】

EAファイルとは、為替の価格データが更新されるたびに繰り返し実行してく

【Excel VBA】開発タブを表示させる方法。

Excel VBAでマクロの開発を行うためには、「開発」タブを表示させ

投資信託にかかる費用について調べてみた。

投資信託を探していると「買付手数料」や「管理費用」などが記載されていた

FX収支|2021年3月|+128,508円

FXの2021年3月の収支結果報告です。 今月は、FXを

【トラリピ】スプレッドについて調べてみた【FX自動売買】

トラリピは、マネースクエアが運営しているFXの自動売買システムです。

→もっと見る

PAGE TOP ↑