Стандарты токенов: как устроены token standards в Ethereum и других блокчейнах

Стандарт токена (token standard) — это набор правил и интерфейсов для цифровых токенов в блокчейне.

Стандарт определяет:

  • какие функции должен реализовывать контракт токена (перевод, просмотр баланса и т.д.);
  • какие события он должен генерировать;
  • как с токеном взаимодействуют кошельки, биржи и DeFi-протоколы.

В экосистеме Ethereum наиболее известны ERC-стандарты: ERC-20, ERC-721, ERC-1155, ERC-777 и др. Они работают поверх EVM и задают «общий язык» для токенов и приложений.

Стандарты токенов: как устроены token standards в Ethereum и других блокчейнах

Зачем нужны стандарты токенов

Без стандартизации каждый токен-контракт:

  • имел бы свой собственный, уникальный интерфейс;
  • требовал бы отдельной интеграции в каждый кошелёк или протокол;
  • усложнял бы разработку и аудит.

Стандарты решают это:

  • Совместимость.

Любое приложение, понимающее стандарт (например, ERC-20), может работать с любым токеном, реализующим этот стандарт.

  • Повторное использование инструментов.

Одни и те же библиотеки, кошельки, блок-эксплореры и DeFi-протоколы обслуживают сотни и тысячи токенов.

  • Упрощение аудита и безопасности.

Хорошо известные шаблоны кода проще анализировать и проверять на уязвимости.

  • Предсказуемый UX.

Пользователь понимает, чего ожидать от «обычного ERC-20 токена» или «NFT по ERC-721».

ERC-стандарты в Ethereum

В Ethereum семейство стандартов называется ERC (Ethereum Request for Comments). Новые стандарты появляются через предложения в сообществе и проходят процесс согласования.

Основные типы:

  • ERC-20 — fungible-токены.
    • базовый стандарт «заменяемых» токенов (один токен = другой);
    • используется для:
      • криптовалют на базе Ethereum,
      • DeFi-токенов (LP-токены, governance-токены),
      • стейблкоинов (стейблкоины).
  • ERC-721 — невзаимозаменяемые токены (NFT).
    • каждый токен уникален (ID → отдельный объект);
    • используется для:
      • коллекционных NFT,
      • цифрового искусства,
      • игровых предметов,
      • токенизации уникальных прав и активов.
  • ERC-1155 — мульти-токен-стандарт.
    • позволяет в одном контракте держать:
      • и fungible-токены,
      • и NFT;
    • эффективен для игр и маркетплейсов:
      • меньше транзакций,
      • меньше затрат на газ.
  • ERC-777 — «умные» токены с hook-ами и операторами.
    • расширяет модель ERC-20:
      • хуки при отправке/получении,
      • операторы, которые могут управлять токенами пользователя;
    • даёт больше гибкости, но сложнее по безопасности и поэтому менее распространён.

Помимо них есть десятки других ERC (для платежных каналов, подписей, метаданных и т.д.), но именно эти стандарты формируют основу DeFi и NFT-экосистемы.

Как строится стандарт токена (на примере ERC)

Типичный token standard описывает:

  • Интерфейс функций
    • обязательный минимум:
      • totalSupply — общее количество токенов;
      • balanceOf(address) — баланс адреса;
      • transfer(address,uint256) — перевод;
      • дополнительные функции (allowance, approve, transferFrom и др.).
  • События (events)
    • например:
      • Transfer — событие перевода;
      • Approval — событие изменения разрешения.
  • Инварианты и ожидания
    • что считается корректным поведением;
    • как реагировать на ошибки;
    • какие значения нельзя допускать (например, отрицательные балансы).

Разработчик токена обязан реализовать указанный интерфейс; всё остальное — на его усмотрение (эмиссия, блокировки, механика комиссий и т.д.).

Стандарты токенов за пределами Ethereum

Хотя терминологию часто берут из Ethereum, аналогичные идеи есть в других блокчейнах:

  • EVM-совместимые сети (L2 и L1)

В сетях на базе EVM (L2-роллапах и EVM-чейнах) используются те же ERC-стандарты:

  • Не-EVM блокчейны

Имеют свои стандарты:

  • аналоги fungible-токенов и NFT;
  • собственные интерфейсы и правила;
  • но идея остаётся прежней:
  • задать единые правила для интеграции токенов во все приложения сети.

При кросс-чейн операциях важен учёт того, какой стандарт реализует исходный и целевой токен, особенно при работе с мостами (см. кросс-чейн мост и риски мостов).

Почему стандарты важны для DeFi и NFT

Для DeFi и NFT-экосистем стандарты токенов — критичная инфраструктура:

  • Децентрализованные биржи и пулы ликвидности
    • работают с любыми токенами, реализующими нужный интерфейс;
    • не нужно вручную добавлять поддержку каждого нового актива.
  • NFT-маркетплейсы
    • используют стандарты вроде ERC-721 и ERC-1155;
    • умеют отображать и торговать миллионами коллекций без индивидуальной интеграции.
  • Кошельки и DeFi-дашборды
    • показывают балансы и историю транзакций по стандартному набору событий;
    • могут подписывать стандартные транзакции без кастомного кода под каждый токен.

Именно благодаря стандартам токены стали «первоклассным объектом» в экосистеме блокчейнов, а не просто произвольным кодом в отдельных контрактах.

FAQ

Зачем придумывать новые стандарты, если уже есть ERC-20 и ERC-721?

Новые стандарты появляются, когда базовых недостаточно: нужны мульти-токены (ERC-1155), «умные» токены с hook-ами (ERC-777), специальные форматы для биллинга, билетов, RWA-активов и т.д. При этом старые стандарты продолжают использоваться там, где они удобны и достаточно функциональны.

Должен ли каждый токен строго соответствовать стандарту?

Нет, но нестандартные токены хуже интегрируются с экосистемой: многие кошельки, DEX и DeFi-протоколы просто не будут знать, как с ними работать. Поэтому отклонения от стандарта обычно делаются только при очень веских причинах.

Почему одни стандарты приживаются, а другие — нет?

Стандарт живёт, только если его поддерживают:

  • разработчики токенов,
  • кошельки и протоколы,
  • аудиторы и tooling.

Если стандарт слишком сложен, рискован по безопасности или не даёт явного преимущества, экосистема может остаться на уже знакомых решениях, как это произошло с ERC-777 по сравнению с ERC-20.

См. также

Task Runner