はい、もちろんです。では、この「外部所有アカウント(EOA)」について、ざっくばらんに、一体何なのか話してみましょう。
外部所有アカウント(EOA)とは?分かりやすい解説
ご心配なく、この言葉は技術的に聞こえますが、実は非常にシンプルな概念です。
簡単に言えば、外部所有アカウント(Externally Owned Account, EOA)とは、あなたがイーサリアム上で持つ個人ウォレットのアカウントのことです。
もしMetaMask(メタマスク)、Trust Wallet(トラストウォレット)などの暗号資産ウォレットを使ったことがあるなら、イーサリアム(ETH)やNFTを送受信するために作成したそのアカウントが、まさにEOAなのです。
銀行口座に例えてみましょう
もっと理解しやすくするために、これを私たちが日常で使っている銀行口座に例えてみましょう。
-
アカウントアドレス (Address):これはあなたの銀行の口座番号のようなものです。
0x
で始まる一連の文字列で、例えば0x123...abc
といった形をしています。このアドレスは公開されており、銀行の口座番号を教えるのと同じように、他の人に安心して教えて、送金してもらうことができます。 -
秘密鍵 (Private Key):これはあなたの銀行カードの暗証番号+セキュリティトークンのようなもので、最高の権限を持つ証明です。秘密鍵を握る者が、そのアカウント内の全資産を完全にコントロールできます。秘密鍵は絶対に誰にも教えてはならず、また失くしてもいけません! ウォレットソフトウェア(例:メタマスク)がこの秘密鍵を安全に保管してくれます。普段入力するログインパスワードは、ウォレットソフトウェアを解除するためのものであり、本当の核となるのは秘密鍵と、そこから生成されるニーモニックフレーズ(リカバリーフレーズ)です。
というわけで、EOAは公開された「アドレス」と、絶対に秘密にされる「秘密鍵」から構成され、外部の、現実の人間(つまりあなた)によってコントロールされます。これが「外部所有アカウント」と呼ばれる所以です。
EOAのいくつかの主要な特徴
-
人間がコントロールする:EOAは自動で何かを行うことはありません。あなた(秘密鍵による署名)が操作を開始する必要があります。送金したいならウォレットで「確認」をクリックし、NFTを購入したいなら自分で承認しなければなりません。それはまるで車と同じで、運転手(あなた)が運転する必要があります。
-
取引を開始できる:イーサリアムの世界では、すべての活動はEOAによって開始されます。シンプルな送金であれ、複雑な分散型アプリケーション(DeFi)とのやり取りであれ、最初のステップとして常にEOAが「点火役」となり、一連のプロセスを開始するためにガス代(手数料)を支払う必要があります。
-
コードがない:EOA自体は非常にシンプルで、資産を保管する場所であり、複雑なロジックを実行することはできません。それはロボットではなく、金庫のようなものです。
EOA vs. コントラクトアカウント(もう一つの種類のアカウント)
もしかしたら、「外部所有アカウント」があるなら、「内部」のアカウントもあるのか、と疑問に思うかもしれませんね?
その通りです!イーサリアム上には、もう一つの種類のアカウントがあり、それは**コントラクトアカウント(Contract Account)**と呼ばれます。
これらを簡単な比喩で区別してみましょう。
- EOA(あなた自身):あなたは生身の人間で、自分の意思を持ち、自ら自動販売機に行ってコーラを買うことを決められます。
- コントラクトアカウント(自動販売機):それは一台の機械で、あらかじめプログラム(コード)が書き込まれています。自分から何かを積極的にすることはできず、受動的に待っているだけです。あなた(EOA)がお金を入れてボタンを押して初めて、プログラムのルールに従って、コーラを一本出してくれます。
Uniswap(ユニスワップ)やAave(アーベ)といった分散型アプリケーションは、その裏側にそれぞれコントラクトアカウントがあります。私たち一般ユーザーは、自分のEOAを通じて、これらの「自動販売機」とやり取りしているのです。
まとめ
というわけで、次に「EOA」という言葉を聞いたら、簡単にこう理解してください。
私たちがイーサリアム上で持つ個人ウォレットのアカウントであり、秘密鍵によって私たち自身がコントロールし、ブロックチェーンの世界であらゆる活動を行う上での出発点となるものです。
この説明がお役に立てば幸いです!