ERC-6551:NFTのルールを変える方法
ERC-6551とは何ですか?
ERC-6551は、NFTにスマートコントラクト機能を付与することで、NFTの機能と価値を強化します。
ERC-6551トークンは、スマートコントラクトウォレットに似た機能を持っています。これは、ERC-6551が通常のスマートコントラクトウォレットと同様にトークンや他のNFTを保持し、取引することができることを意味します。これらのアカウントは「Token-Bound Account(TBA)」と呼ばれ、既存のERC-721 NFTと互換性のある許可なしのレジストリによって作成と管理されます。
EIP-6551の共同作者はBenny Giangであり、彼はDapper Labsの創設メンバーの一人であり、ERC-721トークン標準および初期のプロジェクト(例:CryptoKitties)の開発に参加していました。
ERC-721トークン標準とは何ですか?
ERC-721は、イーサリアムブロックチェーン上でユニークなデジタルアセットを作成するための標準です。これらのアセットはNFTと呼ばれ、一般的な暗号通貨とは異なり、各NFTは一意であり、一対一で交換することはできません。NFTはアートから仮想不動産まで、あらゆるものを代表することができ、その価値は希少性や実用性などの要因によって決まります。ERC-721はこれらのトークンを作成するためのガイドラインを提供し、開発者がイーサリアムネットワーク上でユニークなデジタルアセットをより簡単に作成し、取引することができるようにしています。
ERC-6551はどのように機能しますか?
通常のERC-721 NFTの問題は、その制約された範囲にあります。これらは所有と転送のみが可能であり、他の資産(トークンや他のNFTなど)を所有することはできず、他のスマートコントラクトとの相互作用や外部要因またはユーザーの入力に基づいて時間とともに変化または進化することはできません。
この問題を解決するために、ERC-6551は既存のERC-721 NFTと互換性のある許可なしのレジストリを使用します。このレジストリはTBAの工場とディレクトリとして機能するスマートコントラクトです。誰でもレジストリ上の関数を呼び出し、わずかな手数料を支払うことで、任意のERC-721トークンに対してTBAを作成することができます。その後、レジストリはそのトークンのTBAとしてプロキシコントラクトをデプロイします。
TBAを代表するプロキシコントラクトは、元のERC-721トークンのすべての属性とメタデータを継承しています。また、EIP-1271標準も実装されており、TBAはトークンを代表してメッセージに署名したり、署名を検証したりすることができます。これにより、TBAは分散型取引所(DEX)、レンディングプラットフォーム、ゲーム環境など、イーサリアムネットワーク上の他のスマートコントラクトやアカウントと相互作用できるようになります。
TBAはまた、他のトークンや他のNFTなどの他の資産を保持することもでき、これらの資産はプロキシコントラクト上の関数を呼び出すことによってTBAに移動したり、TBAから移動したりすることができます。