【イーサリアム】クライアントソフト 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!

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

参考書籍

関連記事

【仮想通貨】時価総額のランキングを円(JPY)で見る方法。

ビットコインやイーサリアムなどの仮想通貨の時価総額のランキングを 円(JPY)で見れる分かり

記事を読む

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

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

記事を読む

【MetaMask】イーサリアムのウォレットを使ってみた【テスト環境】

今回、イーサリアムのウォレットの1つである MetaMask(メタマスク)を使って、テストブ

記事を読む

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

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

記事を読む

【イーサリアム】 チューリング完全性について調べてみた。

仮想通貨の1つであるイーサリアムについて調べていると、チューリング完全性(Turing co

記事を読む

【仮想通貨】デジタル署名と公開鍵暗号の違いは!?

ビットコインなどの仮想通貨のブロックチェーン技術で用いられている「デジタル署名」「公開鍵暗号

記事を読む

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

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

記事を読む

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

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

記事を読む

【仮想通貨】デジタル署名について調べてみた【ブロックチェーン】

ビットコインなどの仮想通貨のブロックチェーンで用いられているデジタル署名(Digital s

記事を読む

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

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

記事を読む

【MT4】日付と時間を指定してPCを自動起動させる方法【DELL】

今回は、日付と時間を指定してPCを自動的に起動させる方法について紹介し

【MT4】PCが再起動しても自動的に起動させる方法【FX自動売買】

今回は、FX 自動売買用のツールの MT4 で、実行しているPCが再起

【MT4】複数口座を同時に起動させる方法【FX・CFD】

今回は、MT4(メタトレーダー4)で複数口座を同時にログインし、起動さ

【MQL4】スプレッドを取得する方法【MT4】

今回は、MQL4 で対象通貨ペアのスプレッドを取得する方法について紹介

【楽天CFD】取引口座を開設してみた【MT4】

今回は、楽天CFDの取引口座(本番口座)の開設方法について紹介します。

→もっと見る

PAGE TOP ↑