tradingview
2 8 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Preconfirmation

⏱️ Czas czytania: 4 min

Preconfirmation (preconfirmacja) to pojęcie z ekosystemu Ethereum, oznaczające wczesną, ekonomicznie zabezpieczoną obietnicę dotyczącą losu transakcji, zanim zostanie ona formalnie potwierdzona przez sieć. W praktyce chodzi o sytuację, w której pojedynczy uczestnik sieci — proposer bloku — zobowiązuje się wobec użytkownika, że jego transakcja zostanie włączona do bloku albo wykonana w określony sposób, jeszcze przed nadejściem właściwego slotu blokowego.

Definicja i pochodzenie terminu

Preconfirmation nie jest formalnym standardem Ethereum w takim sensie, w jakim standardem są na przykład ERC czy EIP. Jest to termin roboczy, który wypracowała społeczność badawcza zajmująca się based rollupami i sekwencjonowaniem transakcji. W tym ujęciu proposer, który zdecyduje się przyjąć dodatkowe zobowiązania (i powiązane z nimi ryzyko slashingu), staje się tak zwanym „preconferem” i w zamian za niewielką opłatą (preconf tip) wydaje użytkownikowi podpisaną obietnicę.

Istnieje kilka wariantów tego, czego dotyczy obietnica. Najsłabsza forma to zapewnienie samego włączenia transakcji do bloku (inclusion preconfirmation) — taki wariant wykorzystuje między innymi projekt Bolt. Silniejsze warianty obejmują obietnicę wykonania transakcji, obietnicę dotyczącą zmiany stanu (state diff) albo nawet obietnicę dotyczącą finalnego stanu po wykonaniu (state root). Każdy z tych wariantów niesie inny poziom ryzyka dla strony wydającej obietnicę.

Jak działa preconfirmation w praktyce

Model based preconfirmations

W koncepcji opartej na based sequencing użytkownik wysyła żądanie obietnicy do najbliższego w kolejce proposera, który zdecydował się działać jako preconfer. Preconfer odsyła podpisaną obietnicę określonego typu. Jeśli transakcja nie zostanie prawidłowo rozliczona — slot preconfera zostanie pominięty bez wcześniejszego wykonania transakcji, lub stan sieci będzie sprzeczny z obietnicą — dochodzi do naruszenia (fault), które może skutkować przepadkiem zastawionych środków.

Model wdrożeniowy: preconfirmacje inkluzji

W wariancie zorientowanym na produkcyjne wdrożenie proposer, który zapisał się do programu preconfirmacji, otrzymuje żądania transakcji przez dedykowany kanał RPC. Po zaakceptowaniu zamienia je w zobowiązanie (constraint), które trafia do relayów i builderów bloków. Builderzy respektują te zobowiązania podczas składania bloku, a proposer przed podpisaniem nagłówka weryfikuje, czy dowody spełnienia zobowiązań są prawidłowe.

Praktyczne znaczenie dla użytkownika

Największą praktyczną korzyścią preconfirmacji jest skrócenie odczuwalnego czasu oczekiwania na potwierdzenie transakcji względem czasu typowego dla bloku Ethereum. Ma to znaczenie dla based rollupów i based validiów, które chcą zaproponować użytkownikom wygodę porównywalną z rollupami korzystającymi ze scentralizowanego sekwencera, przy zachowaniu odporności na cenzurę wynikającej z powiązania z warstwą bazową.

Warto podkreślić, że preconfirmacja jest gwarancją natury ekonomicznej — opiera się na zastawionym kapitale i ryzyku jego utraty — a nie gwarancją kryptograficzną czy wynikającą z konsensusu całej sieci. To rozróżnienie jest kluczowe dla zrozumienia, jakiego rodzaju bezpieczeństwo faktycznie otrzymuje użytkownik.

Czym preconfirmation nie jest

Preconfirmacji nie należy mylić z finalnością bloku. Finalność w mechanizmie Proof-of-Stake Ethereum wynika z głosowania dużej liczby walidatorów i wymaga, by odwrócenie sfinalizowanego bloku kosztowało atakującego znaczną część całego zastawionego kapitału sieci. Preconfirmacja jest natomiast zobowiązaniem pojedynczego podmiotu, które może zostać naruszone, jeśli dojdzie do reorganizacji łańcucha na poziomie warstwy bazowej — w takim wypadku odpowiadające jej obietnice przestają być wiążące.

Nie każda preconfirmacja oznacza to samo — obietnica inkluzji, obietnica wykonania i obietnica dotycząca finalnego stanu to różne poziomy zobowiązania, o różnej sile i różnym ryzyku. Przy analizie takich mechanizmów warto zawsze sprawdzić, o który dokładnie wariant chodzi.

Ograniczenia i ryzyka

Model preconfirmacji wiąże się z kilkoma istotnymi ryzykami. Po pierwsze, istnieje ryzyko powstania swoistego monopolu preconfera — jeśli jeden podmiot obsługuje kilka kolejnych slotów, zyskuje tymczasową, wyłączną możliwość wykonywania transakcji i wydobywania z nich wartości. Po drugie, transakcje niewspierane obietnicą mogą być statystycznie opóźniane, jeśli znaczna część proposerów pełni funkcję preconferów. Po trzecie, ryzyko reorganizacji łańcucha oznacza, że wydana obietnica nie jest absolutną gwarancją, co skłania do rozważania mechanizmów rynkowych, takich jak ubezpieczenia. Egzekwowanie naruszeń bywa też złożone operacyjnie, ponieważ wymaga wspólnej odpowiedzialności kilku podmiotów.

Podsumowanie

Preconfirmation to koncepcja pozwalająca skrócić odczuwalny czas potwierdzenia transakcji w Ethereum przez ekonomicznie zabezpieczoną obietnicę pojedynczego proposera, a nie przez zmianę mechanizmu konsensusu całej sieci. Termin nie ma jednej ustandaryzowanej definicji, a jego warianty różnią się siłą obietnicy i poziomem ryzyka — przed skorzystaniem z takiego mechanizmu warto zrozumieć, jaki konkretnie rodzaj preconfirmacji jest oferowany i jakie są jej realne gwarancje.