ERC20とイーサネットワーク(その1)

深掘り解説

イーサリウムとスマートコントラクト

 

仮想通貨に興味のある人ならば、「ERC20」とか「ERC20トークン」という言葉を聞いたことがあるのではないでしょうか?
今回は、ERC20と、ERC20を用いたスマートコントラクトについて簡単に解説します。


ERC20とは

ERC20とは、イーサネット上のトークンのフォーマットです。
仮想通貨はブロックチェーン上に動いています。多くのイーサネット上のトークンの基盤となっているプログラムは、ERC20という規格に基づいているため、ある程度の共通性があると言えます。
ERC20はとても基本的なトークン構造で、広く普及しており、コピペでも作ることができます。最近ではERC731という、ERC20の改善版のようなものも存在します。

ERC20は、「Ethereum Request for Comments, Token Standard #20」 の略です。
Ethereum Request for Comments は、「イーサリアムを開発するための提案書」というような意味で、Token Standard #20 は、「20番目のトークン規格」 という意味です。無理矢理訳すと 、「イーサリアムで用いるトークンの規格に関する20番目の提案」というような意味になります。

重要なのはToken Standard(トークンの規格)の方です。
ここでいうトークンとは、データの塊の様なもので、皆さんが最もなじみのあるトークンはコインでしょう。繰り返しになりますが、仮想通貨はプログラムとデータなので、コインもデジタルなデータです。誰がいくらのコインを持っているのか、あるいは誰から誰へ支払ったのか、などの情報をデータとしてやりとりすることで、トークンを手に入れたり、支払ったりできるのです。

ところで、トークンは仮想通貨だけに限りません。 極論すると、どんなデータもトークン化してブロックチェーン上で送信・保管できるんです。仮想通貨とは全く関係ない事業、例えば役所の書類をブロックチェーンで管理保管する、なんてニュースを聞いたことがあるんじゃないでしょうか?これが、ブロックチェーンが画期的な技術とされる一因です。

さて、「どんなデータもトークンに出来る」といいましたが、トークン化するときにも規格があります。間違った方法でトークン化したら、そのトークンはエラーを起こしてしまうでしょう。
ちょっと横道にそれて、たとえ話をしましょう。

トークンの規格の問題を解りやすく例えると、マッキントッシュとウィンドウズのような関係が挙げられます。

マックで作ったデータをウィンドウズで読めない、という経験を皆さんもしたことがあるんじゃないでしょうか。これは、マックとウィンドウズのデータの規格が違うことが理由ですね。

あるいは、アンドロイドのスマホとiPhoneの関係にも例えられます。アンドロイドスマホでは提供されているアプリが、iPhoneでは提供されていないという話を聞いたことがないでしょうか? あるいは、アンドロイドのバージョンが古い(スマホが古い)ので、最新のアプリは遊べない、などという問題もよく耳にしますよね。

これらは、全てプログラムの規格の問題です。逆に言えば、規格が同じなら機種が違ってもアプリは利用できます。アンドロイドのスマホの場合は、スマホのメーカーが違っても同じアプリが利用できますよね。 また、最近はマッキントッシュとウィンドウズ間でも、データの互換性が高まり、ファイルを受け渡しできるようになりました。これも、マックとウィンドウズ(の中のアプリ)が規格の一部を共通化したからです。

その2へ続く