Каждая транзакция Ethereum включает в себя комиссию, обычно называемую «газовой комиссией», которая должна быть уплачена в ETH. Но если вы посмотрели на свой кошелек MetaMask или обозреватель блоков, вы увидели, что эти комиссии указаны в «Gwei», а не в ETH. И если вы когда-либо получали небольшое количество ETH или изучали внутреннюю работу смарт-контракта, вы, возможно, сталкивались с «Wei». Понимание взаимоотношений между этими единицами важно для всех, кто взаимодействует с сетью Ethereum.
Таблица номиналов Эфириума
В Ethereum используется иерархическая система номиналов, аналогичная соотношению доллар/цент, но с большим количеством промежуточных единиц. Базовой единицей является Вэй — наименьшая неделимая единица Эфира.
| Unit | Wei Value | ETH Value | Common Use |
|---|---|---|---|
| Wei | 1 | 0.000000000000000001 ETH | Smart contracts, internal accounting |
| Kwei (Babbage) | 1,000 | 10⁻¹⁵ ETH | Rare |
| Mwei (Lovelace) | 1,000,000 | 10⁻¹² ETH | Rare |
| Gwei (Shannon) | 1,000,000,000 | 0.000000001 ETH | Gas prices |
| Szabo | 1,000,000,000,000 | 0.000001 ETH | Rare |
| Finney | 10¹⁵ | 0.001 ETH | Micropayments |
| Ether (ETH) | 10¹⁸ | 1 ETH | Display, trading, pricing |
Ключевой вывод: 1 ETH = 1 000 000 000 Gwei = 1 000 000 000 000 000 000 Wei.
Промежуточные единицы (Квей, Мвей, Сабо, Финни) названы в честь пионеров вычислительной техники и криптографии: Чарльза Бэббиджа, Ады Лавлейс, Клода Шеннона, Ника Сабо и Хэла Финни.
Почему Gwei важен для газа
Плата за газ — это стоимость вычислительной работы в сети Ethereum. Каждая операция — отправка ETH, взаимодействие со смарт-контрактом, выпуск NFT — потребляет определенное количество «газовых единиц». Пользователь платит за эти газовые единицы по тарифу, указанному в Gwei.
Gwei используется для определения цен на газ, потому что:
- Цены на бензин обычно находятся в диапазоне 1–200 гвей.
- Выражать одни и те же значения в ETH (от 0,000000001 до 0,0000002 ETH) громоздко.
- Выражение в Вэй (от 1 000 000 000 до 200 000 000 000) столь же непрактично
Gwei (миллиарды вэй) попадает в золотую середину: удобочитаемые цифры для типичных сетевых условий.
Формула платы за газ
Общая стоимость газа для вашей транзакции составляет:
Gas Fee (ETH) = Gas Units Used × Gas Price (Gwei) ÷ 1,000,000,000
Начиная с EIP-1559 (август 2021 г.), плата за газ состоит из двух компонентов:
Total Fee = (Base Fee + Priority Fee) × Gas Units Used
- Базовая плата: Минимальная необходимая плата, алгоритмически устанавливаемая сетью и сжигаемая (уничтожаемая).
- Приоритетный сбор (совет): Дополнительный дополнительный платеж, стимулирующий валидаторов быстрее включать вашу транзакцию
Пример:
- Газовые единицы для простого перевода ETH: 21 000
- Базовая плата: 15 гвей.
- Плата за приоритет: 2 гвэй.
- Общая цена на газ: 17 гвэй
Gas fee = 21,000 × 17 Gwei = 357,000 Gwei
= 357,000 ÷ 1,000,000,000 ETH
= 0.000357 ETH
При цене ETH в 3000 долларов США: 1,07 доллара США за перевод.
Типичные затраты на газ по типам транзакций
Использование газа зависит от сложности транзакции: простые переводы ETH используют меньше всего, сложные взаимодействия со смарт-контрактами используют больше всего.
| Transaction Type | Gas Units | Cost at 20 Gwei | Cost at 100 Gwei |
|---|---|---|---|
| ETH transfer | 21,000 | 0.00042 ETH | 0.0021 ETH |
| ERC-20 token transfer | 45,000–65,000 | 0.0013 ETH | 0.0065 ETH |
| Uniswap token swap | 100,000–150,000 | 0.003 ETH | 0.015 ETH |
| NFT mint | 100,000–250,000 | 0.005 ETH | 0.025 ETH |
| Complex DeFi interaction | 200,000–500,000+ | 0.01 ETH | 0.05 ETH |
При ETH = 3000 долларов США своп Uniswap по цене 100 Gwei стоит примерно 45 долларов — значительная стоимость, которая делает небольшие сделки экономически нежизнеспособными.
Советы по снижению платы за газ
Отслеживайте цены на бензин и время транзакций. Цены на газ следуют предсказуемым закономерностям: рабочие часы в США в будние дни стоят дорого; поздно вечером и в выходные дни (UTC) дешевле. Такие инструменты, как EthGasStation, Blocknative и трекер газа Etherscan, показывают цены на газ в реальном времени и исторические цены.
Установите лимит газа, а не только цену на газ. Лимит газа – это максимальное разрешенное количество единиц газа. Установка слишком низкого значения приведет к сбою транзакции (вы все равно платите газ за неудачное вычисление). Правильная установка гарантирует успех. MetaMask оценивает это автоматически.
Используйте сети уровня 2. Arbitrum, Optimism, Polygon и Base предлагают транзакции, совместимые с Ethereum, за 1–10 % от стоимости газа в основной сети. Для рутинных переводов и взаимодействия с DeFi L2 имеет экономический смысл для сумм менее 1000–5000 долларов США.
Пакетные транзакции. Некоторые протоколы допускают несколько действий в одной транзакции, разделяя фиксированные базовые издержки. Это особенно актуально для пакетной чеканки NFT или шаблонов утверждения нескольких токенов.
Оптимизация платы за приоритет. В периоды низкой перегрузки плата за приоритет в размере 0,1–0,5 Gwei достаточна для включения в следующий блок. Увеличивайте его только тогда, когда вам нужно быстрое подтверждение.
Варианты использования разработчиками
В смарт-контрактах Ethereum все значения обрабатываются в Wei, чтобы избежать арифметических ошибок с плавающей запятой. Solidity (основной язык смарт-контрактов) не поддерживает десятичные дроби, поэтому:
// Sending 0.1 ETH in a contract
uint256 amount = 0.1 ether; // = 100,000,000,000,000,000 Wei
Ключевое слово «эфир» в Solidity — это множитель удобства (×10¹⁸). Разработчики контрактов должны быть осторожны, конвертируя суммы ETH, доступные пользователю, в Wei перед сравнением или арифметикой, а также конвертировать Wei обратно в ETH для отображения.
Эта система единиц, хотя на первый взгляд и сбивает с толку, предотвращает целый класс ошибок округления, которые были бы катастрофическими в финансовых контрактах, стоимость которых составляет миллионы долларов.