Стандарт ERC-20 — это базовый план-схема для взаимозаменяемых токенов в блокчейне Ethereum. Взаимозаменяемость означает, что каждый токен взаимозаменяем с другим токеном того же типа — например, один USDT равен по стоимости и по функциональности любому другому USDT в той же сети.
ERC-20 определяет универсальный набор правил, которому следует каждый совместимый токен. Поскольку каждый токен ERC-20 ведет себя одинаково на уровне протокола, кошельки, децентрализованные биржи (DEX), кредитные платформы, стейкинговые протоколы и другие приложения DeFi могут взаимодействовать с новыми токенами без разработки специальных интеграций для каждого из них.
Шесть обязательных функций
Смарт-контракт ERC-20 должен реализовывать шесть основных функций:
1. totalSupply()
Возвращает общее количество токенов, которое существует на данный момент.
2. balanceOf (address owner)
Возвращает баланс токенов для конкретного адреса кошелька.
3. transfer(address to, uint256 value)
Передает токены напрямую от отправителя на другой адрес.
4. transferFrom (address from, address to, uint256 value)
Передает токены с одного адреса на другой, используя предварительно одобренное разрешение (allowance). Эта функция обычно используется децентрализованными биржами и приложениями DeFi.
5. approve(address spender, uint256 value)
Разрешает другому адресу или смарт-контракту тратить до указанного количества ваших токенов от вашего имени.
6. allowance(address owner, address spender)
Возвращает оставшуюся сумму, которую одобренный получатель (spender) все еще может использовать.
Два обязательных события
Контракты ERC-20 также генерируют два стандартных события, которые отслеживают кошельки, обозреватели блокчейна и аналитические платформы.
Transfer (Передача)
Вызывается всякий раз, когда токены перемещаются с одного адреса на другой.
Одобрение (Approval)
Вызывается всякий раз, когда владелец предоставляет или обновляет разрешение на расходование через функцию approve().
Почему важен ERC-20
Стандартизация
Вместо того чтобы каждый проект придумывал свои собственные правила для токенов, ERC-20 предоставляет каждому разработчику одинаковый интерфейс. Эта стандартизация позволяет экосистеме Ethereum эффективно масштабироваться.
Взаимозаменяемость (фунгибельность)
Каждый токен идентичен любому другому токену того же смарт-контракта, что делает ERC-20 идеальным для:
Стейблкоины
Токены управления (governance tokens)
Сервисные токены (utility tokens)
Наградные токены
Внутриигровые валюты
Десятичная точность
Большинство токенов ERC-20 используют 18 десятичных знаков, хотя это значение может отличаться в зависимости от проекта.
Например:
Удобочитаемая сумма: 10 токенов
Представление on-chain: 10 × 10¹⁸ единиц
Эта высокая точность позволяет приложениям обрабатывать чрезвычайно малые доли токена с высокой точностью.
Совместимость с DeFi
Поскольку ERC-20 следует универсальному стандарту, один и тот же токен может использоваться в нескольких приложениях без изменений, включая:
Кошельки
Децентрализованные биржи (DEX)
Платформы кредитования (lending)
Платформы для yield farming (получения дохода)
Пулы ликвидности
Платежные системы
Блокчейн-обозреватели
Эта совместимость стала одним из главных факторов, которые поддержали децентрализованные финансы (DeFi) на базе Ethereum.
Точка зрения «крипто-воинов»
Понимание ERC-20 — это больше, чем просто запомнить шесть функций: оно помогает объяснить, как работает вся токеновая экономика Ethereum.
Когда вы подключаете кошелек к децентрализованному приложению, меняете токены на DEX, стейкаете активы или взаимодействуете с протоколом DeFi, эти стандартизированные функции ERC-20 работают «за кулисами».
Понимать, как работают approve(), allowance() и transferFrom(), особенно важно для безопасности, потому что многие риски при одобрении токенов возникают из-за того, что пользователи выдают смарт-контрактам чрезмерные разрешения.
Без хайпа. Без шума. Только сигнал.
Только в образовательных целях. Этот материал предназначен для объяснения технологии блокчейн и стандартов токенов, а не для предоставления финансовых или инвестиционных рекомендаций.
$ETH