ETHウォレット・ファインダー
残高があるEthereum (ETH) ウォレットの検索と検出
ウォレット残高確認 (Public RPC)
秘密鍵 (Private Key) 検索モード
スキャン進行状況
発見された結果 (WinnerETH.txt に保存可能)
Ethereumを理解する。
アルゴリズムからAPIまで。
Ethereumは単なる暗号資産ではありません。 Proof of Stake、EVM、暗号アルゴリズム、 スマートコントラクト、そしてJSON-RPC APIが組み合わさることで、 世界規模の分散型コンピューティング基盤として動作しています。
Ethereumとは何か?
Ethereum(イーサリアム)は、スマートコントラクトを実行できる 分散型ブロックチェーン・プラットフォームです。 ETHはそのネットワーク上で利用されるネイティブ資産であり、 トランザクション手数料やネットワーク参加など、さまざまな役割を持っています。
Ethereumのコンセンサスアルゴリズム
現在のEthereumは Proof of Stake(PoS) をコンセンサスメカニズムとして採用しています。 Ethereumは2022年にProof of WorkからProof of Stakeへ移行しました。
Proof of Stake
ネットワークの検証者(Validator)がETHをステーキングし、 ブロックの検証や提案に参加します。
Validator
Validatorはトランザクションやブロックを検証し、 Ethereumネットワークのコンセンサス維持に参加します。
ポイント: Proof of Stakeは「暗号ハッシュを大量計算して競争する仕組み」 ではありません。Validator、Consensus Layer、 Execution Layerが協調してネットワークを維持します。
1つのトランザクションはどう動く?
Ethereumで使われる暗号アルゴリズム
Ethereumでは、コンセンサスだけでなく、 アドレス生成、トランザクション署名、 データハッシュなど、複数の暗号技術が使われています。
Ethereumアドレスはどう作られる?
一般的なEthereumのEOAアドレスは、 秘密鍵から公開鍵を導出し、その公開鍵に対して Keccak-256を適用した結果の末尾20バイトを利用する形で作られます。
Ethereumアドレスは通常 0xから始まる40桁の16進数で表現されます。 つまり、0xを除いた部分は20バイト=160ビットです。
例
EVM — Ethereum Virtual Machine
EVMはEthereumのスマートコントラクトを実行するための 仮想マシンです。 Solidityなどで記述されたスマートコントラクトはコンパイルされ、 EVMが理解できるバイトコードとして実行されます。
Smart Contract
ブロックチェーン上で決められたルールに従って プログラムを実行します。
Bytecode
Solidityなどからコンパイルされた EVM実行用のコードです。
Gas
EVMで計算処理を実行するための リソース単位です。
Ethereum APIとは?
WebアプリケーションやバックエンドからEthereumへ接続する場合、 最も基本となるインターフェースの一つが JSON-RPC APIです。
EthereumのExecution Clientは共通のJSON-RPC仕様を実装しており、 アプリケーションはノードを通じてブロック情報、 アカウント情報、トランザクション、スマートコントラクトなどへアクセスできます。
最新ブロック番号
Ethereumネットワークの最新ブロック番号を取得します。
ETH残高
指定したアドレスのETH残高を取得できます。
Transaction検索
トランザクションハッシュから詳細情報を取得します。
Contract Call
状態を変更せずにスマートコントラクトの view / pure系処理などを呼び出します。
Event Logs
スマートコントラクトが発行したイベントログを取得します。
Signed Transaction
署名済みトランザクションをネットワークへ送信します。
⚡ Ethereum JSON-RPCを体験する
下のボタンを押すと、公開RPCエンドポイントへ JSON-RPCリクエストを送信し、現在のブロック番号を取得します。
Ethereum開発を支えるAPI・ライブラリ
ethers.js
JavaScript / TypeScriptからEthereum、 Wallet、Contract、Providerなどを扱うための 人気のライブラリです。
web3.js
JavaScriptからEthereumノードや スマートコントラクトへアクセスするための Web3ライブラリです。
web3.py
Python環境からEthereumノード、 トランザクション、スマートコントラクトなどを 操作できます。
JSON-RPC
ライブラリのさらに下のレイヤーで Ethereumノードと直接通信するための 標準的なインターフェースです。
JSON-RPCの基本形
Ethereum JSON-RPCでは、JSON形式のリクエストを Ethereumノードへ送信します。
例えば
eth_blockNumber
を呼び出すと、ノードは現在のブロック番号を
16進数形式で返します。
Ethereumの全体像
まとめ
Consensus
EthereumはProof of Stakeを採用しています。
Cryptography
Keccak-256、ECDSA、secp256k1などの 暗号技術が利用されています。
Execution
スマートコントラクトはEVM上で実行されます。
API
Ethereumノードとの基本的な通信には JSON-RPCが利用できます。
Ethereumを理解するときは、 「ETHという資産」だけを見るのではなく、 Consensus Layer、Execution Layer、EVM、暗号技術、 JSON-RPC APIがどのようにつながっているか を見ることが重要です。