Кожна транзакція Ethereum включає комісію — яку зазвичай називають «комісія за газ» — яку потрібно сплачувати в ETH. Але якщо ви подивилися на свій гаманець MetaMask або провідник блоків, ви побачили ці комісії, вказані в "Gwei", а не в ETH. І якщо ви коли-небудь отримували невелику суму ETH або вивчали внутрішню роботу смарт-контракту, можливо, ви стикалися з «Вей». Розуміння зв’язку між цими одиницями має важливе значення для к��жного, хто взаємодіє з мережею Ethereum.

Таблиця номіналу 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.

Проміжні блоки (Kwei, Mwei, Szabo, Finney) названі на честь піонерів обчислювальної техніки та криптографії: Чарльза Беббіджа, Ади Лавлейс, Клода Шеннона, Ніка Сабо та Хела Фінні.

Чому Gwei має значення для газу

Плата за газ ��� це вартість обчислювальної роботи в мережі Ethereum. Кожна операція — надсилання ETH, взаємодія зі смарт-контрактом, карбування NFT — споживає певну кількість «одиниць газу». Користувач сплачує за ці одиниці газу за тарифом, указаним у Gwei.

Gwei використовується для ціноутворення на газ, оскільки:

  1. Ціни на газ зазв��чай знаходяться в діапазоні 1–200 гвей
  2. Виражати однакові значення в ETH (від 0,000000001 до 0,0000002 ETH) незручно
  3. Вираз у Вей (від 1 000 000 000 до 200 000 000 000) також непрактичний

Gwei (billion-Wei) найкраще: зрозумілі людині числа для типових умов мережі.

Формула плати за газ

Загальна вартість газу для вашої транзакції:

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

Ключове слово ether у Solidity є зручним множником (×10¹⁸). Розробники контрактів повинні бути обережними, щоб конвертувати суми ETH, які бачать користувачі, у Wei перед порівнянням або арифметикою, а також конвертувати Wei назад у ETH для відображення.

Ця система одиниць вимірювання — хоч і заплутана спочатку — запобігає цілому класу помилок округлення, які були б катастрофічними у фінансових контрактах, що переміщують вартість у мільйони доларів.