Oracle nazywane jest blockchain middlewarem, czyli oprogramowaniem pośredniczącym i pełni rolę mostu pomiędzy dwoma światami – światem łańcucha bloków oraz danych zewnętrznych. Czy rozwiązanie, którego zadaniem jest pomoc, może wiązać się z jakimiś problemami?

Oracle – co to jest?
Terminem oracle określa się zewnętrzne usługi, których zadaniem jest łączenie deterministycznego łańcucha bloków z danymi, które nie znajdują się w łańcuchu. Deterministyczny charakter blockchain oznacza, że powtórzenie tej samej operacji na innym węźle w innym momencie daje ten sam wynik. Dodanie opcji związanej z wywołaniem API do infrastruktury łańcucha bloków wiązałoby się z dużym prawdopodobieństwem, że źródło zostanie zdeprecjonowane, zhakowane lub uszkodzone, co uniemożliwiłoby weryfikację transakcji. Rozwiązaniem problemu związanego z łączeniem łańcucha bloków z danymi spoza łańcucha (które nie są deterministyczne) jest blockchain oracle. Jest to usługa, która wprowadza wszystkie dane poprzez transakcję zewnętrzną, dzięki czemu jesteśmy pewni, że w łańcuchu bloków znajdują się wszystkie informacje, które są niezbędne do weryfikacji. Trzeba zaznaczyć, że blockchainowe oracles nie są źródłami danych – to usługi, które pobierają i weryfikują zewnętrzne dane, a gdy weryfikacja przebiegnie pomyślnie, przesyłają informacje do inteligentnych kontraktów, czego następstwem są zmiany stanu w łańcuchu bloków.
Oracle - problem
Gdzie leży problem? Problem nazywany „Problemem Oracle” określany jest jako konflikt autentyczności, bezpieczeństwa oraz zaufania pomiędzy oraclami a inteligentnymi kontraktami. W sytuacji, gdy oracle zostanie zaatakowany, zagrożony jest także inteligentny kontrakt, który jest na nim oparty. Problemem oracle zajmuje się kilka platform, które swoje działanie opierają na tworzeniu zdecentralizowanych i odpornych na fałszywe informacje rozwiązań oracle. Przykładem jest Chainlink. Jest to platforma, której celem jest (jak podaje firma) "zapewnienie niezawodnych, odpornych na manipulacje wejść i wyjść dla złożonych inteligentnych kontraktów na dowolnym łańcuchu bloków".