Oracle (wyrocznia blockchain, ang. blockchain oracle) to mechanizm, który dostarcza smart kontraktom dane spoza blockchaina: ceny aktywów, kursy walut, wyniki wydarzeń, stopy procentowe czy dowody rezerw. Blockchain sam „nie wie”, ile kosztuje ETH na giełdzie – widzi tylko własne transakcje. Protokoły pożyczkowe, giełdy kontraktów perpetualnych i stablecoiny potrzebują jednak ceny, żeby wyceniać zabezpieczenia i likwidować pozycje. Tę lukę wypełniają wyrocznie. Hasło dotyczy wyroczni w kryptowalutach, nie amerykańskiej spółki technologicznej Oracle.
Problem wyroczni
Smart kontrakt jest tak wiarygodny, jak dane, które otrzymuje. Jeśli cenę podaje jeden serwer, cały zdecentralizowany protokół ma jeden punkt awarii: wystarczy przejąć lub oszukać źródło, by uruchomić fałszywe likwidacje albo pożyczyć więcej, niż pozwala realne zabezpieczenie. To tzw. problem wyroczni (oracle problem). Rozwiązania próbują go ograniczyć: wiele niezależnych dostawców danych, agregacja z wielu giełd, mediana zamiast pojedynczej wartości, uśrednianie w czasie i limity dopuszczalnych zmian.
Rodzaje wyroczni
| Typ | Jak działa | Przykład | Ryzyko |
|---|---|---|---|
| Push | sieć węzłów sama zapisuje nową cenę on-chain co określony czas lub po zmianie o zadany procent | Chainlink Data Feeds | opóźnienie przy gwałtownych ruchach |
| Pull | podpisana cena jest pobierana i weryfikowana w chwili transakcji | Pyth, Chainlink Data Streams | zależność od poprawnej weryfikacji w kontrakcie |
| TWAP z DEX | średnia cena z puli AMM w zadanym oknie czasu | wyrocznie Uniswap v3 | manipulacja w płytkich pulach przez dłuższy czas |
| Cena spot z jednej puli | bieżąca proporcja tokenów w puli | stare, źle zaprojektowane protokoły | łatwa manipulacja pożyczką błyskawiczną |
Przykład: manipulacja ceną w płytkiej puli
Załóżmy pulę AMM z 1 000 ETH i 2 000 000 USDC, czyli cena 2 000 USDC za ETH. Protokół pożyczkowy bierze cenę ETH wprost z tej puli. Atakujący pożycza błyskawicznie 2 000 000 USDC i kupuje za nie ETH. Przy stałym iloczynie (x × y = k) w puli zostaje 4 000 000 USDC i 500 ETH, więc cena rośnie do 8 000 USDC – czterokrotnie, w jednej transakcji.
Jeśli atakujący wcześniej wpłacił do protokołu 100 ETH jako zabezpieczenie przy wskaźniku LTV 75%, normalnie mógłby pożyczyć 100 × 2 000 × 0,75 = 150 000 USDC. Przy zmanipulowanej cenie protokół pozwala mu pożyczyć 100 × 8 000 × 0,75 = 600 000 USDC. Atakujący odkupuje pozycję w puli, zwraca pożyczkę błyskawiczną i zostawia protokołowi niedoborowy dług (opłaty pominięto dla uproszczenia).
Gdyby protokół używał 30-minutowego TWAP-u (150 bloków po 12 sekund), jeden blok z ceną 8 000 USDC podniósłby średnią tylko do (8 000 + 149 × 2 000) / 150 = 2 040 USDC. Utrzymanie zawyżonej ceny przez całe okno kosztowałoby ogromny kapitał i byłoby ryzykowne dla atakującego.
Realne ataki
- bZx (2020) – jedne z pierwszych ataków pożyczką błyskawiczną wykorzystujących ceny z pojedynczych DEX-ów.
- Mango Markets (październik 2022) – napastnik podbił cenę tokena MNGO na płytkich rynkach, podniósł wycenę swojego zabezpieczenia i wypłacił z protokołu ponad 100 mln USD.
- Inverse Finance (2022) – manipulacja ceną w płytkiej puli, na której opierała się wyrocznia.
Wspólny mianownik: wycena zabezpieczenia na podstawie rynku, który można tanio przesunąć.
Najczęstsze błędy
- Ocena protokołu DeFi bez sprawdzenia, skąd bierze ceny.
- Pożyczanie pod zabezpieczenie w mało płynnym tokenie, którego wyrocznia opiera się na jednej giełdzie.
- Zakładanie, że cena z wyroczni zawsze równa się cenie na giełdzie – przy gwałtownych ruchach występuje opóźnienie i odchylenie.
- Mylenie tokena LINK z samą usługą – popyt na usługi wyroczni nie przekłada się automatycznie na cenę tokena.
Perspektywa tradera
Na giełdach kontraktów perpetualnych i w DeFi likwidacje liczy się zwykle od ceny indeksu lub ceny oznaczenia (mark price) opartej na wyroczni lub koszyku giełd, a nie od ostatniej transakcji na jednym rynku. Knot na jednej giełdzie nie musi Cię zlikwidować, ale ruch na wszystkich źródłach już tak. Przed otwarciem pozycji z dźwignią w protokole on-chain sprawdź w dokumentacji: jakie jest źródło ceny, jak często jest aktualizowana i co się dzieje, gdy wyrocznia przestanie działać. Przy mało płynnych tokenach utrzymuj większy bufor do ceny likwidacji.
Najczęstsze pytania
Po co blockchainowi wyrocznia?
Bo smart kontrakt nie ma dostępu do danych spoza sieci. Wyrocznia przenosi je on-chain w sposób, który kontrakt może zweryfikować.
Czym różni się wyrocznia push od pull?
W modelu push cena jest zapisywana on-chain cyklicznie przez dostawcę. W modelu pull aplikacja pobiera podpisaną cenę w chwili, gdy jej potrzebuje.
Co to jest TWAP?
Średnia cena ważona czasem z określonego okna. Utrudnia manipulację, bo jednorazowy skok ceny ma na nią niewielki wpływ.
Kto dostarcza wyrocznie w DeFi?
Najbardziej rozpowszechniony jest Chainlink. Popularne są też Pyth, RedStone i wyrocznie oparte na TWAP z DEX-ów.
Tekst ma charakter edukacyjny i nie stanowi rekomendacji inwestycyjnej.


