EIP-1559 — базовая комиссия, «tip» и сжигание в Ethereum

EIP-1559 — это реформирование комиссий в сети Ethereum, которое ввело базовую комиссию (base fee), чаевую (priority fee / tip), возврат переплаты и эластичный размер блока. С активацией в составе обновления London (05.08.2021; основной блок 12 965 000) изменился сам рынок комиссий: вместо «аукциона первой цены» появилась алгоритмическая базовая цена газа, сжигаемая протоколом, а мотивация добытчиков/валидаторов сместилась к небольшой приоритетной надбавке и внепротокольному MEV. Механизм 1559-типа затем был распространён и на другие рынки комиссий экосистемы (например, на «blob-gas» в EIP-4844).

Класс Сетевой стандарт (протокол L1)
Состояние Принят и действует на mainnet
С момента Обновление London (05.08.2021)
Что изменилось Алгоритмическая base fee (сжигается), tip валидатору, возврат переплаты, эластичные блоки
Для кого важно Пользователи кошельков, разработчики dApp/смарт-контрактов, валидаторы/инфраструктура
Связанные темы Блокчейн — как устроен распределённый реестр, Газ и комиссии, MEV, Rollups/L2, Он/офф-рамп, EIP-4844 (Proto-Danksharding): blobs и дешёвые L2-транзакции

Зачем понадобился EIP-1559

До London пользователи устанавливали единую цену газа и участвовали в «аукционе первой цены»: кто поставил выше — проходил раньше. Это создавало три проблемы:

Непредсказуемость UX. Сложно понять «сколько поставить сейчас», чтобы подтверждение прошло вовремя; многие переплачивали.

Всплески/спады. Любые «газовые шторма» порождали каскадные переоценки и волатильность платежей.

Отсутствие «ориентира цены». Не было встроенного oracle-сигнала о справедливой цене газа «прямо сейчас».

EIP-1559 решает это через двухкомпонентную оплату и динамическую базовую цену:

  • Base fee — обязательная часть цены газа, сжигается протоколом. Её величина алгоритмически подстраивается от блока к блоку так, чтобы удерживать сеть вблизи целевой заполняемости.
  • Priority fee (tip) — небольшая надбавка (чаще доли гвея), которая идёт валидатору (после Merge) как стимул поставить транзакцию выше в блоке.
  • Max fee (maxFeePerGas) — потолок, который задаёт пользователь; всё, что выше суммы base fee + tip, возвращается отправителю автоматом.

Итог: кошельки могут надёжно автоподбирать цену, пользователь видит возврат переплаты, а сеть получает «плавный» механизм регулировки нагрузки.

Как это работает: базовые понятия

Эластичность блоков. После London блоки стали эластичными по газу: есть целевой размер (target gas per block) и максимально допустимый, равный двойному таргету. Когда блоки переполнены относительно таргета, base fee растёт; когда недозаполнены — падает. Цель — удерживать среднюю заполняемость около 50% при плавной реакции на спрос.

Обновление base fee. Пусть в родительском блоке была parent_base_fee, а газ, израсходованный в этом блоке — gasUsed. Тогда:

  • если gasUsed > targetGas, новая base_fee увеличивается;
  • если gasUsed < targetGas, новая base_fee уменьшается.

Скорость изменения ограничена константой BASE_FEE_MAX_CHANGE_DENOMINATOR = 8 — т.е. не более ±12,5% за блок. Целевой газ targetGas — это половина максимума блока (эластичность ×2).

Тип транзакции. EIP-1559 добавил тип-2 (в дополнение к «legacy»/тип-0). В нём указываются maxFeePerGas и maxPriorityFeePerGas. В момент включения:

  • списывается base_fee (умноженная на gasUsed) — сжигается;
  • выплачивается priority_fee валидатору (но не выше заявленного maxPriorityFeePerGas);
  • остаток между maxFee и фактической суммой возвращается пользователю.

Куда делся «gas price»? В «legacy»-транзакциях он по-прежнему допустим — клиент просто интерпретирует его как оба параметра сразу, а «лишнее» (превышение над base fee) уходит в tip.

Формула и параметры (инженерный взгляд)

Пусть Δ = gasUsed − targetGas. Тогда базовая идея линейная:

 new_base_fee = parent_base_fee ± parent_base_fee * |Δ| / targetGas / 8 

— знак «+», если блок переполнен; «−», если недобран. Есть порог и округления (чтобы рост был как минимум на 1 wei при переполнении), а также «пол» в нуле. Константы:

