Obecnie blockchainy są silnie izolowane od zewnętrznych źródeł informacji — zarówno z zasobów scentralizowanych, jak i innych blockchainów. Aby różne łańcuchy bloków były kompatybilne i mogły łatwo wymieniać dane zarówno między sobą, jak i z zewnętrznymi zasobami, można wykorzystać orakle.

Czym są orakle
Oracle to system, który pozyskuje i weryfikuje zdarzenia zewnętrzne dla blockchainu i przesyła te dane do blockchainu do wykorzystania w smart kontraktach (lub odwrotnie). Orakle są krytycznie potrzebne dla smart kontraktów, ponieważ są one ściśle deterministyczne. Informacja musi trafiać do smart kontraktu przez określony kanał, który jest w stanie potwierdzić jej wiarygodność.
Istnieje kilka rodzajów orakli, zapewniających różne rodzaje połączeń:
- programowe — pozyskują dane z internetu lub innych blockchainów;
- sprzętowe — pozyskują dane z różnych czujników ( znaczników, inteligentny dom; osobiście przychodzi mi na myśl zastosowanie w logistyce i IoT);
Przykład: do smart kontraktu należy przesłać dane o temperaturze powietrza. Można pozyskać dane z internetu przez orakla programowego lub z czujnika IoT przez orakla sprzętowego. *IoT —
- przychodzące — z zewnątrz blockchainu do smart kontraktu;
- wychodzące — ze smart kontraktu do jakiegoś zasobu;
Czasami wykorzystuje się orakle konsensualne. Kilka orakli niezależnie pozyskuje dane, a następnie według jakiegoś algorytmu określa wyjściowe dane.
Przykład, w jakim celu to jest potrzebne: 3 orakle pozyskują kurs BTC/USD z Binance, BitMex i Coinbase, a na wyjściu przekazują średnią wartość. Dzięki temu wygładzane są niewielkie rozbieżności między giełdami.
Web3
Mówiąc o oraklach i ich realizacjach, nie można pominąć Web3, koncepcji, dla której zostały wymyślone. Pierwotnie Web3 był ideą semantycznej sieci, w której każda strona była oznaczona metadanymi, aby poprawić interakcję z wyszukiwarkami. Jednak współczesna idea Web3 to sieć składająca się z dApps. A zdecentralizowane aplikacje potrzebują orakli.

Można stworzyć orakla samodzielnie (i w niektórych przypadkach jest to konieczne), ale istnieją niektóre często używane orakle (na przykład, generator liczb losowych), dlatego opłacalne jest korzystanie z projektów orakli. Dwa główne obecnie projekty zajmujące się rozwojem orakli to: i .
Band Protocol
Band Protocol działa na algorytmie konsensusu dPoS () i dostawcy danych odpowiadają za autentyczność pieniędzmi, a nie tylko reputacją.
W ekosystemie projektu istnieją trzy typy użytkowników:
- Dostawcy danych, którzy niezależnie pracują nad bezpiecznym przekazywaniem danych z zewnątrz blockchaina do łańcucha bloków. Posiadacze tokenów stawiają na dostawców danych, aby przyznać im prawo do przekazywania danych do protokołu.
- Twórcy dApp, którzy płacą małe opłaty za korzystanie z orakla.
- Posiadacze tokenów Band, którzy głosują na dostawców danych. Oddając głos swoimi tokenami na dostawcę, otrzymują nagrodę z pieniędzy wypłacanych przez dApps.

Wśród orakli oferowanych przez Band "prosto z pudełka": czas startów/lądowań samolotów, mapa pogody, kursy kryptowalut, ceny złota i akcji, informacje o blokach bitcoinów, średnia cena gazu, wolumeny na giełdach kryptowalut, generator liczb losowych, Yahoo Finance, kod statusu HTTP.
Zresztą, wśród inwestorów Band znajduje się legendarny fundusz inwestycyjny i .
Chainlink
Ogólnie, Chainlink i Band są bardzo podobne - zarówno w domyślnych rozwiązaniach, jak i w możliwościach rozwoju. Chainlink jest prostszy w obsłudze, nie ma głosowania na dostawców informacji, a Band jest bardziej elastyczny, ponieważ wykorzystuje i jest w 100% open source.
Obecnie Chainlink jest znacznie popularniejszy, a wśród partnerów projektu znajdują się Google Cloud, Binance, Matic Network i Polkadot. Chainlink skoncentrował się także na oraklach w zakresie , który obecnie dynamicznie rośnie.

Zasoby, których dane można uzyskać za pomocą orakla z Chainlink.
Podsumowanie
Orakle to dobry pomysł na pozyskiwanie danych z zcentralizowanych zasobów do blockchaina, i będę uważnie obserwować rozwój tej technologii. Jednak jeśli mówimy o interoperacyjności różnych blockchainów, istnieją inne rozwiązania, w tym parachainy (jeszcze obiecująca technologia i temat mojego następnego posta).
Dla tych, którzy chcą zgłębić temat: , .
Źródło: habr.com
