Analisis Mesin Oracle Terdistribusi: Bagaimana Agregasi Ganda Menjamin Akurasi Data Harga on-chain

robot
Pembuatan abstrak sedang berlangsung

mekanisme kerja Mesin Oracle harga terdistribusi

Untuk menghindari titik kegagalan tunggal dan meningkatkan keandalan, sistem mesin oracle harga modern mengadopsi desain terdistribusi. Sebagai contoh layanan mesin oracle terkenal, data harga BTC/USD mengagregasi input dari 31 node mesin oracle independen.

Kontrak pintar dari agregator ini dapat dilihat secara publik di penjelajah blockchain Ethereum. Dengan memanggil metode transmitters dalam kontrak, pengguna dapat memperoleh daftar semua node Mesin Oracle off-chain yang termasuk dalam agregator tersebut.

Setiap node Mesin Oracle off-chain dapat memberikan data harga ke aggregator dengan memanggil metode transmit sebagai respons terhadap permintaan pengguna. Node-node ini biasanya adalah akun yang dimiliki secara eksternal (EOA), dan mungkin memberikan data untuk beberapa pasangan harga yang berbeda ( seperti BTC/USD, ETH/USD, dan lain-lain ).

Kontrak agregator di blockchain akan menjalankan serangkaian langkah verifikasi ketika menerima data dari node Mesin Oracle:

  1. Pertama, baca status kontrak saat ini dan lakukan pemeriksaan dasar.

  2. Kemudian lakukan persiapan yang diperlukan.

  3. Gunakan ecrecover() untuk memverifikasi setiap data tanda tangan, memastikan nilai hash sesuai dengan _report. Juga periksa apakah peran penandatangan adalah Signer, dan mencegah tanda tangan ganda.

  4. Terakhir, verifikasi apakah nilai pengamatan terurut dengan benar, pilih median sebagai hasil akhir, dan pastikan hasil tersebut berada dalam rentang ambang yang telah ditetapkan.

Setelah semua pemeriksaan berhasil, kontrak akan mencatat jawaban mesin oracle kali ini dalam s_transmissions. Selain itu, jawaban juga akan diverifikasi lebih lanjut, misalnya dengan membandingkannya dengan sumber harga lain ( seperti harga dari beberapa DEX ), untuk memastikan deviasi berada dalam batas yang dapat diterima.

Mesin Oracle

Proses Akses Sederhana Feed Registry

Untuk lebih menyederhanakan proses integrasi dan mengurangi biaya pengelolaan, beberapa layanan Mesin Oracle menyediakan Feed Registry. Ini dapat dipahami sebagai pengumpul PriceFeeds, yang telah mengintegrasikan berbagai sumber harga dari berbagai aset. Dengan menggunakan Feed Registry, pengembang tidak perlu mengatur priceFeed secara terpisah untuk setiap aset, melainkan dapat langsung membaca data harga berbagai aset melalui antarmuka yang terstandarisasi.

Mesin Oracle

Mekanisme agregasi data berlapis

Layanan mesin oracle harga berkualitas tinggi biasanya menggunakan mekanisme agregasi data multi-level, yang terutama mencakup tiga tingkat: agregasi sumber data, agregasi operator node, dan agregasi jaringan oracle.

  1. Penggabungan Sumber Data: Data harga mentah berasal dari berbagai platform perdagangan terpusat dan terdesentralisasi. Penyedia layanan penggabungan data profesional akan mengumpulkan data mentah ini dan melakukan perhitungan berbobot berdasarkan faktor-faktor seperti volume perdagangan dan likuiditas, untuk menghasilkan hasil penggabungan awal.

  2. Pengoperasian node agregator: Setiap operator node Mesin Oracle akan mendapatkan data harga dari beberapa penyedia layanan agregasi data independen, mengambil nilai tengah dan mengeluarkan nilai anomali, membentuk penawaran untuk node tersebut.

  3. Penggabungan Jaringan Mesin Oracle: Seluruh lapisan jaringan akan menggabungkan data dari semua node lagi, metode yang umum digunakan adalah mengambil nilai median setelah menerima jumlah respons node yang telah ditentukan.

Ketika harga akhir diperbarui di blockchain, perlu memenuhi kondisi seperti ambang deviasi atau ambang heartbeat. Mekanisme agregasi multi-level ini secara signifikan meningkatkan akurasi dan keandalan data.

Namun, karena adanya mekanisme ambang deviasi, pembaruan harga dari beberapa Mesin Oracle mungkin relatif lambat, berkisar dari beberapa menit hingga beberapa jam. Ini membuatnya lebih cocok untuk skenario aplikasi yang kurang sensitif terhadap pembaruan harga, dan mungkin tidak cocok untuk semua jenis aplikasi terdesentralisasi. Para pengembang perlu menimbang kelebihan dan keterbatasan layanan Mesin Oracle saat memilih, dan membuat keputusan berdasarkan kebutuhan aplikasi yang spesifik.

Mesin Oracle详解系列之 Chainlink(下)

Mesin Oracle详解系列之 Chainlink(下)

Mesin Oracle详解系列之 Chainlink(下)

Mesin Oracle

Mesin Oracle

Mesin Oracle详解系列之 Chainlink(下)

Mesin Oracle

Mesin Oracle详解系列之 Chainlink(下)

Mesin Oracle详解系列之 Chainlink(下)

Mesin Oracle

LINK0.73%
Lihat Asli
Halaman ini mungkin berisi konten pihak ketiga, yang disediakan untuk tujuan informasi saja (bukan pernyataan/jaminan) dan tidak boleh dianggap sebagai dukungan terhadap pandangannya oleh Gate, atau sebagai nasihat keuangan atau profesional. Lihat Penafian untuk detailnya.
  • Hadiah
  • 5
  • Bagikan
Komentar
0/400
AirdropGrandpavip
· 7jam yang lalu
Siapa yang sebenarnya menetapkan harga?
Lihat AsliBalas0
GateUser-a606bf0cvip
· 7jam yang lalu
Data Mesin Oracle yang terpercaya adalah inti.
Lihat AsliBalas0
MetaverseVagabondvip
· 7jam yang lalu
Sudah lama saya bermain Mesin Oracle, kalian baru melihatnya.
Lihat AsliBalas0
ForkTonguevip
· 7jam yang lalu
Tidak mungkin, data masih harus digabung?
Lihat AsliBalas0
SerNgmivip
· 7jam yang lalu
Sekarang begitu rumit ya
Lihat AsliBalas0
Perdagangkan Kripto Di Mana Saja Kapan Saja
qrCode
Pindai untuk mengunduh aplikasi Gate
Komunitas
Bahasa Indonesia
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)