デジタル通貨

ERC20系トークンとは?

<イーサリアムERC20トークンの問題について>

昨今では、お手軽に「トークン」が発行され、その数はもう覚えきれないほどになっています。
このトークンの多くはERC20準拠のものですが、この「ERC20」の意味はご存知でしょうか?

元々はイーサリアム上に作られたトークンは規格がばらばらで、管理しにくいという問題を抱えていました。
やがて、「ERC20」という規格によってイーサリアム上のトークンの作成が標準化され、この「ERC20」規格に基づいてイシューされるイーサリアム上のトークンを「ERC20(系)トークン」と呼んでいます。

ERCは何の略称かというと、イーサリアム上で決められた仕様である「Ethereum Request for Comments : Token Standard20」を指しています。

イーサリアムは単純なビットコインのような仮想通貨ではなく、分散型ネットワークだと言え、ブロックチェーンと、スマートコントラクトが使用できる「仮想マシン」であると表現できます。
イーサリアムでは分散型アプリケーションがサポートされ、略して「DApps」と呼ばれます。
DAppsは、イーサリアムのブロックチェーン上に作られ、トークンを作成してコミュニティー通貨として使うこともできれば、著作権の明記や財産の所有証書のように改竄不能な記録・証明として使うこともできます。
さて、イーサリアム上に作られたDAppsのトークンの規格がばらばらでは保存するウォレットもばらばらになりますが、一つの「ERC20準拠」で共通であれば同じ一つのハードウエアウォレット等で管理できます。
今では600種類以上のERC20系トークンが世に出ていると言われます。

このようにERC20発表後にイシューされたトークンは標準化され、管理が非常にしやすくなりました。
しかし、時間が経つにつれ、ERC20にはなかなか大きな問題が潜んでいることが明らかになってきました。

<ERC20トークンの抱える問題>

イーサリアム上のこれらERC20トークンを使ってコントラクトを執行することが基本ですが、なぜかERC20の規格ではトークンを送付してもコントラクトへ通知することは未定義になっています。

つまり通知方法が設定されていませんので、受信した場合でもトークンが届いたかどうかわかりません。
いくつかの代替方法で解決はできますがトランザクションは当然増えることになり、無駄に消費、本来必要ないはずのトランザクションがイーサリアムネットワークに発生することになります。
効率が悪い規格だと言えるでしょう。

さてERC20では(当初は誰も気が付かなかったのですが)、ERC20準拠トークンを「ユーザーアドレス」に送らず、誤って「コントラクトアドレス」に送付した場合、エラーで帰ってこないで、そのまま何故かトランザクション承認されるのにそのトークンは行方不明になってしまい、出すことができなくなります。

「コントラクトアドレス」はそもそも送金できないものなのですが、ユーザの無知や粗忽により、誤ってトークンをコントラクトアドレスを入力すると、回復が不可能になってしまいます。

ちなみにこれを修正するため、上位互換の「ERC223」という新規格も出ました。
これは「TokenFallBack」という誤送金を回収できる関数が追加されており、失敗をやり直すことが可能になりました。
とは言うものの、この上位互換に基づいたトークンは多くなく、相変わらずERC20が多数を占めている状態です。

このバグは、コミュニティでは「これはそもそもそういう仕様であり、バグではない」として修正されていません。
目下おおくのトークンがERC20系ですので、初心者がうっかりコントラクトアドレスに送付して「セルフGOX」とでもいうべき、永遠に取り出せなくなったトークンがどんどん増えていくと、経済的損失も累積していくことでしょう。

ただ、誤解もあり、バッチオーバーフローという脆弱性の問題がよく「ERC20」のバグだとディスられますが、実際はコントラクト上でトークン独自に実装された「batchTransfer」という関数の問題なのです。

もしもERC20トークンで「batchTransfer」が含まれなければその問題とは無縁です。
2018年4月にこの問題が顕在化し、当初は「ERC20の関数に大きなバグがある」とネット上で大きな話題となりました。

ERC20準拠のスマートコントラクトの「すべて」ではなく、「バッチトランスファー」関数のバグが取扱う数量を遥かに超える数のトークンが無料で作り出し、大量に送金されてしまうというもので、確かに致命的ではありますが、イーサリアムそのものの問題ではないことが後に判明しました。

今でもERC20準拠のトークン全部にこのバッチオーバーフロー問題が存在するという認識を持っている人がいますが、この認識は誤りです。

たしかにERC20にはいくつかの欠点はあるものの、この「batchTransfer」についてはそれを含むトークンコントラクトのみの脆弱性ですので、ERC20そのものの欠点とは切り離して考える必要があります。

JT(日本たばこ産業株式会社):配当狙い前のページ

香りを楽しむ:オレンジスイートとベンゾイン次のページ

ピックアップ記事

  1. 【イベント速報】実はこんなものが欲しかった!バレンタインデーで男がもらって嬉しい…
  2. 【速報】Breaking down(ブレイキングダウン)はもう終わり?犯罪者や出…
  3. iPhone15を購入する前に知っておきたいメリットとデメリットとは?
  4. 【速報】アップル、待望の最新M3チップ搭載MacBook ProとiMacを発表…
  5. 7ステップで完全マスター!YOASOBIの歌詞解析テクニック

関連記事

  1. デジタル通貨

    AIと倫理: 今知るべき6つの重要な議論

    どうも。creator.kです。人工知能(A…

  2. デジタル通貨

    ビットコインの急騰と今後

    仮想通貨のビットコインは2018年に急落しました。色々な要因が重なっ…

  3. デジタル通貨

    代表的な暗号資産であるビットコインの価格が急騰している理由と今後の相場の見通し

    代表的な暗号資産として知られるビットコインの価格は高騰を続けており、…

  4. デジタル通貨

    草コインへの投資!リスクとリターンを理解することが大事!

    暗号資産である草コインには、ハイリスク・ハイリターンのイメージがあり…

  5. デジタル通貨

    安全性の高い暗号資産ウォレット、CoolWalletS!

    皆さんは、仮想通貨を利用する上で使用する「CoolWalletS(ク…

暗号資産(仮想通貨)レート

JPY
USD
EUR
bitcoinBitcoin (BTC)
¥13.363.913,76
ethereumEthereum (ETH)
¥253.170,25
litecoinLitecoin (LTC)
¥11.839,70
xrpXRP (XRP)
¥311,65
bitcoinBitcoin (BTC)
$ 93,936.17
ethereumEthereum (ETH)
$ 1,779.56
litecoinLitecoin (LTC)
$ 83.22
xrpXRP (XRP)
$ 2.19
bitcoinBitcoin (BTC)
82,459.49
ethereumEthereum (ETH)
1,562.14
litecoinLitecoin (LTC)
73.05
xrpXRP (XRP)
1.92

SSL

スポンサー




アーカイブ

Twitter

https://x.com/MiscblogNet

  1. マネー&ライフ

    資産管理会社などの法人を設立するなら社会保険加入義務にご注意を
  2. マネー&ライフ

    景気と連動しない:ハデなモノやコトにはお金を使わない
  3. デジタル通貨

    JCBがテックファンド(TECHFUND)と業務提携をする目的
  4. マネー&ライフ

    老後2,000万円問題は、生涯付き合える友達がいることで乗り越えられる部分が大き…
  5. その他・雑記

    毎日の支払いに!仮想通貨活用法4選
PAGE TOP