Открыть сервис

Токены ERC-20: стандарт и применение

ERC-20 — это технический стандарт для смарт-контрактов в блокчейне Ethereum, определяющий единый набор правил и интерфейсов для выпуска и управления взаимозаменяемыми (fungible) токенами. Стандарт был предложен разработчиком Фабианом Фогельштеллером в ноябре 2015 года в виде предложения по улучшению Ethereum (Ethereum Request for Comments, ERC). Он описывает обязательные функции и события, которые должен реализовывать контракт токена, что обеспечивает совместимость токенов с кошельками, биржами и децентрализованными приложениями (dApps).

История и происхождение

До появления ERC-20 в экосистеме Ethereum не существовало универсального способа создания токенов. Проекты выпускали собственные контракты с уникальными интерфейсами, что затрудняло их интеграцию в сторонние сервисы. В 2015 году Фабиан Фогельштеллер опубликовал черновик стандарта, который был формализован и принят сообществом. В 2017 году стандарт получил широкое распространение благодаря буму первичных размещений монет (ICO), когда большинство новых проектов использовали именно ERC-20 для привлечения инвестиций. Это сделало стандарт де-факто основным для взаимозаменяемых токенов в сети Ethereum.

Технические характеристики

Стандарт определяет шесть обязательных функций и два события, которые должен поддерживать контракт:

  • totalSupply() — возвращает общее количество выпущенных токенов;
  • balanceOf(address account) — возвращает баланс указанного адреса;
  • transfer(address recipient, uint256 amount) — переводит токены с адреса отправителя на адрес получателя;
  • allowance(address owner, address spender) — возвращает количество токенов, которое владелец разрешил списать третьей стороне;
  • approve(address spender, uint256 amount) — разрешает третьей стороне списывать токены с баланса владельца;
  • transferFrom(address sender, address recipient, uint256 amount) — переводит токены от одного адреса к другому при наличии разрешения.

Также стандарт требует определения двух событий: Transfer (фиксирует перевод токенов) и Approval (фиксирует выдачу разрешения на списание). Дополнительные поля, такие как название токена, символ и количество десятичных знаков, не являются обязательными, но обычно реализуются для удобства отображения в интерфейсах.

Применение

Криптовалюты и стейблкоины

ERC-20 используется для создания множества криптовалют, работающих поверх сети Ethereum. Наиболее известными примерами являются стейблкоины USDT (Tether) и USDC (USD Coin), которые обеспечены фиатными валютами и используются для торговли и переводов.

Децентрализованные финансы (DeFi)

Стандарт лежит в основе протоколов децентрализованных финансов. Токены ERC-20 используются в качестве залога, средств ликвидности и расчётных единиц в кредитных протоколах, децентрализованных биржах (DEX) и автоматизированных маркетмейкерах (AMM).

Токенизация активов

ERC-20 применяется для представления прав на реальные активы — акции, недвижимость, сырьевые товары. Такие токены упрощают дробление активов и повышают ликвидность.

Управление и голосование

Многие проекты выпускают токены управления (governance tokens), которые дают держателям право голосовать по вопросам развития протокола. Примером служит токен Uniswap (UNI).

Достоинства и недостатки

К достоинствам стандарта относятся простота реализации, высокая совместимость с существующей инфраструктурой Ethereum и наличие большого количества готовых библиотек и инструментов для разработки. Однако ERC-20 имеет и недостатки. Основной проблемой является возможность случайной отправки токенов на адрес смарт-контракта, который не поддерживает их приём, что приводит к безвозвратной потере средств. Кроме того, стандарт не предусматривает механизмов заморозки активов или восстановления доступа, что критично для некоторых сценариев использования.

Альтернативные стандарты

Существуют модификации и альтернативы ERC-20, решающие отдельные проблемы. Например, стандарт ERC-223 добавляет функцию, предотвращающую потерю токенов при отправке на контракт. ERC-777 расширяет функциональность за счёт операторов и хуков, но создаёт риски для безопасности. Для невзаимозаменяемых активов применяется стандарт ERC-721, а для частично взаимозаменяемых — ERC-1155. Несмотря на появление альтернатив, ERC-20 остаётся доминирующим стандартом для взаимозаменяемых токенов в экосистеме Ethereum и используется большинством проектов.

Источники

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →