メインコンテンツへスキップ
Change page

ERC-777 トークン規格

最終更新: 2025年8月21日

警告

**ERC-777はさまざまな形態の攻撃に対する脆弱性opens in a new tabがあるため、適切に実装することが困難です。 代わりにERC-20を使用することが推奨されます。**このページは、歴史的なアーカイブとして残されています。

はじめに

ERC-777は、既存のERC-20標準を改良した代替性トークン標準です。

前提条件

このページをよりよく理解するために、まずERC-20についてお読みになることをお勧めします。

ERC-777は、ERC-20に対してどのような改善を提案しているか?

ERC-777は、ERC-20に対して以下の改善を提案します。

フック

フックとは、スマートコントラクトのコードで記述された関数です。 フックは、コントラクトによりトークンが送受信される際に呼び出されます。 これにより、スマートコントラクトはトークンの受信/送信に対応できるようになります。

フックは、ERC-1820opens in a new tab標準を使用して登録・検出されます。

フックの利点:

  1. この操作に二重呼び出し(approve/transferFrom)を必要とするERC-20opens in a new tabとは異なり、フックでは単一のトランザクションでコントラクトへのトークン送信とコントラクトへの通知が可能です。
  2. 登録フックを持たないコントラクトは、ERC-777を利用できません。 受信コントラクトがフックを登録していない場合、送信コントラクトはトランザクションを中止します。 これにより、ERC-777非互換のスマートコントラクトに対する誤転送を防ぐことができます。
  3. フックは、トランザクションを却下することができます。

小数点以下の桁数

この標準は、ERC-20で引き起こされたdecimalsをめぐる混乱も解決します。 この混乱を解消することで、デベロッパーの利用体験が向上します。

ERC-20との後方互換性

ERC-777コントラクトとの間は、ERC-20コントラクトに対する場合と同様のやりとりが可能です。

参考リンク

EIP-777: トークン標準opens in a new tab

この記事は役に立ちましたか?