Pengajuan Komunitas - Penulis: Vallery Mou


Apa itu oracle blockchain?

Oracle Blockchain adalah layanan pihak ketiga yang menyediakan kontrak pintar dengan informasi eksternal. Mereka berfungsi sebagai jembatan antara blockchain dan dunia luar.

Blockchain dan kontrak pintar tidak dapat mengakses data off-chain (data yang berada di luar jaringan). Namun, untuk banyak perjanjian kontrak, sangat penting untuk mendapatkan informasi yang relevan dari dunia luar untuk melaksanakan perjanjian tersebut.

Di sinilah oracle blockchain berperan, karena mereka menyediakan hubungan antara data off-chain dan on-chain. Oracle sangat penting dalam ekosistem blockchain karena mereka memperluas cakupan di mana kontrak pintar dapat beroperasi. Tanpa oracle blockchain, kontrak pintar akan memiliki kegunaan yang sangat terbatas karena mereka hanya memiliki akses ke data dari dalam jaringan mereka.

Penting untuk dicatat bahwa oracle blockchain bukanlah sumber data itu sendiri, melainkan lapisan yang menanyakan, memverifikasi, dan mengautentikasi sumber data eksternal dan kemudian menyampaikan informasi tersebut. Data yang dikirimkan oleh oracle hadir dalam berbagai bentuk – informasi harga, keberhasilan penyelesaian pembayaran, atau suhu yang diukur oleh sensor. 

Untuk memanggil data dari dunia luar, kontrak pintar harus dijalankan, dan sumber daya jaringan harus digunakan. Beberapa oracle juga memiliki kemampuan untuk tidak hanya menyampaikan informasi ke kontrak pintar tetapi juga mengirimkannya kembali ke sumber eksternal.

Ada banyak jenis oracle yang berbeda – cara oracle blockchain beroperasi sepenuhnya bergantung pada tujuan desainnya. Artikel ini akan membahas beberapa desain tersebut.


Contoh oracle blockchain

Misalkan Alice dan Bob bertaruh siapa pemenang pemilihan presiden AS. Alice yakin kandidat Partai Republik akan menang, sedangkan Bob yakin kandidat Demokrat akan menjadi pemenang. Mereka menyetujui ketentuan taruhan dan mengunci dana mereka dalam kontrak pintar, yang akan melepaskan seluruh dana kepada pemenang berdasarkan hasil pemilu.

Karena kontrak pintar tidak dapat berinteraksi dengan data eksternal, kontrak pintar harus bergantung pada oracle untuk memberikan informasi yang diperlukan – dalam hal ini, hasil pemilihan presiden. Setelah pemilu selesai, oracle menanyakan API tepercaya untuk mengetahui kandidat mana yang menang dan menyampaikan informasi ini ke kontrak pintar. Kontrak kemudian mengirimkan dana ke Alice atau Bob, tergantung pada hasilnya.

Tanpa oracle yang menyampaikan datanya, tidak akan ada cara untuk menyelesaikan taruhan ini dengan cara yang tidak dapat dilakukan oleh salah satu peserta. 


Apa saja jenis-jenis oracle blockchain?

Oracle Blockchain dapat diklasifikasikan berdasarkan sejumlah kualitas yang berbeda: 

  • Sumber – apakah data berasal dari perangkat lunak atau perangkat keras?

  • Arah informasi – apakah masuk atau keluar?

  • Kepercayaan – apakah terpusat atau terdesentralisasi?

Sebuah oracle dapat terbagi dalam beberapa kategori. Misalnya, oracle yang mengambil informasi dari situs web perusahaan adalah oracle perangkat lunak masuk yang terpusat.


Oracle perangkat lunak

Oracle perangkat lunak berinteraksi dengan sumber informasi online dan mengirimkannya ke blockchain. Informasi ini dapat berasal dari database online, server, situs web – pada dasarnya, sumber data apa pun di Web.

Fakta bahwa perangkat lunak oracle terhubung ke Internet tidak hanya memungkinkan mereka memberikan informasi ke kontrak pintar tetapi juga mengirimkan informasi tersebut secara real-time. Hal ini menjadikannya salah satu jenis oracle blockchain yang paling umum. 

Informasi yang biasanya disediakan oleh perangkat lunak oracle dapat mencakup nilai tukar, harga aset digital, atau informasi penerbangan waktu nyata.


Oracle perangkat keras

Beberapa kontrak pintar perlu berinteraksi dengan dunia nyata. Oracle perangkat keras dirancang untuk mendapatkan informasi dari dunia fisik dan membuatnya tersedia untuk kontrak pintar. Informasi tersebut dapat disampaikan dari sensor elektronik, pemindai kode batang, dan perangkat pembaca informasi lainnya.

Oracle perangkat keras pada dasarnya “menerjemahkan” peristiwa dunia nyata ke dalam nilai digital yang dapat dipahami oleh kontrak pintar.

Contohnya adalah sensor yang memeriksa apakah truk pengangkut barang telah tiba di tempat pemuatan. Jika ya, informasi tersebut akan diteruskan ke kontrak pintar yang kemudian dapat mengeksekusi keputusan berdasarkan informasi tersebut.

Jika Anda ingin membaca lebih lanjut mengenai subjek serupa, lihat Kasus Penggunaan Blockchain: Rantai Pasokan.