Эластичность: ×2 (макс. газ в блоке = 2 × targetGas)

Деноминатор изменения: 8 (максимум ~12,5% за блок)

Таргет заполнения: 50%

Подробности и мотивация параметров разобраны в экономическом анализе и обсуждениях дизайна; ключевая цель — предсказуемая, но гибкая реакция рынка комиссий без «пилы» и затяжных перегревов.

Пример расчёта (на пальцах)

Предположим:

parent_base_fee = 100 gwei, targetGas = 15M, gasUsed = 18M (на ~20% выше таргета).

Тогда Δ/target ≈ 0,2, изменение ≈ 100 × 0,2 / 8 = 2,5 gwei.

Новая base_fee ≈ 102,5 gwei (с учётом округления вниз по правилам реализации).

Пользователь выставил maxPriorityFee = 2 gwei, а кошелёк посоветовал maxFee ≈ 2×base_fee + tip = ~207 gwei (с запасом на пару блоков). При включении он заплатит ~base_fee + tip ≈ 104,5 gwei, остальное вернётся. Такая стратегия «2×base_fee + tip» — практичная эвристика в кошельках и SDK.

Что изменилось для пользователей

  • Простая модель. Кошелёк подсказывает адекватный потолок (maxFee) и скромную чаевую (priority). Никаких догадок «сколько поставить».
  • Возврат переплаты. Вы платите не больше фактической суммы base_fee + tip: разница с maxFee возвращается автоматически.
  • Меньше «свалок» в мемпуле. Из-за детерминированной base_fee кошельки синхроннее реагируют на нагрузку, что снижает ошибочные переплаты.

Важно: EIP-1559 не обещает «низкие комиссии всегда» — он делает их предсказуемыми. Когда спрос велик, base fee растёт, и это нормально.

Что изменилось для майнеров/валидаторов

  • Кому платится что. Base fee сжигается, а tip получает производитель блока (до Merge — майнер, после Merge — валидатор).
  • MEV и порядок транзакций. Мотивация «добирать» доход смещается к MEV-стратегиям (внепротокольным), поэтому экосистема развивает анти-MEV-практики (релеи, PBS-дизайн и т.д.) — см. MEV (Maximal Extractable Value) — что это, MEV-Boost, PBS и OFA.
  • BASEFEE в EVM. Контракты и off-chain-сервисы получили опкод BASEFEE (0x48) для чтения текущей базовой комиссии прямо в EVM (полезно для прокси-прайсинга, орбитрации и т.п.).

London: что приехало вместе с EIP-1559

Обновление London включало несколько EIP’ов, которые вместе меняют как экономику, так и исполнение:

  • EIP-3198 — опкод BASEFEE для чтения базовой комиссии в EVM.
  • EIP-3529 — сокращение/отмена gas-refunds для «хитрых» паттернов (например, SELFDESTRUCT), чтобы не стимулировать мусор в состоянии.
  • EIP-3541/3554 — доп. изменения по байткоду и «бомбе сложности» (история переносов).

Смысл: 1559 исправляет рынок комиссий, а 3198/3529 и сопутствующие меры подготавливают стабильный исполнительный слой без «арбитража на рефандах» и с доступом к базовым метрикам газа.

После London и Merge: что осталось, что изменилось

  • Сжигание base fee — осталось и стало долгосрочным «обратным давлением» на эмиссию. Когда использование сети высоко, сжигание может перекрывать чистую эмиссию (особенно после снижения выпуска ETH на PoS).
  • Кто получает tip. Получателем чаевых стал валидатор (вместо майнера), остальная логика 1559 не менялась.
  • L2 и «двойной рынок комиссий». С ростом роллапов часть нагрузки уходит в L2, но публикация данных на L1 всё ещё платится L1-газом. С 2024 введён «blob-gas» с отдельной 1559-подобной base fee — см. ниже.

EIP-4844 и «второй» 1559-рынок (blob-gas)

EIP-4844 (Proto-Danksharding) добавил отдельный рынок комиссий для «блоб-данных» (данные, которые временно хранятся для L2-роллапов). Механика аналогична 1559: есть blob-base fee, которая автоматически подстраивается под спрос. Это «разводит» конкуренцию за L1-газ и снижает стоимость данных для L2, сохраняя предсказуемость.

Экономика и дизайн: почему это работает

Base fee как «резервная цена» блока. Сжигание делает ETH внутренним «залогом» пропускной способности: чем выше спрос, тем сильнее антикружение противоположной эмиссии. Это перекраивает стимулы и уменьшает «трагедию общин» по переплатам.

Линейная адаптация с мягким деноминатором. Ограничение ±12,5% на шаг гарантирует предсказуемость для кошельков и SDK: они могут выставлять maxFee с запасом на несколько блоков, почти не рискуя переплатой.

Эластичность блоков сглаживает краткосрочные пики спроса, не заставляя пользователей «стрелять по воробьям» огромными ставками.

Для любопытных: предлагались и альтернативы (напр., «экспоненциальная 1559» для иных профилей нагрузки), но в проде Ethereum использует линейную версию.

Практика для разработчиков и интеграторов

Контракты:

  • используйте опкод BASEFEE для динамического прайсинга, anti-sandwich логики и адаптивных схем комиссий;
  • не полагайтесь на «навсегда низкую» base_fee: при написании протоколов учитывайте газовые шторма и ставьте лимиты/паузы.

Кошельки/бэкенды:

  • предлагайте профили tip (низкий/средний/высокий) с адекватным «потолком» maxFee;
  • безопасная эвристика: maxFee ≈ 2 × base_fee + tip, а при «шторме» — с увеличением мультипликатора;
  • объясняйте пользователю возврат переплаты и эффективную цену газа (effective gas price).

Биржи/сервисы:

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

Распространённые заблуждения

  • «1559 снизит комиссии навсегда». Нет. Он стабилизирует UX и устраняет избыточные переплаты, но при высоком спросе base_fee будет высокой.
  • «Вся комиссия уходит валидатору». Нет. Base fee сжигается, валидатор получает лишь tip и MEV (внепротокольно).
  • «Legacy-транзакции устарели и не работают». Работают: клиенты трактуют их как maxFee = gasPrice и tip = gasPrice (с особенностями возврата).
  • «1559 сделал ETH всегда дефляционным». Не всегда. Баланс между сжиганием и выпуском зависит от нагрузки сети и эмиссии PoS; в периоды низких нагрузок чистое предложение может расти.

Взаимодействие с L2 и DeFi

  • Роллапы публикуют данные L1 (до 4844 — в calldata), конкурируя за обычный газ, что влияло на base_fee. С появлением blob-gas эта конкуренция частично разведена.
  • DeFi-протоколы учитывают «газовую обстановку»: задержки ликвидаций/арбитража при всплесках base_fee, автоподстройка комиссий, изменение параметров оракулов и лимитов.

История и вехи

  • 2019–2020 — активные дискуссии и экономический анализ механизма комиссий (за/против, параметры адаптации).
  • 05.08.2021 — активация London на mainnet (EIP-1559, EIP-3198, EIP-3529 и др.).
  • 2022 — Merge (переход к PoS): получателем чаевых становится валидатор, а сжигание base fee сохраняется.

Полужирный2024 — EIP-4844: отдельный 1559-подобный рынок blob-gas для данных L2.

FAQ

EIP-1559 снизил комиссии? Он снизил переплаты и сделал комиссии предсказуемыми, но не отменил экономику спроса/предложения: в горячие периоды базовая цена газа высока.

Зачем сжигать base fee? Чтобы превратить ресурс сети (пропускную способность) в внутреннюю стоимость ETH: сжигание синхронизирует стимулы и убирает «таксу на переплату» майнерам/валидаторам.

Как выбрать tip? Для обычных переводов хватает низкого tip, для срочных — выше. Кошельки подсказывают профиль. Простой шаблон: maxFee ≈ 2 × base_fee + tip.

Как контракту узнать base_fee? Через опкод BASEFEE (0x48). Это полезно для динамических комиссий и анти-MEV логики.

Что с L2 после 4844? Появился отдельный рынок blob-gas с 1559-подобной базовой комиссией — данные L2 теперь меньше конкурируют с обычным L1-газом.

См. также по нашей вики

База: Ethereum (ETH) — смарт-контракты, L2 и стейкинг, Блокчейн — как устроен распределённый реестр, Gas, MEV (Maximal Extractable Value) — что это, MEV-Boost, PBS и OFA, Роллапсы — оптимистические и zk: как это работает, Криптобиржи — раздел: навигация и ключевые материалы

Стандарты: Eip 3198, Eip 3529, EIP-4844 (Proto-Danksharding): blobs и дешёвые L2-транзакции

Task Runner