ERC-1155: Мультитокенний стандарт

Стандарт Ethereum для управління багатьма типами токенів в одному контракті.

Замість того, щоб створювати окремий контракт для кожного меча чи кожної монети в грі, розробники використовують ERC-1155. Це значно дешевше для користувачів, оскільки дозволяє передавати кілька різних предметів за одну транзакцію (batch transfer).

        graph LR
  Center["ERC-1155: Мультитокенний стандарт"]:::main
  Pre_erc_20["erc-20"]:::pre --> Center
  click Pre_erc_20 "/terms/erc-20"
  Pre_erc_721["erc-721"]:::pre --> Center
  click Pre_erc_721 "/terms/erc-721"
  Pre_smart_contract["smart-contract"]:::pre --> Center
  click Pre_smart_contract "/terms/smart-contract"
  Rel_nft["nft"]:::related -.-> Center
  click Rel_nft "/terms/nft"
  Rel_metaverse["metaverse"]:::related -.-> Center
  click Rel_metaverse "/terms/metaverse"
  Rel_erc_20["erc-20"]:::related -.-> Center
  click Rel_erc_20 "/terms/erc-20"
  classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
  classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
  classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
  classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
  linkStyle default stroke:#4b5563,stroke-width:2px;

      

🧒 Простими словами

До появи ERC-1155, якщо ви хотіли купити газовану воду (взаємозамінну) і квиток у кіно (невзаємозамінний), вам доводилося йти в два різні магазини. ERC-1155 — це як супермаркет, де ви можете купити і те, і інше, плюс ще 10 речей, і заплатити за все на одній касі.

🤓 Expert Deep Dive

ERC-1155 використовує єдиний маппінг (uint256 id => mapping(address => uint256 balance)) для відстеження всіх балансів. Щоб розрізняти NFT і звичайні токени, NFT просто мають пропозицію 1. Він значною мірою покладається на хук onERC1155Received для забезпечення безпечних переказів на контракти. Використовується в ігрових інвентарях та токенізації RWA.

🔗 Пов'язані терміни

Попередні знання:

📚 Джерела