Pelajaran 2

Mekanisme Kerja Dasar Oracle

Pada pelajaran sebelumnya, kita telah memahami alasan blockchain membutuhkan oracle: karena blockchain merupakan sistem tertutup, smart contract tidak dapat secara langsung mengakses data dari dunia nyata. Oleh karena itu, diperlukan mekanisme yang dapat membawa informasi off-chain ke on-chain secara aman. Oracle menjadi infrastruktur penting yang menghubungkan dunia on-chain dan off-chain. Namun, oracle tidak hanya sekadar membaca data dan mengunggahnya ke blockchain. Sistem oracle yang andal umumnya terdiri dari beberapa komponen, seperti pengumpulan data, validasi data, publikasi on-chain, dan mekanisme pembaruan. Jika desain komponen-komponen ini tidak tepat, data yang keliru dapat tercatat di blockchain dan berpotensi mengganggu keamanan seluruh ekosistem DeFi. Pada pelajaran ini, kita akan membahas secara sistematis alur kerja dasar oracle agar Anda dapat memahami bagaimana data off-chain dikumpulkan, diverifikasi, dan akhirnya digunakan oleh smart contract.

Akuisisi Data: Cara Informasi Off-Chain Dikumpulkan

Langkah awal dalam sistem oracle adalah memperoleh data yang dibutuhkan dari dunia nyata atau internet. Data ini dapat berasal dari harga bursa, indeks pasar keuangan, informasi cuaca, hasil olahraga, atau data dari perangkat IoT.

Dalam praktiknya, oracle biasanya mengumpulkan data dari berbagai sumber, bukan hanya satu. Hal ini karena satu sumber data dapat mengalami kesalahan, keterlambatan, atau bahkan manipulasi. Dengan mengumpulkan data dari banyak sumber, sistem dapat meningkatkan keandalan data dan mengurangi risiko.

Sumber data yang umum meliputi:

  • Data bursa terpusat (seperti harga pasar spot atau derivatif)
  • Data perdagangan on-chain (harga transaksi DEX atau indikator TWAP)
  • Penyedia data profesional (platform data keuangan atau penyedia indeks)
  • Sistem informasi dunia nyata (cuaca, penerbangan, acara olahraga, dan sebagainya)

Pengumpulan data biasanya dilakukan oleh node oracle. Node-node ini menjalankan perangkat lunak khusus, memantau sumber data eksternal secara berkelanjutan, dan mengirimkan informasi terbaru ke jaringan oracle untuk diproses lebih lanjut.

Validasi Data: Mencegah Kesalahan dan Manipulasi

Jika oracle hanya mengunggah data ke blockchain, sistem tetap rentan terhadap kesalahan atau manipulasi. Oleh karena itu, sebagian besar sistem oracle melakukan validasi dan agregasi sebelum data diunggah ke on-chain.

Proses ini biasanya dilakukan melalui kolaborasi multi-node. Node yang berbeda mengirimkan data yang mereka kumpulkan, lalu data tersebut diakumulasi menggunakan algoritma seperti rata-rata atau median. Dengan demikian, meskipun ada beberapa node yang mengirimkan data salah, dampaknya terhadap hasil akhir tidak signifikan.

Beberapa jaringan oracle juga menerapkan mekanisme keamanan tambahan, seperti:

  • Sistem reputasi node: menilai keandalan node berdasarkan kinerja historis
  • Mekanisme staking dan penalti: node harus melakukan staking token dan dapat dikenakan penalti jika mengirimkan data yang salah
  • Algoritma deteksi anomali: mengidentifikasi nilai outlier yang sangat menyimpang dari sebagian besar data

Dengan mekanisme tersebut, sistem oracle dapat mencegah manipulasi data secara jahat dan meningkatkan kualitas data secara keseluruhan.

Data On-Chain: Cara Smart Contract Mengakses Data Eksternal

Setelah validasi dan agregasi, node oracle mengirimkan hasil akhir ke blockchain dan menuliskannya ke smart contract tertentu. Proses ini dikenal sebagai “price feed.”

Dari perspektif smart contract, data oracle tidak berasal langsung dari dunia luar, melainkan disimpan dalam kontrak data on-chain. Protokol DeFi lain hanya perlu memanggil antarmuka kontrak ini untuk membaca data terbaru.

Misalnya, saat protokol peminjaman menentukan apakah suatu akun perlu dilikuidasi, protokol dapat menjalankan logika berikut:

  1. Memanggil kontrak oracle untuk memperoleh harga aset
  2. Menghitung nilai aset jaminan
  3. Menentukan apakah nilainya di bawah ambang batas likuidasi
  4. Jika syarat terpenuhi, lakukan proses likuidasi

Dengan demikian, oracle menjadi titik masuk data utama bagi aplikasi on-chain, memungkinkan smart contract menjalankan logika otomatis berdasarkan informasi dunia nyata.

Frekuensi Pembaruan Data dan Mekanisme Sinkronisasi Harga

Pada aplikasi keuangan, ketepatan waktu data sangat penting. Jika pembaruan harga terlalu lambat, dapat menyebabkan keterlambatan likuidasi, meningkatkan peluang arbitrase, atau bahkan memicu risiko sistemik. Oleh karena itu, sistem oracle biasanya menerapkan mekanisme pembaruan data tertentu.

Berbagai skenario aplikasi memiliki kebutuhan frekuensi pembaruan yang berbeda. Beberapa protokol membutuhkan pembaruan harga secara real-time, sementara yang lain mengutamakan stabilitas data. Untuk menyeimbangkan efisiensi dan biaya, oracle biasanya mengadopsi beberapa strategi pembaruan.

Mekanisme yang umum meliputi:

  • Pembaruan terjadwal: memperbarui data pada interval waktu yang tetap
  • Pemicu deviasi harga: memperbarui saat harga pasar berubah melebihi ambang tertentu
  • Pemicu permintaan on-chain: memperbarui hanya saat smart contract meminta data

Desain mekanisme ini harus mempertimbangkan biaya jaringan, akurasi data, dan volatilitas pasar. Jika pembaruan terlalu sering, biaya transaksi on-chain akan meningkat drastis; jika terlalu lambat, harga dapat tertinggal jauh.

Oleh karena itu, menemukan keseimbangan antara efisiensi, biaya, dan keamanan menjadi tantangan utama dalam desain sistem oracle.

Pernyataan Formal
* Investasi Kripto melibatkan risiko besar. Lanjutkan dengan hati-hati. Kursus ini tidak dimaksudkan sebagai nasihat investasi.
* Kursus ini dibuat oleh penulis yang telah bergabung dengan Gate Learn. Setiap opini yang dibagikan oleh penulis tidak mewakili Gate Learn.