Lanjutan Defi

Oracle

Oracle adalah mekanisme yang memasukkan data dari dunia luar ke dalam blockchain — memungkinkan smart contract bereaksi terhadap harga aset, hasil pertandingan, data cuaca, dan informasi off-chain lainnya.

Apa itu Oracle?

Smart contract pada dasarnya buta terhadap dunia luar. Mereka hanya bisa membaca data yang sudah ada di dalam blockchain — tidak bisa langsung mengakses harga ETH di exchange, hasil pemilu, atau data cuaca.

Oracle adalah jembatan yang menyuplai data eksternal ke dalam blockchain, sehingga smart contract bisa bereaksi berdasarkan informasi dari dunia nyata.

Tanpa oracle, hampir tidak ada aplikasi DeFi yang bisa berfungsi: tidak ada protokol lending (butuh harga untuk menghitung collateral), tidak ada derivatif on-chain, tidak ada prediction market.

“Oracle Problem”

Masalah mendasar dengan oracle: blockchain itu trustless, tapi oracle tidak. Jika kamu mengandalkan satu sumber data terpusat sebagai oracle, satu titik kegagalan itu bisa:

  • Memberikan data yang salah (error)
  • Memberikan data yang dimanipulasi (serangan)
  • Tidak tersedia saat dibutuhkan (downtime)

Ini disebut “oracle problem” — bagaimana cara mendapatkan data off-chain yang dapat dipercaya di dalam sistem yang didesain untuk tidak mempercayai siapapun.

Solusi: Decentralized Oracle Network

Chainlink adalah jawaban yang paling banyak digunakan saat ini. Cara kerjanya:

  1. Banyak node operator independen masing-masing mengambil data dari berbagai sumber
  2. Data diagregasi dan diambil mediannya — menghilangkan outlier dan manipulasi dari satu sumber
  3. Hasil agregasi dikirim ke smart contract on-chain
  4. Node yang memberikan data jauh dari median kehilangan stake-nya (slashing)

Dengan model ini, untuk memanipulasi harga yang dilaporkan, penyerang harus mengompromikan mayoritas node sekaligus — jauh lebih sulit dan mahal.

Price Feed: Penggunaan Paling Kritis di DeFi

Mayoritas protokol DeFi menggunakan oracle untuk price feed — harga real-time dari berbagai aset. Protokol seperti Aave, Compound, dan MakerDAO semuanya bergantung pada Chainlink untuk menentukan nilai collateral dan memicu likuidasi.

Serangan Oracle: Ketika Oracle Dimanipulasi

Flash loan attack sering memanfaatkan oracle yang lemah. Jika sebuah protokol menggunakan harga dari satu DEX kecil sebagai oracle, penyerang bisa:

  1. Pinjam dana besar via flash loan
  2. Manipulasi harga di DEX tersebut sesaat
  3. Eksploitasi protokol yang membaca harga termanipulasi
  4. Lunasi flash loan, raup keuntungan

Ini sudah terjadi berkali-kali dan menjadi alasan mengapa penggunaan oracle yang robust bukan opsional — ini keharusan desain.

Jenis Oracle Lain

  • Time-weighted average price (TWAP) — harga rata-rata selama periode waktu tertentu, lebih sulit dimanipulasi daripada spot price
  • Pyth Network — oracle dengan latensi sangat rendah, banyak digunakan di Solana
  • UMA — oracle berbasis optimistic dengan dispute mechanism

Terakhir diperbarui: