﻿---
title: "Газ и комиссии за транзакции"
description: "Руководство с учетом версии протокола: единицы газа, внутренняя стоимость и стоимость исполнения, лимиты EIP-1559, сжигание базовой комиссии, приоритетная комиссия, REVERT, исчерпание газа, возвраты, blob-газ и компоненты комиссий L2."
image: "https://wiki.fcontext.com/og.png"
---

> Documentation Index
> Fetch the complete documentation index at: https://wiki.fcontext.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Газ и комиссии за транзакции

> Только в образовательных целях; не является инвестиционным советом или инвестиционной рекомендацией. Инвестиции могут привести к убыткам.

<a id="answer"></a>

## Краткий ответ

Газ — протокольная единица учета работы исполнения и доступа к состоянию; комиссия за газ — денежная сумма, рассчитанная как произведение оплачиваемых единиц газа и цены единицы. В Ethereum с EIP-1559 `effectiveGasPrice = min(maxFeePerGas, baseFeePerGas + maxPriorityFeePerGas)`, комиссия за исполнение равна `gasUsed * effectiveGasPrice`, базовая часть сжигается, а приоритетная направляется получателю комиссии блока. Лимит газа и предельные цены разрешают максимумы, а не задают автоматически списываемые суммы.

Фактический расход зависит от calldata, пути opcodes, расширения памяти, холодного и теплого доступа к состоянию, изменений хранилища, вложенных вызовов, прекомпилированных контрактов, успеха или сбоя, возвратов и активной версии протокола. Более высокая цена может повысить конкурентоспособность включения, но не исправляет REVERT, недостаточный лимит, вредоносный контракт, устаревшую котировку или неверную calldata. Blob-транзакции и многие L2 добавляют отдельные компоненты за данные или протокол, которые нельзя автоматически считать газом EVM.

<a id="mechanism"></a>

## Как это работает

1. Зафиксируйте сеть, версию протокола, блок или тег состояния, тип транзакции, отправителя, nonce, адрес назначения, value, calldata, список доступа, blob-поля, газовый актив и валюту комиссии. Укажите, относится ли расчет к L1-транзакции, исполнению L2, публикации данных, выводу или составному маршруту.
2. Восстановите внутренний газ до исполнения: конверт транзакции, стоимость байтов calldata, создание контракта, список доступа и накладные расходы типа. Если лимит меньше внутреннего газа или отправитель не проходит проверку максимальной стоимости, транзакция отклоняется до включенного исполнения, а не включается с последующим откатом.
3. Проследите исполнение по целевой версии протокола. Учтите динамическую стоимость opcodes, расширение памяти, холодные и теплые счета или слоты, `SSTORE`, передачу газа вызовам, перевод стоимости, прекомпилированные контракты, журналы и возвраты. Одна функция ABI при разном состоянии может пройти разные ветви и израсходовать разный газ.
4. Разделяйте результаты. Успешное исполнение фиксирует эффекты. `REVERT` откатывает неудачный контекст и может вернуть неиспользованный газ его кадра; исключительная остановка из-за исчерпания газа обычно потребляет весь переданный кадру газ. Включенный сбой верхнего уровня все равно расходует nonce и оплачиваемый газ, хотя состояние контракта, перевод стоимости и журналы откатываются.
5. Оцените газ исполнения. Для транзакции типа 2 вычислите эффективную цену из базовой комиссии, предела приоритета и общего предела, затем разделите оплату на сжигаемую базовую и приоритетную части. Отличайте неиспользованный газ и незатраченный запас ценового лимита от протокольного возврата за допустимую очистку состояния, ограниченного действующим пределом.
6. Отдельно оцените прочие рынки комиссий. Blob-транзакция платит за исполнение плюс `blobGasUsed * blobGasPrice` с ограничением `maxFeePerBlobGas`; базовая blob-комиссия меняется отдельно. Пользовательская комиссия L2 может включать исполнение L2, сжатые данные L1 или blob, сбор оператора или протокола и надбавки по формулам и коэффициентам конкретного развертывания и обновления.
7. Сверьте оценку, включение и квитанцию. До подписи проверьте баланс относительно value и максимально разрешенных комиссий, симулируйте на закрепленном состоянии и задайте ограниченные пределы. После включения запишите лимит, расход из квитанции, эффективную цену, базовую и приоритетную комиссии, возвраты, blob-газ, поля L2, статус и изменение баланса; отдельно учитывайте ошибку оценки, замену и финальность.

<a id="example"></a>

## Примеры расчета

- **Успешная транзакция типа 2 и пределы.** Лимит равен `120,000`, расход `70,000`, базовая комиссия `25 gwei`, максимальная приоритетная `3 gwei`, максимальная общая `40 gwei`. Эффективная цена — `min(40, 25 + 3) = 28 gwei`; фактическая комиссия — `70,000 * 28 gwei = 0.001960 ETH`: `0.001750 ETH` сжигается, `0.000210 ETH` составляет приоритетную часть. Максимальное разрешение — `120,000 * 40 gwei = 0.004800 ETH`; неиспользованные `50,000 gas` и запас ценового лимита не являются протокольным возвратом за очистку.
- **REVERT и исчерпание газа.** У двух включенных вызовов лимит `100,000`, эффективная цена `30 gwei`. Вызов A выполняет `REVERT`, когда расход в квитанции достигает `60,000`, поэтому комиссия равна `60,000 * 30 gwei = 0.001800 ETH`. Вызов B исчерпывает весь лимит, поэтому комиссия равна `100,000 * 30 gwei = 0.003000 ETH`. Оба сбоя верхнего уровня откатывают эффекты и расходуют nonce, но REVERT может сохранить неиспользованный газ, а исчерпание — нет.
- **Предел возврата.** В учебном примере для EIP-3529 исполнение до возврата потребляет `100,000 gas`, а счетчик возврата равен `30,000 gas`. Применяется не более `100,000 / 5 = 20,000 gas`, поэтому оплачивается `100,000 - 20,000 = 80,000 gas`. При `20 gwei` комиссия равна `0.001600 ETH`, а не `0.002000 ETH`, экономия — `0.000400 ETH`; правила и допустимые операции зависят от версии протокола.
- **Отдельный рынок blob-комиссии.** Гипотетическая транзакция использует `100,000` газа исполнения по `20 gwei` и два blob. При `131,072 blob gas/blob` расход blob-газа равен `262,144`; при цене `5 gwei` blob-комиссия — `262,144 * 5 gwei = 0.00131072 ETH`. Исполнение стоит `0.002000 ETH`, итого протокольная комиссия — `0.00331072 ETH`. Цена `5 gwei` условна; blob-комиссия не является приоритетной выплатой валидатору или полной сквозной комиссией пользователя L2.

<a id="risks"></a>

## Риски

- Неверная сеть, версия протокола, газовый актив, тип транзакции или валюта комиссии.
- Смешение единиц газа, wei, gwei, ETH и фиатных пересчетов.
- Принятие лимита газа за ожидаемую или фактическую комиссию.
- Непрохождение проверок внутреннего газа или максимальной стоимости.
- Устаревшая оценка после изменения состояния, базовой комиссии или calldata.
- Лимит ниже потребности фактической ветви исполнения.
- Предположение, что более высокая цена газа предотвращает REVERT.
- Смешение REVERT, исчерпания газа, недопустимого opcode и предварительного отклонения.
- Пропуск обработанного сбоя дочернего вызова при статусе верхнего уровня `1`.
- Ошибка в цене холодного и теплого доступа или неполный список доступа.
- Игнорирование памяти, передачи газа, прекомпилированных контрактов или журналов.
- Применение устаревших возвратов за хранилище или превышение их предела.
- Смешение неиспользованного газа или запаса лимита с протокольным возвратом.
- Максимальная комиссия ниже базовой комиссии блока включения.
- Переплата приоритета без учета политики сборщика блока или секвенсора.
- Отсутствие нативного газового актива при наличии других активов.
- Пропуск blob-газа, его предела или платы за доступность данных.
- Перенос формулы исполнения, данных, коэффициентов и оператора одной L2 на все L2.
- Игнорирование гонок замены, nonce, удаления транзакции и резервирования баланса.
- Принятие оплаты или успеха за доказательство безопасности контракта или финальности.

<a id="misconceptions"></a>

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

- Газ составляет процент от переводимой стоимости.
- Повышение лимита обязательно увеличивает списание.
- Высокий максимум или приоритет гарантирует успешное исполнение.
- Неиспользованное разрешение и возврат за очистку — один механизм.
- Комиссия L2 равна только локальному газу EVM, а blob-газ — обычный газ исполнения.

<a id="related"></a>

## Похожие темы

- [Blob-комиссии и стоимость роллапа](/ru/crypto/blob-fee-rollup-cost/)
- [Виртуальная машина Ethereum](/ru/crypto/evm/)
- [Симуляция транзакций](/ru/crypto/transaction-simulation/)

<a id="sources"></a>

## Источники

- [Ethereum gas and fees: technical overview](https://ethereum.org/developers/docs/gas/) - Ethereum.org (дата обращения: 2026-08-12)
- [Transactions](https://ethereum.org/developers/docs/transactions/) - Ethereum.org (дата обращения: 2026-08-12)
- [EIP-1559: Fee market change for ETH 1.0 chain](https://eips.ethereum.org/EIPS/eip-1559) - Ethereum Improvement Proposals (дата обращения: 2026-08-12)
- [EIP-2929: Gas cost increases for state access opcodes](https://eips.ethereum.org/EIPS/eip-2929) - Ethereum Improvement Proposals (дата обращения: 2026-08-12)
- [EIP-3529: Reduction in refunds](https://eips.ethereum.org/EIPS/eip-3529) - Ethereum Improvement Proposals (дата обращения: 2026-08-12)
- [EIP-4844: Shard Blob Transactions](https://eips.ethereum.org/EIPS/eip-4844) - Ethereum Improvement Proposals (дата обращения: 2026-08-12)
- [Execution Engine](https://specs.optimism.io/protocol/exec-engine.html) - OP Stack Specification (дата обращения: 2026-08-12)
- [Transaction fees on OP Mainnet](https://docs.optimism.io/op-stack/transactions/fees) - Optimism Documentation (дата обращения: 2026-08-12)

Source: https://wiki.fcontext.com/ru/crypto/gas-fee/index.mdx
