Типы смарт-контрактов Ethereum

ERC-20 Токен стандарта ERC-20 — это база, благодаря которой стало возможным появление множества других токенов. До появления ERC-20 все криптовалюты были уникальными, что усложняло взаимодействие между кошельками, проектами, биржами и пр. Его создание позволило стандартизировать выпуск других токенов. Чтобы сделать свой токен, программистам больше не нужно писать сложный код, достаточно описать всего 6 функций: totalSupply, которая определяет общее количество токенов. При достижении максимума, смарт-контракт перестает их выпускать. balance0f отвечает за первичное перечисление токенов любому адресу. transfer — перевод токенов индивидуальным пользователям. transferFrom — пересылка токенов от одного пользователя к другому. approve служит для проверки смарт-контракта на предмет возможности перечисления токенов. allowance отвечает за гарантию наличия достаточного количества токенов у конкретного пользователя для их пересылки на другой адрес. ERC-223 Токены ERC-223 часто называют улучшенной версией протокола ERC-20. При реализации ERC-223 была изменена функция ERC-20 — approve. В этом стандарте при отправке средств на неверный адрес, смарт-контракт их возвращает отправителю. ERC-827 Токены этого стандарта являются главным конкурентом ERC-20, при этом они имеют более информативный функционал. ERC-827 позволяют отправлять не только определенное количество криптовалюты, но и данные транзакции. Этот стандарт дает возможность сторонам подтвердить транзакцию третьей стороне, при том, что она не будет иметь доступа к приватному ключу и безопасность блокчейна не будет нарушена. Функционал токена описан в менее чем 100 строках кода. ERC-948 Токен стандарта ERC-948 был предложен в марте 2018 года Кевином Оукоки. В нем заложена модель для управления подписками в сфере e-commerce. Например, у вас оформлена ежемесячная подписка на Netflix. При использовании токенов ERC-948 ваша подписка будет оплачиваться в установленный период при наличии соответствующих средств. В отличие от ERC-20, который при подобном использовании, ежемесячно будет запрашивать у пользователя подтверждение подписки. ERC-777 Этот стандарт создан, чтобы решить несколько задач. Во-первых, в нем была реализована функция tokenReceived, которая позволяет не использовать повторную функцию одобрения, благодаря чему время транзакции сокращается в два раза. Во-вторых, его функционал позволяет отмечать подозрительные и несовместимые адреса. Кроме того, ERC-777 решил проблему несовместимости благодаря использованию метода обратной совместимости, что сделало его кросс-стандарт совместимым на платформе Ethereum. ERC-721 Эти токены были созданы специально для онлайн-игры. Впервые они использованы в игре CryptoKitties, где каждый из токенов имеет свои особенности. Каждый из представленных котов является отдельным токеном ERC-721. Как становится понятным, они были созданы для коллекционирования. ERC-821 и ERC-875 Являются продолжением стандарта ERC-721. В ERC-821 реализована функция использования более конкретизированного нейминга, чтобы не вызывать путаницы между разными видами предметов коллекционирования. ERC-875 предложил возможность отправки нескольких NFT (non-fungible tokens) в одной транзакции, при помощи присвоения каждому из них персонального индекса. Стандарт также предполагает безопасные отправку и обмен токенов, как и в случае с ERC-721.

Режим “Онлайн”