Opłaty gas w Ethereum, wyjaśnione dla użytkowników samodzielnego przechowywania

·8 min czytania·Autor: SSP Editorial Team
Okladka coin-guides SSP o oplatach gas w Ethereum, z podtytulem base fee, priority fee i EIP-1559 na ciemnogranatowym i bursztynowym tle

Opłaty gas w Ethereum, wyjaśnione dla użytkowników samodzielnego przechowywania

Każde działanie w Ethereum kosztuje gas, a dla kogoś, kto przechowuje własne klucze, ta opłata decyduje, czy transakcja zostanie potwierdzona, czy utknie. Mieć opłaty gas w Ethereum wyjaśnione w prostych słowach to jedna z najbardziej przydatnych rzeczy, jakie może zrobić użytkownik samodzielnego przechowywania: gdy mechanika trafia na swoje miejsce, liczby pokazywane przez portfel przestają być zagadką i stają się decyzją, którą podejmujesz świadomie.

Ten przewodnik obejmuje, za co płacisz, wzór na opłatę, jak EIP-1559 dzieli opłatę na spalaną base fee i napiwek dla walidatora, dlaczego nawet nieudana transakcja kosztuje pieniądze oraz jak wpisują się w to SSP i tańsze łańcuchy L2. Dopiero zaczynasz z ETH w SSP? Zacznij od Ethereum w SSP, a potem wróć tutaj.

Czym właściwie jest gas

gas to jednostka, której Ethereum używa do mierzenia pracy obliczeniowej. Każda operacja ma stały koszt w gas, a sieć je sumuje: prosty przelew ETH jest tani, bo robi niewiele, podczas gdy swap lub interakcja z DeFi dotyka większej ilości kodu kontraktu i spala więcej gas. gas istnieje, ponieważ miejsce w bloku jest współdzielone i ograniczone, więc sieć wycenia popyt na to miejsce i płaci walidatorom, którzy wykonują pracę. Dokumentacja gas od Ethereum Foundation to kanoniczne źródło.

Wzór na opłatę: gas used razy gas price

Całkowita opłata za dowolną transakcję to proste mnożenie:

opłata = gas used × gas price

gas used to ile pracy wykonała transakcja; gas price to ile płacisz za jednostkę, wyrażone w gwei — to ułamek ETH, gdzie jeden ETH równa się miliardowi gwei, a jeden gwei miliardowi wei, najmniejszej jednostce. Tak więc przelew zużywający 21 000 gas po 20 gwei kosztuje 0,00042 ETH; przy 80 gwei kosztuje czterokrotnie więcej, choć praca jest identyczna. Cena za jednostkę porusza się wraz z popytem, podczas gdy praca pozostaje stała.

EIP-1559: base fee plus priority fee

W 2021 roku aktualizacja EIP-1559 zmieniła sposób ustalania gas price: zamiast jednej ślepej aukcji, w której wszyscy zgadywali, opłata ma teraz dwie części.

base fee jest ustalana algorytmicznie przez protokół, dla każdego bloku, na podstawie tego, jak pełny był poprzedni blok: rośnie, gdy bloki są wypełnione w ponad połowie, i spada, gdy są bardziej puste, dzięki czemu cena płynnie reaguje na popyt. Co najważniejsze, base fee jest spalana — trwale usuwana z obiegu — więc nie trafia do żadnego walidatora.

priority fee, czyli napiwek, to to, co dodajesz na wierzch, by zachęcić walidatora do wcześniejszego włączenia cię. Ponieważ base fee jest spalana, napiwek to faktyczny zarobek walidatorów, więc wyższy napiwek wygrywa o sporne miejsce w bloku, gdy sieć jest obciążona. base fee jest taka sama dla wszystkich w bloku; napiwek to dźwignia, którą kontrolujesz. Pełną specyfikację znajdziesz w samym EIP-1559.

maxFeePerGas i maxPriorityFeePerGas: limity, które ustawiasz

