Penjelasan mengenai Oracle Blockchain
Beranda
Artikel
Penjelasan mengenai Oracle Blockchain

Penjelasan mengenai Oracle Blockchain

Tingkat Menengah
Diterbitkan Jan 22, 2020Diperbarui Nov 28, 2023
7m
Diajukan oleh komunitas - Penulis: Vallery Mou


Daftar isi


Apa yang dimaksud dengan oracle blockchain?

Oracle blockchain adalah layanan pihak ketiga yang menyediakan smart contracts dengan informasi eksternal. Melayani sebagai jembatan antara blockchain dan dunia luar.
Blockchain dan smart contract tidak dapat mengakses data off-chain (data di luar jaringan). Namun, bagi perjanjian kontrak, sangat penting untuk memiliki informasi yang relevan dari dunia luar untuk mengeksekusi perjanjian tersebut.

Di sinilah oracle blockchain berperan, karena mereka menyediakan tautan antara data off-chain dan on-chain. Oracle sangat penting di dalam ekosistem blockchain karena dapat memperluas cakupan operasi smart contract. Tanpa oracle blockchain, smart contract hanya akan memiliki manfaat yang terbatas, hanya dapat mengakses data dari dalam jaringannya sendiri. 

Perlu dicatat bahwa oracle blockchain bukanlah sumber data, melainkan lapisan yang menanyakan, memverifikasi, dan mengautentikasi sumber data eksternal dan meneruskan informasi tersebut. Data yang ditransmisikan oleh oracle datang dalam wujud yang berbeda-beda – informasi harga, penyelesaian pembayaran yang berhasil, atau temperatur yang diukur dengan sensor. 

Untuk memanggil data dari dunia luar, smart contract harus digunakan, sumber daya jaringan diperlukan. Beberapa oracle juga memiliki kemampuan tidak hanya untuk meneruskan informasi ke smart contract, tetapi juga mengirimkannya kembali ke sumber eksternal.

Ada beberapa jenis oracle yang tersedia – bagaimana cara kerja oracle blockchain bergantung sepenuhnya pada bagaimana mereka didesain. artikel ini akan membahas beberapa dari desain-desain tersebut.


Contoh oracle blockchain

Misalkan Alice dan Bob bertaruh atas siapa yang akan memenangkan pemilihan presiden Amerika Serikat. Alice yakin bahwa kandidat dari Partai Republik akan menang, sementara Bob yakin pemenang adalah dari Partai Demokrat. Mereka menyetujui perjanjian taruhan dan mengunci dana mereka di dalam smart contract, yang akan akan mengeluarkan semua dana ke pemenang berdasaran hasil pemilihan umum.

Karena smart contract tidak dapat berinteraksi dengan data eksternal, maka harus bergantung pada oracle yang memberikan informasi yang dibutuhkan – dalam hal ini, hasil pemilihan presiden. Setelah pemilihan umum berakhir, oracle akan menanyakan API terpercaya untuk mengetahui kandidat mana yang menang dan meneruskan informasi ini ke smart contract. Kontrak kemudian mengirimkan dana ke Alice atau Bob, tergantung pada hasilnya.

Jika oracle tidak ada, tidak akan ada cara untuk menyelesaikan taruhan ini tanpa peluang kecurangan dari salah satu partisipan. 


Apa saja jenis-jenis oracle blockchain?

Oracle blockchain dapat diklasifikasikan tergantung bada perbedaan kualitas: 

  • Sumber – Apakah data berasal dari perangkat lunak atau perangkat keras?
  • Arah informasi – apakah masuk atau keluar?
  • Trust – apakah tersentralisasi atau terdesentralisasi?

Satu oracle dapat dimasukkan ke dalam beberapa kategori. Sebagai contoh, satu oracle yang informasinya bersumber dari website perusahaan adalah oracle perangkat lunak masuk tersentralisasi.


Oracle perangkat lunak

Oracle perangkat lunak berinteraksi dengan sumber informasi online dan mentransmisikannya ke blockchain. Informasi ini dapat berasal dari database online, server, website – intinya sumber data apa saja di web.

Fakta bahwa oracle perangkat lunak dihubungkan ke Internet tidak hanya memungkinkannya untuk menyuplai informasi ke smart contract, tetapi juga mentransmisikan informasi tersebut secara langsung/real-time. Ini adalah jenis yang paling umum dari oracle blockchain. 

Informasi yang biasanya disediakan oleh oracle perangkat lunak merupakan tarif pertukaran, harga digital aset, atau informasi penerbangan secara real-time.


Oracle perangkat keras

Beberapa smart contract harus berhadapan dengan dunia nyata. Oracle perangkat keras didesain untuk mendapatkan informasi dari dunia fisik dan membawanya ke smart contract. Informasi seperti ini dapat diteruskan dari sensor elektronik, pemindai barcode, dan perangkat pembaca informasi lainnya.

Pada intinya, oracle perangkat keras “menerjemahkan” peristiwa-peristiwa di dunia nyata ke dalam nilai digital yang dapat dimengerti oleh smart contract.

Contohnya adalah sensor yang dapat memeriksa apakah sebuah truk yang membawa barang-barang telah tiba di dermaga bongkar-muat. Jika iya, maka sensor akan meneruskan informasi ke smart contract yang akan dapat mengeksekusi keputusan berdasarkan informasi tersebut.

