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

Ethereum Request for Comments

Ethereum Request for Comments (сокращённо ERC) — это стандарт технических спецификаций, используемый в экосистеме блокчейна Ethereum для описания правил, форматов данных и интерфейсов, которым должны следовать смарт-контракты, токены и другие компоненты сети. ERC представляет собой набор предложений, разработанных сообществом разработчиков Ethereum, и служит основой для обеспечения совместимости (интероперабельности) между различными децентрализованными приложениями (dApps) и токенами. Термин «Request for Comments» (запрос комментариев) заимствован из практики интернет-стандартов (RFC) и подчёркивает открытый, коллегиальный характер процесса принятия спецификаций.

История возникновения

Процесс стандартизации в Ethereum начался вскоре после запуска сети в 2015 году. Первоначально предложения по улучшению сети оформлялись в виде Ethereum Improvement Proposals (EIP). ERC как подмножество EIP появились для формализации правил, касающихся уровня приложений, а не ядра блокчейна. Первым значимым стандартом стал ERC-20, предложенный в ноябре 2015 года разработчиком Фабианом Фогельштеллером и принятый в 2017 году. ERC-20 определил единый интерфейс для токенов, что позволило создавать взаимозаменяемые (fungible) цифровые активы, совместимые с кошельками, биржами и другими сервисами. В 2017–2018 годах, в период бума ICO (Initial Coin Offering), ERC-20 стал де-факто стандартом для выпуска токенов, что привело к массовому росту числа проектов на Ethereum.

В 2018 году был предложен ERC-721, стандарт для невзаимозаменяемых токенов (NFT), который лёг в основу рынка цифрового искусства и коллекционных предметов. В последующие годы появились десятки других ERC, охватывающих различные аспекты: от управления токенами до механизмов голосования и децентрализованных финансов (DeFi).

Процесс разработки и принятия

Стандарты ERC проходят через формальный процесс, аналогичный EIP. Любой разработчик может создать предложение, описав его в репозитории Ethereum на GitHub. Предложение проходит несколько стадий:

  1. Draft — черновик, открытый для обсуждения.
  2. Review — этап рецензирования, где сообщество и эксперты анализируют техническую реализацию.
  3. Last Call — финальный сбор комментариев.
  4. Final — принятый стандарт, который может быть реализован в смарт-контрактах.

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

Классификация и виды стандартов ERC

ERC охватывают широкий спектр функций. Основные категории включают:

Стандарты токенов

  • ERC-20 — взаимозаменяемые токены (например, USDT, UNI, LINK). Определяет функции: transfer, balanceOf, approve, totalSupply и события Transfer, Approval.
  • ERC-721 — невзаимозаменяемые токены (NFT). Каждый токен уникален и имеет идентификатор. Используется для цифрового искусства, игровых предметов, недвижимости.
  • ERC-1155 — мульти-токен стандарт, позволяющий управлять как взаимозаменяемыми, так и невзаимозаменяемыми токенами в одном смарт-контракте. Экономит газ и упрощает разработку.
  • ERC-4626 — стандарт для токенизированных доходных хранилищ (vaults), используемый в DeFi для унификации интерфейсов стейкинга и фарминга.

Стандарты для децентрализованных приложений

  • ERC-777 — расширение ERC-20 с функциями хуков (hooks) для более гибкого управления переводами и улучшенной безопасностью.
  • ERC-1363 — стандарт для токенов, которые могут выполнять действия после перевода (например, автоматическое голосование или стейкинг).
  • ERC-2612 — стандарт для разрешений на основе подписей (permit), позволяющий проводить транзакции без газа для пользователя (метатранзакции).

Стандарты для управления и голосования

  • ERC-1202 — стандарт для голосования в DAO (децентрализованных автономных организациях).
  • ERC-5805 — стандарт для делегированного голосования с использованием токенов.

Стандарты для метаданных и идентификации

  • ERC-721 Metadata — расширение для хранения URI метаданных (изображения, описание) для NFT.
  • ERC-1155 Metadata — аналогичный стандарт для мульти-токенов.
  • ERC-725 — стандарт для идентификации (Identity), используемый для создания децентрализованных профилей (например, в проекте ERC-725 Alliance).