Ponieważ base fee może zmieniać się między blokami, gdy twoja transakcja czeka, EIP-1559 pozwala ustawić dwa pułapy zamiast jednej stałej ceny.

  • maxPriorityFeePerGas to najwięcej, ile zapłacisz jako napiwek dla walidatora.
  • maxFeePerGas to absolutne maksimum, jakie zapłacisz za jednostkę gas łącznie — base fee plus napiwek razem.

Pobierana jest faktyczna base fee bloku plus twój napiwek, nigdy więcej niż maxFeePerGas; jeśli base fee wyjdzie niska, reszta jest zwracana, więc skok ceny, gdy czekasz, nie może obciążyć cię nadmiernie. Większość portfeli, w tym SSP, wypełnia te wartości na podstawie bieżących warunków, więc zwykle wybierasz prędkość, zamiast wpisywać liczby.

gas limit kontra gas used i dlaczego nieudane transakcje wciąż kosztują gas

Jeszcze jedna liczba wprawia ludzi w zakłopotanie: gas limit, maksymalna ilość gas, na której zużycie pozwalasz transakcji. To pułap bezpieczeństwa dla pracy, a nie cena — pobierany jest tylko gas faktycznie zużyty. Prosty przelew zawsze zużywa 21 000 gas; przy interakcji z kontraktem portfel szacuje limit z zapasem.

Bolesna część to niepowodzenie. Jeśli transakcji zabraknie gas albo zrobi revert w połowie, już wykonaną pracę i tak trzeba opłacić. Nieudana lub cofnięta przez revert transakcja wciąż kosztuje gas. Zbyt niski gas limit to częsta przyczyna niepowodzenia z braku gas, dlatego pozwolenie portfelowi oszacować limit jest lepsze niż ustawianie go ręcznie.

Dlaczego opłaty gas gwałtownie rosną

Ceny gas rosną z jednego powodu: popyt na miejsce w bloku przewyższa podaż. Rozmiar bloku jest ograniczony, więc gdy wiele osób dokonuje transakcji naraz — premiera popularnego token, pożądany mint NFT, gwałtowny ruch rynku — algorytm base fee podbija cenę blok po bloku, aż popyt opadnie, a napiwki rosną, gdy użytkownicy rywalizują o włączenie.

Dlatego opłaty w mainnecie Ethereum są bardzo zmienne: ten sam przelew może kosztować kilka centów w spokojnej godzinie i kilka dolarów w środku gorączki; praca się nie zmieniła, tylko cena, i właśnie dlatego liczy się moment.

Jak portfele szacują opłaty: wolno, normalnie, szybko

Rzadko ustawiasz surowe gwei ręcznie. Portfele odczytują bieżące warunki i oferują gotowe ustawienia — zwykle wolno, normalnie i szybko — które odpowiadają różnym poziomom napiwku i czasom potwierdzenia.

  • Wolniejsza opcja używa niższego napiwku: tańsza, ale może trwać dłużej, a podczas skoku może pozostać w oczekiwaniu.
  • Normalna opcja celuje w potwierdzenie w ciągu kilku najbliższych bloków po rozsądnej cenie.
  • Szybsza opcja płaci wyższy napiwek, by wejść wcześniej, co się opłaca, gdy ścigasz się z czasem albo zmiennymi cenami.

To szacunki, nie gwarancje. Jeśli nisko wyceniona transakcja utknie, wyślij ją ponownie z tym samym nonce i wyższą opłatą — to akcja „przyspiesz” lub „zastąp” omówiona w wysyłanie i odbieranie Ethereum w SSP. W SSP zastąpienie to nowa transakcja, więc nadal wymaga współpodpisu 2-of-2.

gas w SSP: płacenie przez UserOperation

SSP przechowuje twój ETH w multisig 2-of-2, a na łańcuchach EVM jest to konto inteligentnego kontraktu ERC-4337 — co zmienia formę transakcji, a nie ekonomię gas. Zamiast rozgłaszać zwykłą transakcję, konto wyraża swój zamiar jako UserOperation, którą bundler przesyła do łańcucha. gas jest opłacany jako część tej UserOperation, a pod spodem nadal obowiązują te same base fee i priority fee z EIP-1559: wciąż płacisz gas used × gas price w ETH, współpodpisane przez oba urządzenia jako jedna operacja agregowana przez Schnorr.