Jika Anda tertarik untuk membaca topik yang sama, silakan menuju Penggunaan Blockchain: Rantai Pasokan.


Oracle masuk dan keluar

Oacle masuk mentransmisikan informasi dari sumber eksternal ke smart contract, sedangkan oracle keluar mengirimkan informasi dari smart contract ke dunia luar. 

Contoh oracle masuk adalah alat yang memberitahu smart contract mengenai temperatur yang diukur dengan sensor. Contoh oracle keluar adalah smart lock. Jika dana disetor ke sebuah alamat, smart contract mengirim informasi ini melalui oracle keluar ke sebuah mekanisme yang akan membuka smart lock.


Oracle tersentralisasi dan terdesentralisasi

Oracle tersentralisasi dikendalikan oleh entitas tunggal dan satu-satunya sumber informasi ke smart contract. Menggunakan hanya satu sumber informasi dapat berisiko – keefektifan kontrak sepenuhnya bergantung pada entitas yang mengendalikan oracle. Juga, gangguan mencurigakan dari pihak jahat akan memberikan dampak langsung ke smart contract. Masalah utama oracle tersentralisasi adalah adanya single point of failure, yang membuat kontrak kurang tangguh terhadap serangan dan kerentanan.

Oracle terdesentralisasi memiliki tugas yang sama seperti blockchain publik – menghindari risiko dari pihak lawan. Oracle ini meningkatkan keandalan informasi yang diberikan ke smart contract dengan tidak bergantung pada satu sumber kebenaran. Smart contract membutuhkan banyak oracle untuk menentukan kevalidan dan akurasi data – inilah mengapa oracle terdesentralisasi dapat juga disebut sebagai oracle konsensus.

Beberapa proyek blockchain memberikan layanan oracle terdesentralisasi ke blockchain lainnya. Oracle terdesentralisai dapat juga berguna dalam memprediksikan pasar, di mana kevalidan data dapat diverifikasi oleh konsensus sosial.

Walaupun oracle terdesentralisasi bertujuan untuk mencapai trustlessness, perlu dicatat bahwa sama seperti jaringan blockchain yang tidak membutuhkan kepercayaan, oracle terdesentralisasi tidak dapat sepenuhnya menghapus kepercayaan, tetapi lebih kepada mendistribusikannya di antara banyak partisipan.


Oracle yang dikhususkan untuk kontrak

Oracle yang dikhususkan untuk kontrak didesain agar digunakan oleh satu smart contract. Ini berarti bahwa jika ada yang ingin membuat beberapa smart contract, oracle jenis ini harus dikembangkan dalam jumlah yang sama.

Jenis oracle ini dianggap menghabiskan banyak waktu dan mahal untuk dipelihara. Perusahaan-perusahaan yang ingin mengekstrak data dari berbagai sumber mungkin akan menemukan kesulitan dan menganggap pendekatan ini tidak praktis. Di sisi lain, karena oracle yang dikhususkan untuk kontrak dapat didesain dari nol untuk melayani manfaat tertentu, pengembang memiliki fleksibilitas tinggi untuk menyesuaikannya.


Oracle manusia

Kadang-kadang beberapa orang dengan pengetahun khusus dalam bidang tertentu juga dapat melayani sebagai oracle. Mereka dapat meneliti dan memverifikasi keaslian informasi dari berbagai sumber dan menerjemahkan informasi tersebut ke smart contract. Karena oracle manusia dapat memverifikasi indentitas mereka menggunakan kriptografi, kemungkinan penipu memalsukan identitas mereka dan memberikan data yang salah sangat kecil.


Permasalahan Oracle

Karena smart contract mengeksekusi keputusan berdasarkan data yang diberikan oleh oracle, maka smart contract adalah kunci untuk ekosistem blockchain yang sehat. Tantangan utama dalam mendesain oracle adalah jika oracle diganggu, smart contract yang mengandalkannya juga akan ikut terganggu. Ini sering disebut sebagai masalah oracle. 

Karena oracle bukan bagian dari konsensus blockchain utama, maka sayangnya oracle juga bukan bagian dari mekanisme keamanan yang dapat disediakan oleh blockchain publik. Konflik kepercayaan di antara oracle pihak ketiga dan eksekusi smart contract yang tidak membutuhkan kepercayaan masih menjadi permasalahan yang belum terpecahkan.

Serangan pihak penengah juga dapat menjadi ancaman, di mana pihak jahat dapat mengakses aliran data di antara oracle dengan kontrak dan kemudian memodifikasi atau memalsukan data tersebut. 


Penutup

Mekanisme yang dapat diandalkan untuk memudahkan komunikasi antara smart contract dan dunia luar sangat penting terhadap adopsi global blockchain. Tanpa oracle blockchain, smart contract harus bergantung hanya pada informasi yang telah ada di dalam jaringan, yang akan sangat membatasi kemampuannya.

Oracle terdesentralisasi berpotensi untuk memperkenalkan mekanisme aman yang dapat menghapus banyak risiko sistemik dari ekosistem blockchain. Oracle blockchain merupakan salah satu blok penting yang sedang dibangun untuk mengimplementasikan sifat aman, dapat diandalkan, dan tanpa membutuhkan kepercayaan untuk mengembangkan ekosistem blockchain.