ALISの事前投稿に参加しました。「すここのこ(@VurCur)」といいます。
わたしの本家ブログとTwitterの方ではブロックチェーンゲームもしくはdAppsについて書いています。
ALISではもう少しまとまった記事を書こうと思いまして、今回はdAppsを調べるとよく見るERC20、ERC223、ERC721のまとめを書きます。
・ERC20はトークンを発行するときのルール
ERC20は略語でEtherreum Request for Comments: Token Standard #20の略です。
結論からいえば、
Ethereumベースでトークンの標準インターフェース
つまり、
です。
下は原文の引用です。めっちゃ簡単なサマリー!
なぜそのようなルールを定める必要があるのか気になるところです。
ルールは何かが無秩序になったときに定めます。
無秩序になったものは、
Ethereumはスマートコントラクトを含んだトークンが発行できます。
それにより、ICO(Initial Coin Offering, 仮想通貨を用いた資金調達)をEhtereumのトークンで行うことが多くなりました。
しかしICOが作られるごとにそれぞれで異なる仕組みが生まれます。
そのことから次のような問題が生じます。
これはトークンの無秩序化といってよいでしょう。
ここで出てくるのが「ERC20」というルールです。
EthereumにはEIP(Ethereum Improvement Proposal)と呼ばれるEthereumプラットフォームの基準改善案の仕組みがあります。
そのNo20 (EIP20)にトークンのルールであるERC20について書かれているのです。
GitHubのリポジトリ(データの貯蔵庫)に公開されてます。興味のある方はご覧ください!(https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20.md)
ちなみにこの改善案はEthereum Foundationの開発者であるFabian VogelstellerとVitalik Buterin(Ethereumの創設者)によって記述されたもので、2015年11月19日に作成、2017年9月11日に採用されました。
ERC20をまとめると、カオス状態にあったトークン発行の秩序化といってよいと考えます。ルール整備の一つですね。
しかしERC20は重大な問題を抱えていました。それを解決するルールが「ERC223」です。
・ERC223はERC20のクリティカル問題を解決する
トークンの無秩序状態を改善するためのルールはついてはERC20で問題ありませんでした。しかしクリティカルな問題点がERC20にはあったのです。
まず、コントラクトアドレスについて説明。
Ethereumがスマートコントラクト(自動契約)の技術が利用されていることを理解していることを前提として、Ethereumではコントラクトとよばれる契約内容をブロックチェーン上に書き込んでいます。その契約内容に割り当てられているアドレスをコントラクトアドレスといいます。
それなので、Ethereum上の通貨Etherを送金するアドレスとはまったく異なるものなのです。
コントラクトアドレスと送金アドレスは全然違うじゃん!間違うわけないでしょ!
と思われる方もいらっしゃるかも知れませんが、コントラクトアドレスに送金する人はやはりいるようです。
そのようなミスをした場合、返金できるようなシステムがあればよいのですが、残念ながらERC20上では消滅してしまうのです。
消滅してしまったトークンの送金額は以下の通り。
一番大きかった金額だけでも日本円で数億円相当のEtherが消滅しているようです。
通貨Etherの消滅は致命的な問題です。これを解決したのが、<b>ERC223</b>になるのです。
・ERC721は多様性をゲームで実現
さてdAppsを見ていてよくでてくるもので理解しておきたいことは「ERC721」です。
ERC20、ERC223は代替可能(Fungible Token)、ERC721は代替不可能(Non-Fungible Token)というで言われます。
ただこの表現ものすごーくわかりづらかったんですよね…。
結論からいえば、
だと考えています。まずは比較対象としてERC20とERC223を上げます。
ERC20とERC223は代替可能なトークンと呼ばれているもので通貨で例えると、通貨の定義を満たしていれば同じ価値を持つ通貨と交換が可能です。
それに対して、
dAppsを有名にさせた「CryptoKitties」で例えてみましょう。
CryptoKittiesはERC721で実装されているブロックチェーンゲームです。
CryptoKittiesの特徴として「2匹のネコから新たなネコを生む」といった二つのことが可能なことが挙げられます。
つまり、親の遺伝子情報を子に引き継ぐことができるので、独特なネコを作ることができるのです。
ERC721はゲーム開発だけでなく、独創性なアプリの開発に大きく役割を果たすはずです。
・まとめ
ERC20やERC223はトークン発行によるトークンエコノミーの実現のための、ルール整備でした。
またERC721はゲーム開発やオリジナリティのあるアプリケーションの実装に貢献しています。
dAppsは今後も目が離せません!
あと自分はALISだけでなく、ライブドアブログでブログを毎日更新しています。
内容はdAppsやガジェットが多めです。よろしければご覧ください!