Penjelasan Teknologi Mesin Oracle: Contoh Chainlink
Dalam ekosistem blockchain, Mesin Oracle memainkan peran kunci dalam menghubungkan kontrak pintar di blockchain dengan dunia luar. Sebagai sebuah infrastruktur, sistem Mesin Oracle dapat menyediakan data eksternal untuk kontrak pintar di blockchain, sehingga memungkinkan skenario aplikasi yang lebih kompleks.
Sebagai contoh, jika kita menerapkan kontrak pintar di jaringan Ethereum yang memerlukan data volume perdagangan minyak mentah pada tanggal tertentu, karena kontrak itu sendiri tidak dapat mengakses informasi di luar rantai secara langsung, maka kita perlu menggunakan Mesin Oracle untuk mewujudkannya. Proses spesifik adalah: kontrak pintar pertama-tama menulis permintaan data yang diperlukan ke dalam log peristiwa, kemudian proses di luar rantai mendengarkan dan menanggapi permintaan ini, dengan mengirimkan transaksi di dalam rantai untuk menyampaikan informasi yang ditentukan kepada kontrak pintar.
Chainlink adalah proyek mesin oracle terdesentralisasi dengan pangsa pasar tertinggi saat ini. Ini membangun mekanisme insentif ekonomi melalui token LINK, membentuk ekosistem siklus yang baik. Pemicu mesin oracle Chainlink perlu dilakukan melalui transfer token LINK, di mana LINK berdasarkan kontrak ERC677 di Ethereum.
Standar ERC677 menambahkan metode transferAndCall di atas dasar ERC20, desain ini memenuhi kebutuhan khusus dari skenario layanan Mesin Oracle. Ketika pengguna memanggil transferAndCall untuk melakukan transfer, selain operasi transfer ERC20 standar, juga akan memeriksa apakah alamat penerima adalah alamat kontrak, jika ya, maka akan memanggil metode onTokenTransfer dari alamat tersebut.
Sebelum meminta layanan Mesin Oracle, pengguna perlu memastikan terlebih dahulu kredibilitas Mesin Oracle tersebut. Kredibilitas Mesin Oracle dapat dievaluasi berdasarkan kinerja historis, sistem reputasi, dan faktor lainnya.
Ketika Mesin Oracle menerima permintaan layanan, ia akan memprosesnya melalui metode onTokenTransfer. Metode ini pertama-tama memverifikasi apakah transfer adalah token LINK, lalu memeriksa keabsahan data permintaan. Setelah verifikasi berhasil, Mesin Oracle akan mengeluarkan sebuah acara OracleRequest yang berisi rincian permintaan.
Setelah node off-chain mendengarkan peristiwa ini, ia akan menganalisis informasi permintaan, mendapatkan data yang diperlukan melalui pemanggilan API, dan kemudian mengirimkan data ke on-chain melalui metode fulfillOracleRequest. Metode ini akan mengembalikan hasil ke fungsi callback pemohon setelah melakukan serangkaian verifikasi.
Bagi pengembang, Chainlink juga menyediakan layanan mesin oracle harga yang lebih sederhana. Setiap pasangan perdagangan memiliki Price Feed yang terpisah (juga dikenal sebagai Aggregator), yang pada dasarnya adalah kontrak AggregatorProxy. Kontrak-kontrak ini menyediakan beberapa metode kunci, seperti mendapatkan data harga terbaru dengan latestRoundData(). Dalam sebagian besar skenario aplikasi, kontrak hanya perlu membaca harga terbaru.
Perlu dicatat bahwa pasangan perdagangan yang dihargai dalam dolar AS biasanya memiliki akurasi data harga yang diseragamkan menjadi 8 digit, yang menyederhanakan masalah penanganan akurasi harga antar berbagai token.
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.
13 Suka
Hadiah
13
6
Posting ulang
Bagikan
Komentar
0/400
DefiSecurityGuard
· 16jam yang lalu
mmm... pola aliran data yang mencurigakan di chainlink. vektor serangan potensial melalui manipulasi oracle. lanjutkan dengan hati-hati. nfa.
Lihat AsliBalas0
DAOplomacy
· 08-10 12:47
preseden sejarah menunjukkan bahwa oracle moat tetap... *sub-optimal* penyelarasan insentif sejujurnya
Mesin Oracle Chainlink: jembatan yang menghubungkan smart contract dengan dunia luar
Penjelasan Teknologi Mesin Oracle: Contoh Chainlink
Dalam ekosistem blockchain, Mesin Oracle memainkan peran kunci dalam menghubungkan kontrak pintar di blockchain dengan dunia luar. Sebagai sebuah infrastruktur, sistem Mesin Oracle dapat menyediakan data eksternal untuk kontrak pintar di blockchain, sehingga memungkinkan skenario aplikasi yang lebih kompleks.
Sebagai contoh, jika kita menerapkan kontrak pintar di jaringan Ethereum yang memerlukan data volume perdagangan minyak mentah pada tanggal tertentu, karena kontrak itu sendiri tidak dapat mengakses informasi di luar rantai secara langsung, maka kita perlu menggunakan Mesin Oracle untuk mewujudkannya. Proses spesifik adalah: kontrak pintar pertama-tama menulis permintaan data yang diperlukan ke dalam log peristiwa, kemudian proses di luar rantai mendengarkan dan menanggapi permintaan ini, dengan mengirimkan transaksi di dalam rantai untuk menyampaikan informasi yang ditentukan kepada kontrak pintar.
Chainlink adalah proyek mesin oracle terdesentralisasi dengan pangsa pasar tertinggi saat ini. Ini membangun mekanisme insentif ekonomi melalui token LINK, membentuk ekosistem siklus yang baik. Pemicu mesin oracle Chainlink perlu dilakukan melalui transfer token LINK, di mana LINK berdasarkan kontrak ERC677 di Ethereum.
Standar ERC677 menambahkan metode transferAndCall di atas dasar ERC20, desain ini memenuhi kebutuhan khusus dari skenario layanan Mesin Oracle. Ketika pengguna memanggil transferAndCall untuk melakukan transfer, selain operasi transfer ERC20 standar, juga akan memeriksa apakah alamat penerima adalah alamat kontrak, jika ya, maka akan memanggil metode onTokenTransfer dari alamat tersebut.
Sebelum meminta layanan Mesin Oracle, pengguna perlu memastikan terlebih dahulu kredibilitas Mesin Oracle tersebut. Kredibilitas Mesin Oracle dapat dievaluasi berdasarkan kinerja historis, sistem reputasi, dan faktor lainnya.
Ketika Mesin Oracle menerima permintaan layanan, ia akan memprosesnya melalui metode onTokenTransfer. Metode ini pertama-tama memverifikasi apakah transfer adalah token LINK, lalu memeriksa keabsahan data permintaan. Setelah verifikasi berhasil, Mesin Oracle akan mengeluarkan sebuah acara OracleRequest yang berisi rincian permintaan.
Setelah node off-chain mendengarkan peristiwa ini, ia akan menganalisis informasi permintaan, mendapatkan data yang diperlukan melalui pemanggilan API, dan kemudian mengirimkan data ke on-chain melalui metode fulfillOracleRequest. Metode ini akan mengembalikan hasil ke fungsi callback pemohon setelah melakukan serangkaian verifikasi.
Bagi pengembang, Chainlink juga menyediakan layanan mesin oracle harga yang lebih sederhana. Setiap pasangan perdagangan memiliki Price Feed yang terpisah (juga dikenal sebagai Aggregator), yang pada dasarnya adalah kontrak AggregatorProxy. Kontrak-kontrak ini menyediakan beberapa metode kunci, seperti mendapatkan data harga terbaru dengan latestRoundData(). Dalam sebagian besar skenario aplikasi, kontrak hanya perlu membaca harga terbaru.
Perlu dicatat bahwa pasangan perdagangan yang dihargai dalam dolar AS biasanya memiliki akurasi data harga yang diseragamkan menjadi 8 digit, yang menyederhanakan masalah penanganan akurasi harga antar berbagai token.