Oracle masuk dan keluar

Oracle masuk mengirimkan informasi dari sumber eksternal ke kontrak pintar, sedangkan oracle keluar mengirimkan informasi dari kontrak pintar ke dunia luar. 

Contoh oracle masuk adalah yang memberi tahu kontrak cerdas berapa suhu yang diukur oleh sensor. Contoh oracle keluar dapat dilihat dengan kunci pintar. Jika dana disimpan ke suatu alamat, kontrak pintar mengirimkan informasi ini melalui oracle keluar ke mekanisme yang membuka kunci pintar.


Oracle terpusat dan terdesentralisasi

Oracle terpusat dikendalikan oleh satu entitas dan merupakan satu-satunya penyedia informasi untuk kontrak pintar. Hanya menggunakan satu sumber informasi bisa berisiko – efektivitas kontrak bergantung sepenuhnya pada entitas yang mengendalikan oracle. Selain itu, campur tangan jahat apa pun dari pelaku kejahatan akan berdampak langsung pada kontrak pintar. Masalah utama dengan oracle terpusat adalah adanya satu titik kegagalan, yang membuat kontrak kurang tahan terhadap kerentanan dan serangan.

Oracle yang terdesentralisasi memiliki beberapa tujuan yang sama dengan blockchain publik – menghindari risiko pihak lawan. Mereka meningkatkan keandalan informasi yang diberikan pada kontrak pintar dengan tidak mengandalkan satu sumber kebenaran pun. Kontrak pintar menanyakan beberapa oracle untuk menentukan validitas dan keakuratan data – inilah mengapa oracle yang terdesentralisasi juga dapat disebut sebagai oracle konsensus.

Beberapa proyek blockchain menyediakan layanan oracle terdesentralisasi ke blockchain lainnya. Ramalan yang terdesentralisasi juga dapat berguna dalam pasar prediksi, di mana validitas hasil tertentu dapat diverifikasi melalui konsensus sosial.

Meskipun oracle yang terdesentralisasi bertujuan untuk mencapai ketidakpercayaan, penting untuk dicatat bahwa seperti halnya jaringan blockchain yang tidak dapat dipercaya, oracle yang terdesentralisasi tidak sepenuhnya menghilangkan kepercayaan, melainkan mendistribusikannya ke banyak peserta.


Oracle khusus kontrak

Oracle khusus kontrak adalah oracle yang dirancang untuk digunakan oleh satu kontrak pintar. Ini berarti bahwa jika seseorang ingin menerapkan beberapa kontrak pintar, sejumlah oracle khusus kontrak harus dikembangkan.

Oracle jenis ini dianggap sangat memakan waktu dan mahal untuk perawatannya. Perusahaan yang ingin mengekstrak data dari berbagai sumber mungkin menganggap pendekatan ini sangat tidak praktis. Di sisi lain, karena oracle khusus kontrak dapat dirancang dari awal untuk melayani kasus penggunaan tertentu, pengembang memiliki fleksibilitas tinggi untuk menyesuaikannya dengan kebutuhan spesifik.


Ramalan manusia

Terkadang individu dengan pengetahuan khusus di bidang tertentu juga dapat berperan sebagai peramal. Mereka dapat meneliti dan memverifikasi keaslian informasi dari berbagai sumber dan menerjemahkan informasi tersebut ke dalam kontrak pintar. Karena oracle manusia dapat memverifikasi identitas mereka menggunakan kriptografi, kemungkinan penipu memalsukan identitas mereka dan memberikan data yang rusak relatif rendah.


Masalah Oracle

Karena kontrak pintar mengeksekusi keputusan berdasarkan data yang disediakan oleh oracle, kontrak pintar adalah kunci ekosistem blockchain yang sehat. Tantangan utama dalam merancang oracle adalah jika oracle dikompromikan, kontrak pintar yang mengandalkannya juga akan dikompromikan. Hal ini sering disebut sebagai Masalah Oracle. 

Karena oracle bukan bagian dari konsensus utama blockchain, sayangnya oracle bukan bagian dari mekanisme keamanan yang dapat disediakan oleh blockchain publik. Konflik kepercayaan antara oracle pihak ketiga dan pelaksanaan kontrak pintar yang tidak dapat dipercaya masih menjadi masalah yang sebagian besar belum terselesaikan.

Serangan man-in-the-middle juga bisa menjadi ancaman, di mana aktor jahat mendapatkan akses ke aliran data antara oracle dan kontrak dan memodifikasi atau memalsukan data tersebut.  


Mekanisme andal yang memfasilitasi komunikasi antara kontrak pintar dan dunia luar sangat penting untuk adopsi blockchain secara global. Tanpa oracle blockchain, kontrak pintar harus bergantung hanya pada informasi yang sudah ada dalam jaringan mereka, yang akan sangat membatasi kemampuan mereka.

Oracle yang terdesentralisasi mempunyai potensi untuk memperkenalkan mekanisme perlindungan yang dapat menghilangkan banyak risiko sistemik dari ekosistem blockchain. Oracle Blockchain tetap menjadi salah satu elemen penting yang harus diterapkan dengan cara yang aman, andal, dan tidak dapat dipercaya agar ekosistem blockchain dapat tumbuh.