Всяка транзакция с Ethereum включва такса — обикновено наричана „такса газ“ — която трябва да бъде платена в ETH. Но ако сте погледнали портфейла си в MetaMask или block explorer, сте виждали тези такси цитирани в „Gwei“, а не в ETH. И ако някога сте получавали малко количество ETH или сте изследвали вътрешната работа на интелигентен договор, може да сте срещали „Wei“. Разбирането на връзката между тези единици е от съществено значение за всеки, който взаимодейства с мрежата 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) са кръстени на пионерите в компютърната техника и криптографията: Charles Babbage, Ada Lovelace, Claude Shannon, Nick Szabo и Hal Finney.
Защо Gwei има значение за газа
Таксите за газ са разходите за изчислителна работа в мрежата Ethereum. Всяка операция — изпращане на ETH, взаимодействие с интелигентен договор, сечене на NFT — изразходва определено количество „газови единици“. Потребителят плаща за тези газови единици по тарифа, посочена в Gwei.
Gwei се използва за ценообразуване на газта, защото:
- Цените на бензина обикновено са в диапазона 1–200 Gwei
- Изразяването на същите стойности в ETH (0.000000001 до 0.0000002 ETH) е тромаво
- Изразяването във Wei (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 Gwei
- Приоритетна такса: 2 Gwei
- Обща цена на газта: 17 Gwei
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 за показване.
Тази система с единици — макар и объркваща в началото — предотвратява цял клас грешки при закръгляване, които биха били катастрофални при финансови договори, прехвърлящи стойност на милиони долари.