Desain dan Implementasi Mesin Oracle Harga Terdistribusi
Untuk menghindari titik kegagalan tunggal dan meningkatkan keandalan, beberapa sistem Mesin Oracle mengadopsi desain terdistribusi. Sebagai contoh, salah satu Mesin Oracle terkenal mengagregasi 31 sumber harga independen untuk layanan harga BTC/USD-nya.
Desain kontrak agregator ini memungkinkan beberapa mesin oracle off-chain untuk menyediakan data harga. Setiap mesin oracle adalah akun eksternal yang independen, yang dapat mengirimkan data ke agregator melalui metode tertentu. Mesin-mesin oracle ini tidak hanya menyediakan data untuk BTC/USD, tetapi juga dapat melayani pasangan harga lainnya secara bersamaan.
Kontrak agregator akan melakukan serangkaian verifikasi saat memproses data yang disubmit:
Pertama, periksa status kontrak saat ini dan apakah semua parameter memenuhi persyaratan.
Kemudian verifikasi setiap tanda tangan, pastikan data berasal dari penandatangan yang berwenang, dan periksa apakah ada tanda tangan yang duplikat.
Mengurutkan nilai observasi, memilih median sebagai hasil akhir, sambil memastikan hasil tersebut tidak melebihi ambang batas yang telah ditetapkan.
Akhirnya, catat hasilnya ke dalam status kontrak, dan mungkin lakukan verifikasi silang tambahan.
Untuk lebih menyederhanakan proses integrasi, beberapa sistem juga menyediakan fitur "Feed Registry". Ini setara dengan agregator sumber harga, di mana pengguna tidak perlu mengatur sumber harga setiap token secara terpisah, tetapi dapat langsung membaca data harga berbagai token melalui Registry.
Dalam mekanisme pemberian harga, biasanya akan ada beberapa lapisan agregasi data:
Tingkat sumber data: Mengintegrasikan data mentah dari berbagai platform perdagangan.
Tingkat operator node: Setiap node mendapatkan data dari beberapa layanan penggabungan data dan mengambil nilai median.
Tingkat jaringan: data dari beberapa node digabungkan kembali, biasanya menggunakan nilai tengah.
Pembaruan harga akhir biasanya harus memenuhi ambang deviasi atau ambang detak jantung untuk dapat memicu. Mekanisme ini menjamin keandalan data, tetapi juga menyebabkan pembaruan harga relatif lambat, lebih cocok untuk skenario aplikasi yang tidak memiliki tuntutan real-time yang tinggi.
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.
20 Suka
Hadiah
20
4
Bagikan
Komentar
0/400
EthMaximalist
· 07-18 16:17
Apakah median masih bisa diterima? Ini agak curang.
Bagaimana mesin oracle terdistribusi mengagregasi data dari berbagai sumber untuk mencapai harga yang dapat diandalkan.
Desain dan Implementasi Mesin Oracle Harga Terdistribusi
Untuk menghindari titik kegagalan tunggal dan meningkatkan keandalan, beberapa sistem Mesin Oracle mengadopsi desain terdistribusi. Sebagai contoh, salah satu Mesin Oracle terkenal mengagregasi 31 sumber harga independen untuk layanan harga BTC/USD-nya.
Desain kontrak agregator ini memungkinkan beberapa mesin oracle off-chain untuk menyediakan data harga. Setiap mesin oracle adalah akun eksternal yang independen, yang dapat mengirimkan data ke agregator melalui metode tertentu. Mesin-mesin oracle ini tidak hanya menyediakan data untuk BTC/USD, tetapi juga dapat melayani pasangan harga lainnya secara bersamaan.
Kontrak agregator akan melakukan serangkaian verifikasi saat memproses data yang disubmit:
Pertama, periksa status kontrak saat ini dan apakah semua parameter memenuhi persyaratan.
Kemudian verifikasi setiap tanda tangan, pastikan data berasal dari penandatangan yang berwenang, dan periksa apakah ada tanda tangan yang duplikat.
Mengurutkan nilai observasi, memilih median sebagai hasil akhir, sambil memastikan hasil tersebut tidak melebihi ambang batas yang telah ditetapkan.
Akhirnya, catat hasilnya ke dalam status kontrak, dan mungkin lakukan verifikasi silang tambahan.
Untuk lebih menyederhanakan proses integrasi, beberapa sistem juga menyediakan fitur "Feed Registry". Ini setara dengan agregator sumber harga, di mana pengguna tidak perlu mengatur sumber harga setiap token secara terpisah, tetapi dapat langsung membaca data harga berbagai token melalui Registry.
Dalam mekanisme pemberian harga, biasanya akan ada beberapa lapisan agregasi data:
Pembaruan harga akhir biasanya harus memenuhi ambang deviasi atau ambang detak jantung untuk dapat memicu. Mekanisme ini menjamin keandalan data, tetapi juga menyebabkan pembaruan harga relatif lambat, lebih cocok untuk skenario aplikasi yang tidak memiliki tuntutan real-time yang tinggi.