Budowanie Ergo: Oracle
23 kwietnia 2020

Blockchainy to systemy zamknięte, które mogą odnosić się tylko do swoich własnych danych, ustalonych na podstawie konsensusu. Oracle to rozwiązanie problemu pracy z informacjami zewnętrznymi, które są niezbędne w wielu codziennych zastosowaniach.
Blockchainy są celowo samodzielne. Odnoszą się tylko do informacji zapisanych w ich bezpośrednim ekosystemie, które zostały uzgodnione przez większość górników. Ponieważ cały sens blockchaina, opartego na konsensusie, polega na tym, że nie ma źródeł centralizacji ani pojedynczych punktów awarii, stwarza to problem.
Co się dzieje, gdy chcesz zaangażować się w informacje zewnętrzne? Wiele aplikacji opartych na blockchainie musi przetwarzać dane z rzeczywistego świata. Mogą to być informacje finansowe, takie jak dane rynkowe i ceny z giełd, dla aplikacji DeFi; mogą to być wyniki sportowe, dla rynków prognoz e-sportowych; mogą to być nawet informacje o szumie atmosferycznym, dla generatorów liczb losowych.
Wprowadzenie do Oracle
Oracle to oprogramowanie, które służy jako łącznik między tymi rzeczywistymi źródłami danych a zamkniętym światem blockchaina. Są proste w zasadzie, ponieważ muszą tylko tworzyć serię transakcji z niezbędnymi danymi (najlepiej sformatowanymi w łatwo dostępnym formacie) w regularnych odstępach czasu.
Jednakże, podczas gdy każdy może zapisać informacje w otwartym blockchainie, to jest źródło centralizacji. Jak więc zaufać oracle?
Odpowiedź brzmi: nie możesz. Tak jak metoda konsensusu blockchaina, potrzebujesz wielu oracle'ów pobierających dane z wielu źródeł, a następnie dochodzących do zgody co do wartości, którą należy zapisać w blockchainie. Nie musisz więc ufać pojedynczemu górnikowi ani pojedynczemu oracle.
Przykład: dane o cenie bitcoina
Na przykład, załóżmy, że chcemy codziennie zapisywać cenę zamknięcia bitcoina w blockchainie Ergo, aby uzyskać długoterminowe i wiarygodne źródło danych o cenach.
Moglibyśmy wziąć tuzin – lub nawet sto – różnych źródeł danych, z których każde pobiera dane z głównej giełdy. Coinbase, Bitstamp, Kraken i tak dalej. Upewniamy się, że wiele giełd jest reprezentowanych, a chociaż dobrze jest mieć kilka przykładów danych z tej samej giełdy, nie chcemy, aby któraś giełda była nadreprezentowana.
Następnie strony muszą osiągnąć konsensus co do ceny. Załóżmy, że jest 100 stron i cen zaangażowanych. Istnieją różne sposoby, w jakie mogą to zrobić:
- Wziąć średnią ze wszystkich cen, które podają
- Odrzucić najwyższe i najniższe 20 cen, a następnie wziąć średnią z pozostałych 60 cen
- Wybrać cenę medianową
- Ważyć ceny, przy czym centralny klaster cen ma większą wagę, i wziąć średnią
Celem jest odrzucenie lub zredukowanie wagi wszelkich wartości odstających, które mogą być spowodowane ekstremalnymi fluktuacjami cen na jednej giełdzie, awariami API lub nieuczciwymi dostawcami danych oracle, jednocześnie zachowując wiele dobrych punktów danych, aby zapewnić pojedynczy wiarygodny zapis ceny.
Oracle są niezwykle ważną częścią ekosystemu blockchain. Gdy masz solidne oracle, możesz tworzyć wszelkiego rodzaju aplikacje DeFi – w tym stablecoiny, które są istotną częścią gospodarki blockchain, a które będziemy badać na Ergo w nadchodzących miesiącach.
Share post
13 sierpnia 2025
12 maja 2025






