Semi-fungible tokens Кратко
Вступление
На данный момент в блокчейне ТОН идет обсуждение стандарта Semi-fungible токенов. И если концепция NFT и Jetton (взимозаменяемые токены в TON) интуитивна понятна, то с пониманием Semi-fungible возникают проблемы. Поэтому в этой небольшой статье мы рассмотрим: - что такое Полувзаимозаменяемые (Semi-fungible token) - как это реализовано в блокчейне Ethereum - какие компании/приложения используют такой стандарт
Что такое Semi-fungible токены
Давайте представим, что мы с вами делаем игру на NFT, где есть расходники в виде оружия и патронов. Тогда патроны будут взаимозаменяемыми токенами, а оружие невзаимозаменяемым. И вроде бы все отлично, но, чтобы наш персонаж смог это все купить в магазине, ему придется это покупать патроны и оружие разными транзакциям, а также патроны и оружие будет разными коллекциями, так как один предмет взаимозаменяем, а другой нет.
Данная проблема привела к необходимости создания стандарта полувзаимозаменяемых токенов. Подобный стандарт позволил бы отправлять любое количество элементов (не важно взаимозаменяемых или нет) одному или нескольким получателям в одной транзакции.
Также все элементы, хранились бы в одном смарт-контракте коллекции, чтобы было бы несомненно удобно.
Как это работает в Ethereum
В Ethereum стандартом полувзаимозаменяемых токенов является ERC-1155 . Стандарт появился, благодаря компании разработчику блокчейн игр Enjin. Разработчикам игр приходится создавать тысячи типов токенов и именно поэтому им понадобился новый стандарт.
Стандарт спроектирован так, чтобы было легко "смешивать" взаимозаменяемые и невзаимозаменяемые токены в рамках одного контракта. Из-за этого возможна сильная оптимизация расхода газа. В данной статье есть примеры.
Функциональность, описываемая стандартом следующая: - Batch Transfer: Передача нескольких активов за одну транзакцию. - Batch Balance: Получение балансов нескольких активов за один вызов. - Batch Approval: Предоставление доступа к нескольким активам за раз - Hooks: События для нескольких активов (Хук на событие) - NFT Support: механика для комбинации взаимозаменяемых и невзаимозаменяемых токенов - Safe Transfer Rules: "безопасная" передача токенов (что это описано здесь)
В каких приложениях это используется
Известные случаи использования полувзаимозаменяемых токенов это игры, например,
- Enjin
- Horizon
Обсуждение в TON
Заключение
Итак, Стандарт полувзаимозаменяемые токены - это стандарт, описывающий интерфейс для контрактов, управляющих несколькими типами токенов. Один развернутый контракт может включать любую комбинацию взаимозаменяемых токенов, невзаимозаменяемых токенов или других конфигураций. Стандарт позволяет экономить газ и удобен для игр на блокчейне.