以前、ERC-20とERC-721についてご説明したと思います。
クリプト基礎知識②NFTって何?そしてよく見るERC-721って何?
簡単におさらいすると、
🔸ERC-20
Ethereum Requset for commentsの略でかつ、EIP20(Ethereum Improvement Protocol)に基づいて20番目に改善提案されたものを指します。Ethereumチェーンを利用しているFT(ファンジブルトークンの略。わかりやすくここでは以降トークンで説明)であり、基本動作はEthereumに準じるものとなります。
🔸ERC-721
EIP721に準じた規格であり、Ethereumチェーン上でのNFT(ノンファンジブルトークンの略。以降FTとNFTをまとめてトークンということあり)発行を可能にします。
思い出しましたか?
そして本日紹介するのはERC−1155というものになります。ERC-1155はひとつのコントラクトから複数のトークンを発行することができる規格になります。
ERC-20やECR-721ではひとつのコントラクトから一種類のトークン(FT,NFT)しか発行することができなかったのですが、ERC-1155では複数種類のトークンをひとつのコントラクトから発行することができます。
主な用途として、ERC-20がトークン発行(暗号資産発行)、ERC-721がアートをはじめとしたNFT発行の用途が多いとしたら、ERC-1155はブロックチェーンゲーム(以下BCG)などで利用されることも多い規格です。
ではその特徴をもう少し掘り下げてみましょう。
ERC-1155の特徴と仕組み
ERC-1155の特徴として、ひとつのコントラクトから複数種類のFT(トークン)の発行が可能になると説明しました。
上記の図のように、ERC-1155では複数のトークンを束ねて発行することができます。ERC-1155ではそれぞれのトークンの種類ごとにid番号が割り当てられます。
ERC-721では個々のNFTごとにidが割り当てられていたものが、ERC-1155ではトークンの種類ごとにidが割り振られます。
わかりにくいので図にしましょう。
例えば、ERC-20では同じコントラクトで発行されるサルのNFTそれぞれにid番号が割り振られます。
一方、ERC-1155では同じコントラクトで発行されるサルという種類のトークン(NFT)はid番号で1を、トラという種類のトークン(NFT)はidは2といった形でidが付けられます。ERC-1155では、割り振られるidごとにトークンの種類を区別して管理することになります。
例えばあるゲーム内で使えるコインをid 1のトークンとして1000個発行したとすると、このid 1のコインはほかのid 1のコインと同じとして扱うことができ、代替可能でありERC-20トークンのような扱い方ができます。
一方、トラのトークン(NFT)にid 3を割り振り、ネコのトークン(NFT)をid 4とした場合、トラのトークンとネコのトークンはidが別のため代替不可能ということになります。
※ここで注意ですが、上記の説明する上での便宜上、NFTと記載していますが正確には同じid同士では代替可能なトークンであり、NFT(代替不可能なトークン)というよりは厳密にはセミファンジブルトークンと呼んだ方が適切です。(NFTは同じ種類でもひとつづつにidが振られ代替不可能なため)俗称としてERC-1155によるトークンはNFTと呼ばれることがあり、技術的には代替可能なものについてもNFTと呼ばれることもあるために、ここではわかりやすくNFTと記載していたりします。
最後にGithubを見てみると、やはりERC-20と似ている箇所が多くあることがわかります。興味がある方はぜひコントラクトもチェックしてみてください。
Github : https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/ERC1155/ERC1155.sol
今回はERC-1155についてご紹介しました。







