Chainlink Mesin Oracle: jembatan yang menghubungkan Blockchain dengan dunia nyata

robot
Pembuatan abstrak sedang berlangsung

Penjelasan Detail Teknologi Mesin Oracle: Contoh Chainlink

Mesin Oracle adalah infrastruktur dasar yang menghubungkan kontrak pintar dengan dunia luar di bidang blockchain. Ini berfungsi sebagai sistem middleware yang dapat menyediakan informasi data eksternal untuk kontrak pintar di blockchain. Fungsi inti dari mesin oracle adalah untuk mengirimkan data ke kontrak pintar di blockchain.

Mesin Oracle详解系列之 Chainlink(上)

Sebagai contoh, misalkan kita telah menerapkan kontrak pintar di jaringan Ethereum yang memerlukan data volume perdagangan minyak mentah pada tanggal tertentu. Karena kontrak pintar itu sendiri tidak dapat mengakses data dunia nyata di luar rantai secara langsung, maka diperlukan Mesin Oracle untuk mewujudkannya. Proses spesifiknya adalah: kontrak pintar pertama-tama menuliskan permintaan data volume perdagangan minyak mentah pada tanggal yang diperlukan ke dalam log peristiwa, kemudian di luar rantai akan memulai proses untuk memantau dan berlangganan log peristiwa ini. Ketika permintaan dalam perdagangan didengar, proses tersebut akan memanggil metode terkait kontrak dengan cara mengajukan transaksi di rantai, untuk mengunggah informasi volume perdagangan minyak mentah pada tanggal yang ditentukan ke dalam kontrak pintar.

Mesin Oracle详解系列之 Chainlink(上)

Di pasar Mesin Oracle, Chainlink memiliki pangsa pasar terbesar. Sebagai proyek Mesin Oracle terdesentralisasi, Chainlink bertujuan untuk menyediakan data yang dihasilkan di dunia nyata ke blockchain dengan cara yang paling aman. Chainlink membangun ekosistem siklus positif di sekitar token LINK melalui insentif ekonomi, berdasarkan prinsip dasar Mesin Oracle. Mesin Oracle Chainlink perlu dipicu melalui transfer token LINK. LINK adalah kontrak ERC677 di jaringan Ethereum, dan fungsi Mesin Oracle yang diselesaikan berdasarkan token LINK termasuk dalam mode permintaan/respons.

Mesin Oracle

Standar token ERC677 menambahkan metode transferAndCall di atas dasar ERC20. Metode ini menggabungkan pembayaran dan permintaan layanan menjadi satu, memenuhi kebutuhan skenario bisnis Mesin Oracle. Ketika pengguna melakukan transfer transferAndCall, selain transfer ERC20, juga akan memeriksa apakah alamat penerima adalah alamat kontrak, jika iya, maka akan memanggil metode onTokenTransfer alamat tersebut.

Mesin Oracle

Sebelum meminta layanan Mesin Oracle, pengguna perlu terlebih dahulu mengonfirmasi keandalan Mesin Oracle tersebut, karena Mesin Oracle harus dibayar terlebih dahulu sebelum memberikan layanan kepada konsumen. Ketika konsumen Mesin Oracle menggunakan metode transferAndCall untuk membayar biaya dan meminta layanan, metode onTokenTransfer dari kontrak Mesin Oracle akan melakukan serangkaian pemeriksaan keamanan, termasuk memverifikasi apakah transfer tersebut menggunakan token LINK, memeriksa apakah panjang data melebihi batas, memverifikasi pemilih fungsi, dan lain-lain. Setelah pemeriksaan berhasil, baru akan memanggil metode oracleRequest dari kontrak oracle melalui deleGatecall.

Mesin Oracle

Metode oracleRequest akan menghasilkan requestId yang unik, mengatur waktu kedaluwarsa, dan memicu peristiwa OracleRequest. Peristiwa ini berisi data permintaan, menggunakan format pengkodean CBOR. Node di luar rantai akan mendengarkan peristiwa ini, menguraikan informasi permintaan, kemudian melalui panggilan API mendapatkan data yang diperlukan, dan akhirnya dengan cara mengirimkan transaksi memanggil metode fulfillOracleRequest untuk mengirimkan data ke dalam rantai.

Mesin Oracle

Metode fulfillOracleRequest akan melakukan serangkaian verifikasi, termasuk memeriksa izin pemanggil, memvalidasi keabsahan permintaan, dan lain-lain. Setelah verifikasi berhasil, jumlah token yang dapat diambil akan dicatat, dan fungsi callback kontrak pemohon akan dipanggil untuk mengembalikan data.

Mesin Oracle详解系列之 Chainlink(上)

Bagi pengembang, jika hanya ingin menggunakan data harga pasangan koin yang sudah ada, mereka dapat langsung memanggil antarmuka Price Feed yang disediakan oleh resmi. Setiap pasangan perdagangan memiliki Price Feed yang terpisah ( yaitu Aggregator ), yang sebenarnya adalah kontrak AggregatorProxy. Pengembang dapat memperoleh data harga terbaru dengan memanggil metode latestRoundData (), di mana parameter answer adalah harga terbaru. Sebagian besar pasangan perdagangan yang dihargai dalam USD memiliki presisi yang sama yaitu 8 digit, yang menyederhanakan penanganan presisi antar token yang berbeda.

Mesin Oracle

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
PebbleHandervip
· 15jam yang lalu
Ya begitulah.
Lihat AsliBalas0
BankruptWorkervip
· 15jam yang lalu
Terlalu sulit, menyerah berjuang.
Lihat AsliBalas0
CryptoGoldminevip
· 15jam yang lalu
Saya menghasilkan 200 kali lipat tahun lalu hanya dari pergerakan harga link, murni berdasarkan analisis teknis.
Lihat AsliBalas0
TestnetScholarvip
· 15jam yang lalu
link sudah disalin lagi
Lihat AsliBalas0
Web3Educatorvip
· 16jam yang lalu
hal-hal yang sangat menarik, biarkan saya menjelaskan ini untuk siswa web3 saya...
Lihat AsliBalas0
  • Sematkan
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)