account abstraction umożliwia też sponsorowanie gas: ERC-4337 pozwala, by paymaster zapłacił gas w imieniu użytkownika, więc w zasadzie opłatę mógłby pokryć podmiot trzeci albo można by ją uregulować w token zamiast w ETH. To możliwość standardu, a nie obietnica dotycząca konkretnego zachowania — szczegóły należą do wyjaśnienia account abstraction (ERC-4337). Na razie trzymaj na koncie trochę ETH, by pokryć gas.

Tańsze z założenia: gas na łańcuchach L2

Jeśli opłaty w mainnecie wydają ci się wysokie, nie musisz wszystkiego robić tam. Ten sam zestaw kluczy SSP sięga szeregu łańcuchów EVM, a sieci L2 i sidechainy takie jak Polygon i Base są drastycznie tańsze — często ułamki centa — bo wykonują ciężką pracę poza mainnetem, gdzie miejsce w bloku jest znacznie mniej deficytowe.

Model jest taki sam — płacisz gas w natywnym token danego łańcucha i zwykle obowiązuje wycena w stylu EIP-1559 — ale liczby są dla porównania maleńkie. Kiedy i jak ich używać, zobacz korzystanie z SSP na Polygon, Base i innych łańcuchach EVM.

Opłaty Bitcoina kontra Ethereum, w skrócie

Jeśli trafiłeś do SSP od strony Bitcoina, model opłat Ethereum wyda ci się pokrewny, ale odmienny: oba wyceniają deficytowe miejsce w bloku i pozwalają zapłacić więcej za szybsze potwierdzenie, ale różnica tkwi w tym, za co płacisz. Opłaty Bitcoina opierają się na rozmiarze transakcji w bajtach — miejscu, jakie zajmuje w bloku — według stawki w satoshi za bajt, bez dowolnych obliczeń, a więc bez gas limit i bez niepowodzenia z braku gas. Opłaty Ethereum wyceniają pracę obliczeniową, zmieniają się w zależności od tego, co robi twoja transakcja, i dokładają na wierzch strukturę base fee plus napiwek z EIP-1559. O stronie Bitcoina zobacz strategia opłat Bitcoina w SSP.

Praktyczne wskazówki dla użytkowników samodzielnego przechowywania

  • Dobieraj moment transakcji. Jeśli przelew nie jest pilny, spokojniejszy okres może znacząco obniżyć koszt.
  • Sprawdź szacunek przed współpodpisem. SSP pokazuje opłatę, gdy ją przeglądasz: rzuć na nią okiem na obu urządzeniach przed zatwierdzeniem.
  • Trzymaj zapas ETH na gas. Saldo złożone z samych token nie opłaci własnego gas, więc zawsze miej trochę ETH — i właściwy natywny token na każdym łańcuchu L2.
  • Używaj L2, gdy pasuje. Przy częstych lub drobnych przelewach tańszy łańcuch EVM oszczędza znacznie więcej niż staranne dobieranie momentu w mainnecie.
  • Nie panikuj przy utkniętej transakcji. Tę, która się zacięła, zwykle można przyspieszyć, wysyłając ją ponownie z tym samym nonce.

Dokąd dalej

gas przestaje onieśmielać, gdy zobaczysz jego części: płacisz gas used × gas price, cena to spalana base fee plus napiwek, który kontrolujesz, a nawet nieudana transakcja kosztuje wykonaną pracę. Stąd przejdź do praktyki z wysyłaniem i odbieraniem Ethereum w SSP albo poznaj tańszą stronę z korzystaniem z SSP na Polygon, Base i innych łańcuchach EVM. Na którymkolwiek łańcuchu jesteś, zasada SSP pozostaje ta sama: dwa klucze, jeden podpis i opłaty, które kontrolujesz.

Udostępnij ten artykuł

Powiązane artykuły