Прочие стандарты

  • ERC-4337 — стандарт для абстракции аккаунтов (account abstraction), позволяющий создавать кошельки с программной логикой, не требующие seed-фраз.
  • ERC-20 Permit (включён в ERC-2612) — упрощение транзакций для DeFi.
  • ERC-3643 — стандарт для токенизированных ценных бумаг (security tokens), с функциями проверки KYC/AML.

Применение и значение

ERC стали фундаментом экосистемы Ethereum. Без них невозможно было бы создание совместимых децентрализованных бирж (DEX), таких как Uniswap, или протоколов кредитования, как Aave. Стандарты обеспечивают:

  • Совместимость: токены, выпущенные по одному стандарту, могут использоваться в любых приложениях, поддерживающих этот стандарт.
  • Безопасность: проверенные временем интерфейсы снижают риск ошибок в смарт-контрактах.
  • Эффективность: разработчики не изобретают заново базовые функции, а используют готовые шаблоны.
  • Масштабируемость: ERC-20 и ERC-721 позволили создать рынки с оборотом в миллиарды долларов.

Наиболее массовое применение ERC-20 получили в сфере ICO (2017–2018) и DeFi (с 2020 года). ERC-721 стали основой для рынка NFT, который в 2021 году достиг пика популярности, с продажами цифровых произведений искусства на миллионы долларов. ERC-1155 используется в играх (например, в проекте Decentraland) и для коллекционных карточек.

Критика и ограничения

Несмотря на успех, ERC имеют недостатки:

  • Фрагментация: существует множество конкурирующих стандартов для одних и тех же задач (например, ERC-777 vs ERC-1363), что иногда затрудняет выбор.
  • Сложность обновления: принятые стандарты редко изменяются, что может приводить к устареванию (например, ERC-20 не поддерживает метатранзакции без дополнительных расширений).
  • Газовые затраты: некоторые стандарты (например, ERC-721) требуют больше газа для операций, что делает их дорогими в периоды высокой загрузки сети.
  • Безопасность: ошибки в реализации стандартов (например, в ERC-20 были обнаружены уязвимости, связанные с переполнением целых чисел) приводили к взломам и потерям средств.

Влияние на другие блокчейны

Концепция ERC была заимствована другими блокчейнами, поддерживающими смарт-контракты. Например, сети, совместимые с Ethereum Virtual Machine (EVM) — Binance Smart Chain (ныне BNB Chain), Polygon, Avalanche, Fantom — используют те же стандарты ERC-20, ERC-721 и ERC-1155. Это обеспечивает переносимость приложений и токенов между разными блокчейнами. Некоторые проекты, такие как TRON и NEO, разработали собственные аналоги (TRC-20, NEP-5), но они не являются прямыми копиями ERC.

Перспективы развития

С переходом Ethereum на алгоритм Proof-of-Stake (после слияния в 2022 году) и внедрением решений второго уровня (Layer 2), таких как Optimism и Arbitrum, роль ERC сохраняется. Активно разрабатываются новые стандарты, например, для улучшения приватности (ERC-7521), для токенизации реальных активов (RWA) и для децентрализованных идентификаторов (DID). Ожидается, что ERC-4337 (абстракция аккаунтов) может изменить способы взаимодействия пользователей с блокчейном, сделав кошельки более удобными и безопасными.

Источники

  • Ethereum Improvement Proposals (EIPs) — официальный репозиторий на GitHub.
  • Документация Ethereum Foundation — раздел «Standards».
  • Статья «ERC-20 Token Standard» на Ethereum.org.
  • Статья «ERC-721 Non-Fungible Token Standard» на Ethereum.org.
  • «A History of Ethereum Standards» — блог ConsenSys.
  • «The ERC-1155 Multi-Token Standard» — OpenZeppelin.
  • «ERC-4626: Tokenized Vaults» — Ethereum Magicians.
  • «ERC-4337: Account Abstraction Using Alt Mempool» — EIP-4337.

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

На главную BFOmetr →