Menjelajahi Keamanan dan Efisiensi dalam Desain Node Ringan

Pemula5/29/2024, 1:15:17 AM
Sebuah makalah yang dipublikasikan bersama oleh TeleportDAO dan Eigen Labs mengeksplorasi tantangan keamanan dan efisiensi yang dihadapi oleh node-node ringan di blockchain proof-of-stake (PoS) dan mengusulkan solusi baru. Melalui insentif ekonomi, mekanisme pre-keamanan yang diasuransikan, dan "keamanan yang dapat diprogram", tujuannya adalah untuk meningkatkan keamanan dan efisiensi node-node ringan, yang memiliki arti penting bagi pengembangan komunikasi lintas rantai dan teknologi blockchain.

Teruskan Judul Asli 'TeleportDAO: Permainan Keamanan dan Efisiensi Verifikasi Data - Praktik Desain Node Ringan Terbaru'

TL;DR

TeleportDAO dan Eigen Labs baru-baru ini bersama-sama menerbitkan sebuah makalah yang berfokus pada tantangan keamanan dan efisiensi yang dihadapi oleh light node ketika mengakses dan memverifikasi data on-chain di blockchain proof-of-stake (PoS). Makalah ini mengusulkan solusi baru untuk memastikan keamanan dan efisiensi simpul cahaya di blockchain PoS melalui serangkaian tindakan seperti insentif ekonomi dan mekanisme pra-keamanan yang diasuransikan, serta "keamanan yang dapat diprogram" yang disesuaikan dan efektivitas biaya. Ini sangat berwawasan ke depan dan layak untuk dipelajari secara mendalam.

Catatan: Eigen Labs adalah pengembang di balik protokol Restaking EigenLayer dan EigenDA. Eigen Labs saat ini telah mengumpulkan lebih dari 150 juta dolar AS dari lembaga modal ventura ternama seperti a16z, Polychain, dan Blockchain Capital.

TeleportDAO berlokasi di Vancouver, Kanada. Ini adalah proyek infrastruktur komunikasi lintas rantai yang berfokus pada rantai publik Bitcoin dan EVM. Protokol ini telah berhasil mengumpulkan $9 juta dalam putaran penjualan publik dan pembiayaan melalui Coinlist. Putaran pembiayaan ini mendapat partisipasi dari berbagai investor termasuk Appworks, OIG Capital, DefinanceX, Oak Grove Ventures, Candaq Ventures, TON, Across, dan bitSmiley.

Masalah-masalah yang Ada dalam Desain Node Ringan

Saat ini, dalam blockchain PoS, validator berpartisipasi dalam jaringan konsensus dengan mengunci sejumlah tertentu dari staking (seperti 32 ETH di Ethereum) untuk memastikan keamanan jaringan. Oleh karena itu, esensi keamanan blockchain PoS dilindungi oleh ekonomi, yaitu semakin besar jumlah staking total, semakin besar biaya atau kerugian yang diperlukan untuk menyerang jaringan konsensus. Implementasi mekanisme pemotongan ini bergantung pada fitur yang disebut "keamanan akuntabilitas", yaitu, jika validator menandatangani keadaan yang bertentangan, staking dapat dipotong.

Node penuh memainkan peran penting dalam mempertahankan integritas blockchain PoS. Mereka menyimpan semua informasi transaksi blok, memverifikasi tanda tangan konsensus, mereplikasi salinan lengkap riwayat transaksi, dan melakukan pembaruan status. Proses ini memerlukan banyak sumber daya komputasi dan perangkat keras yang kompleks. Misalnya, menjalankan node Ethereum penuh memerlukan setidaknya 2 TB penyimpanan SSD. Sebaliknya, node ringan mengurangi persyaratan sumber daya komputasi dan hanya menyimpan header blok, sehingga hanya cocok untuk skenario di mana transaksi/status tertentu diverifikasi, seperti dompet seluler dan jembatan lintas-rantai. Selain itu, node ringan bergantung pada node penuh untuk menyediakan informasi blok saat memverifikasi transaksi, tetapi pangsa pasar saat ini dari penyedia layanan node relatif terkonsentrasi, sehingga keamanan, kemandirian, dan ketepatan waktu tidak dapat sepenuhnya dijamin. Oleh karena itu, makalah ini mengeksplorasi kompromi antara biaya perolehan data dan latensi untuk node ringan untuk mencapai keamanan optimal.

Solusi Desain Node Cahaya yang Ada

Bitcoin memperkenalkan Verifikasi Pembayaran Sederhana (SPV) sebagai protokol node ringan. SPV memungkinkan node ringan untuk menggunakan Bukti Merkle dan header blok untuk memverifikasi apakah transaksi disertakan dalam blok tertentu. Oleh karena itu, node ringan hanya perlu mengunduh header blok dari blockchain untuk memverifikasi finalitas transaksi dengan memeriksa kedalaman blok. Dalam hal ini, biaya komputasi untuk memverifikasi konsensus oleh node ringan di Bitcoin relatif rendah. Namun, dalam blockchain PoS seperti Ethereum, desain pemeriksaan konsensus secara inheren lebih kompleks. Ini melibatkan memelihara seluruh set validator, melacak perubahan staking mereka, dan melakukan banyak pemeriksaan tanda tangan untuk jaringan konsensus. Di sisi lain, keamanan node ringan PoW bergantung pada asumsi bahwa sebagian besar node lengkap jujur. Untuk mengatasi keterbatasan SPV, FlyClient dan Bukti Kerja Non-Interaktif (NiPoPoW) membuktikan blok-blok ini kepada klien dengan biaya sublinear. Namun, aplikabilitas mereka terhadap model konsensus PoS lemah.

Sebaliknya, blockchain PoS mendapatkan keamanan melalui mekanisme pemangkasan. Sistem mengandalkan peserta konsensus yang rasional dan tidak menyerang jaringan jika biaya serangan melebihi potensi keuntungan. Untuk mengurangi biaya verifikasi, protokol node ringan Ethereum saat ini mengandalkan komite sinkronisasi yang terdiri dari 512 validator Ethereum yang dipilih secara acak, masing-masing mempertaruhkan 32 Ethereum, tetapi proses penandatanganan tidak akan dikenai denda. Desain yang tidak dapat dipangkas ini memiliki kelemahan keamanan utama, dan tanda tangan yang tidak jujur dalam komite sinkronisasi dapat menyesatkan node ringan untuk menerima data yang tidak valid tanpa dihukum. Bahkan dengan pengenalan mekanisme pemangkasan, total taruhan Komite Sinkronisasi masih kecil dibandingkan dengan jumlah besar validator Ethereum (per Maret 2024, jumlah validator Ethereum telah melebihi 1 juta). Oleh karena itu, pendekatan ini tidak dapat memberikan keamanan node ringan setara dengan kumpulan validator Ethereum. Model ini mewakili varian khusus dari komputasi multipihak dalam pengaturan rasional, tetapi gagal memberikan jaminan berbasis ekonomi atau mengatasi ancaman yang ditimbulkan oleh penyedia data jahat, irasional.

Untuk mengatasi tantangan keamanan dan efisiensi dalam proses bootstrap PoS, PoPoS memperkenalkan permainan segmentasi untuk secara efektif menantang pohon Merkle musuh dari waktu PoS. Meskipun mereka mencapai jejak minimal dan menghindari kebutuhan klien untuk selalu online dan dipertaruhkan, masalah memungkinkan klien untuk offline tanpa menimbulkan biaya signifikan untuk bergabung kembali ke jaringan masih belum terpecahkan.

Pendekatan penelitian lainnya berfokus pada penggunaan bukti pengetahuan nol untuk membuat bukti yang ringkas. Sebagai contoh, Mina dan Plumo efektif dalam memfasilitasi verifikasi konsensus ringan dengan menggunakan komposisi SNARK rekursif dan bukti transisi state berbasis SNARK. Namun, pendekatan-pendekatan ini memberikan beban komputasi yang signifikan pada produsen blok untuk menghasilkan bukti, dan mereka tidak menangani masalah mengenai mengkompenasikan node ringan untuk kerugian potensial. Dalam konteks protokol PoS lainnya, seperti protokol Tendermint yang digunakan dalam Cosmos, peran node ringan dieksplorasi dalam protokol Inter-Blockchain Communication (IBC) mereka. Namun, implementasi-implementasi ini khusus untuk ekosistem mereka masing-masing dan tidak langsung dapat diterapkan pada Ethereum atau berbagai blockchain PoS lainnya.

Desain Node Cahaya Baru

Secara umum, solusi baru memperkenalkan modul keamanan ekonomi untuk mencapai “keamanan dapat diprogram”, dan node-node ringan dapat memutuskan desain solusi yang berbeda berdasarkan kebutuhan keamanan mereka sendiri. Asumsi keamanan pada dasarnya adalah 1/N + 1/M, yaitu, selama ada node jujur dan valid di node penuh dan jaringan penuntut, operasi normal jaringan dapat dijamin.

  • Blockchain: Protokol dibangun di atas blockchain yang dapat diprogram, dan aturan untuk menyelesaikan blok bersifat deterministik. Sebagai contoh, pada blockchain Ethereum, penyelesaian blok memerlukan setidaknya dua epoch berikutnya, yang biasanya memakan waktu sekitar 13 menit.
  • Kontrak Pemangkasan Pintar: Protokol ini mencakup kontrak pemangkasan on-chain yang sesuai dengan abstraksi kontrak pintar standar. Ini memiliki akses ke hash blok blok sebelumnya dalam blockchain. Semua pihak dapat mengirim pesan ke kontrak ini.
  • Penyedia Data: Penyedia data menjalankan node penuh dan melacak kondisi terkini dari blockchain. Mereka menjanjikan aset dan menyediakan layanan untuk memverifikasi validitas kondisi yang diminta oleh node ringan. Mereka menandatangani semua data yang dikirim ke node ringan dengan kunci rahasia yang sesuai dengan kunci publik mereka, sehingga memverifikasi sumber dan integritas data.
  • Jaksa: Jaksa adalah node-node penuh yang terhubung ke node-node ringan untuk membantu dalam verifikasi data. Siapa pun bisa menjadi jaksa dan mendapatkan keuntungan dengan memantau dan mengurangi pihak-pihak yang berperilaku tidak semestinya. Untuk kesederhanaan, skema berikut mengasumsikan bahwa setiap node ringan terhubung setidaknya ke satu jaksa yang jujur.
  • Node Ringan: Sebuah node ringan memverifikasi apakah suatu status/transaksi tertentu disertakan dalam blockchain dengan biaya terendah. Selama proses verifikasi, node ringan terhubung dengan sekelompok penyedia data dan penuntut.
  • Jaringan: Penyedia data membentuk jaringan peer-to-peer (p2p) dan menggunakan protokol Gossip untuk menyebarkan data. Node ringan terhubung ke beberapa penyedia data untuk mengirim permintaan dan menerima tanggapan.

Opsi 1: Keamanan Pertama

Opsi 1 terutama mencapai kredibilitas data melalui pengenalan periode tantangan dan jaringan jaksa. Singkatnya, setelah node ringan menerima data yang ditandatangani oleh penyedia, node tersebut mengirim bagian data ini ke jaringan jaksa untuk ditinjau. Dalam jangka waktu tertentu, jika terjadi penipuan data, jaksa akan mengingatkan node ringan bahwa data tersebut tidak kredibel, dan modul hukuman dari kontrak cerdas akan menghukum token yang dijanjikan oleh penyedia. Sebaliknya, node ringan dapat mempercayai kredibilitas data-data ini.

Proses khusus dari node ringan yang meminta data:

  1. Node ringan memperoleh daftar penyedia data terbaru dari jaringan saat ini dan menentukan periode tantangan. Perlu dicatat bahwa periode tantangan ini independen di antara node ringan yang berbeda, tetapi batas atas periode tantangan berlaku untuk semua node ringan. Periode tantangan adalah waktu terpanjang bagi jaringan penuntut untuk memeriksa keandalan data, sehingga semakin lama waktu, semakin lama keterlambatan per transaksi.
  2. Setelah mendapatkan daftar tersebut, node ringan akan memilih sekelompok penyedia data dan memastikan bahwa dana yang dipertaruhkan masing-masing lebih besar dari nilai transaksi saat ini. Secara teoritis, semakin tinggi dana yang dipertaruhkan, semakin tinggi biaya pelanggaran penyedia data, dan semakin rendah biaya kepercayaan dari node ringan.
  3. Node ringan mengirim permintaan data yang sesuai ke grup penyedia data ini, yang mencakup nomor blok yang sesuai dan status target (bukti inklusi transaksi ini).
  4. Penyedia data mengirimkan hash blok yang sesuai dan bukti inklusi transaksi, dan melampirkan tanda tangan.
  5. Setelah node ringan menerima bahan-bahan yang disebutkan di atas, node tersebut meneruskannya ke jaringan jaksa terhubung saat ini. Jika tidak ada peringatan keabsahan data yang diterima setelah periode tantangan berakhir, node ringan akan memverifikasi tanda tangan ini dan lulus uji keabsahan data jika tidak ada kesalahan.

  1. Namun jika ada peringatan yang diterima dari jaringan jaksa, node ringan perlu membuang tanda tangan yang diterima sebelumnya. Jaringan jaksa akan mengajukan bukti relevan ke modul hukuman dari kontrak cerdas. Jika kontrak cerdas menemukan bahwa pelanggaran memang terjadi setelah memeriksa data, taruhan penyedia data yang sesuai akan dikenai denda. Karena sebagian/sebagian besar penyedia data yang dipilih telah dikenai denda, node ringan perlu mendapatkan kembali daftar penyedia data baru dari jaringan saat ini untuk mengonfirmasi bahwa peristiwa pemotongan memang terjadi.

Poin lain:

  • Setiap node penuh dapat bergabung atau keluar dari jaringan penyedia data dengan menginisiasi permintaan “pendaftaran” dan “penarikan” ke kontrak pintar. Ada ambang batas staking minimum untuk mendaftar untuk berpartisipasi dalam jaringan penyedia data. Begitu node penuh memilih untuk menginisiasi penarikan, status mereka dalam jaringan akan segera berubah menjadi “pergi”, dan mereka tidak lagi dapat menerima permintaan dari node ringan, untuk mencegah perilaku jahat potensial dari masuk dan keluar secara cepat. Selain itu, jaringan penyedia data memperbarui daftar penyedia data aktif saat ini secara bergantian, di mana penyedia data tidak dapat menerima dana penarikan. Permintaan penarikan akan berlaku pada blok terakhir dari siklus pembaruan saat ini, dan frekuensi pembaruan akan lebih tinggi dari batas periode tantangan untuk memastikan bahwa semua tes ketersediaan data node ringan telah selesai. Karena aktivitas jaringan penyedia data, node ringan perlu memperoleh kembali daftar penyedia aktif saat ini setiap kali jaringan diperbarui. Jika siklus pembaruan diperpanjang, node ringan dapat menikmati proses verifikasi yang lebih efisien (dengan memperkirakan daftar aktif saat ini melalui permintaan “pendaftaran” dan “penarikan” dari siklus sebelumnya), tetapi node yang ingin pergi akan menghadapi waktu tunggu yang lebih lama.
  • Setelah menerima tanda tangan data, jaringan jaksa memeriksa apakah tanda tangan tersebut milik penyedia data dan menilai apakah data telah "akhirnya dikonfirmasi" dalam jaringan konsensus. Jika data tidak muncul di rantai yang wajar, ada dua kemungkinan. Pertama, data belum akhirnya dikonfirmasi oleh blockchain saat ini, rantai berbeda memiliki aturan kepastian yang berbeda, seperti prinsip rantai terpanjang. Kedua, transaksi berada di blok rantai yang wajar lainnya. Jika data tersebut terbukti palsu, jaringan jaksa akan mengirim permintaan pemotongan ke kontrak pintar, yang mencakup kunci publik penyedia data, tanda tangan penyedia data, nomor blok, dan pada saat yang bersamaan mengirim bukti peristiwa pemotongan untuk mengingatkan node ringan. Setelah menerima data ini, kontrak pintar mengukur apakah nomor blok saat ini yang akhirnya dikonfirmasi konsisten dengan data yang diterima sesuai dengan prinsip kepastian lapisan konsensus. Jika tidak konsisten, maka peristiwa pemotongan dipicu. Selain itu, jika seorang penyedia data yang dipilih oleh node ringan dipotong karena kelompok lain permintaan data, jaringan jaksa akan segera mengirim peristiwa pemotongan untuk mengingatkan node ringan bahwa kredibilitas data penyedia data rendah, dan node ringan akan kemudian kembali memperoleh daftar dan memilih penyedia lainnya.

Evaluasi:

  • Keamanan: Node ringan menentukan biaya perilaku jahat bagi penyedia data rasional dan irasional melalui modul staking dan jaringan jaksa, meningkatkan kredibilitas data. Namun, karena protokol keseluruhan didasarkan pada jaringan konsensus (makalah ini diuji di Ethereum), begitu lapisan konsensus diserang, protokol juga dapat menghadapi potensi krisis kepercayaan. Oleh karena itu, mekanisme reputasi dapat diperkenalkan lebih lanjut untuk memastikan risiko sistemik dalam situasi ekstrem.
  • Keamanan Tingkat Node Penuh: Skema ini bertujuan untuk memberikan keamanan yang setara dengan asumsi PoS Ethereum, yaitu, node penuh perlu menanggung risiko pemotongan karena membuat pernyataan palsu.
  • Aktivitas Jaringan: Jika jaringan saat ini hanya memiliki sedikit penyedia data yang rasional, node ringan akan menghadapi beberapa putaran keterlambatan, tetapi karena throughput setiap penyedia data tidak nol, setiap permintaan akan selalu selesai. Oleh karena itu, selama jaringan memiliki satu node penuh yang rasional, itu dapat memastikan jaringan dapat terus beroperasi. Pada saat yang sama, karena pendapatan penyedia data terkait dengan jumlah staking, ini juga mendorong node penuh untuk melindungi jaringan dengan melakukan staking lebih dari yang diperlukan.
  • Efisiensi: Tim penulis artikel memprediksi bahwa validator Ethereum adalah pengguna utama yang berpartisipasi dalam penyedia data, karena validator sudah menjalankan node penuh dan dapat memperoleh pendapatan tambahan melalui protokol ini. Transaksi kecil mungkin mendapatkan data yang dapat dipercaya melalui satu penyedia data (node ringan hanya perlu diverifikasi sekali), sementara transaksi besar mungkin memerlukan beberapa penyedia data untuk mendapatkan data yang dapat dipercaya (jumlah verifikasi meningkat secara linear dengan jumlah penyedia).

Opsi 2: Efisiensi Pertama

Solusi 2 mewujudkan konfirmasi data yang cepat dengan mengusulkan mekanisme asuransi berdasarkan Solusi 1. Secara sederhana, setelah node ringan menentukan asuransi sesuai dengan jumlah dan durasi kebijakan, sebagian/semua jaminan dari penyedia data dapat dikembalikan untuk kerugian berikutnya dari node ringan akibat adanya kejahatan data. Oleh karena itu, setelah node ringan menerima dan memverifikasi tanda tangan data yang diberikan oleh penyedia, itu dapat menentukan keandalan awal data.

Proses khusus dari node ringan meminta data:

  1. Node ringan menghitung kerugian potensial maksimum dari transaksi saat ini, dan kemudian menetapkan jumlah kebijakan asuransi dan periode asuransi. Jumlah dana yang dijanjikan oleh penyedia data untuk asuransi harus lebih besar dari jumlah kebijakan asuransi untuk memastikan dana pembayaran yang cukup.
  2. Node ringan menentukan periode tantangan untuk transaksi. Perlu dicatat bahwa periode kebijakan dapat mencakup pemeriksaan inklusi dari beberapa transaksi, sehingga total periode tantangan yang dipilih oleh node ringan tidak boleh melebihi periode kebijakan, jika tidak beberapa transaksi mungkin tidak tercakup.
  3. Setelah memilih parameter (jumlah kebijakan, jangka waktu kebijakan, jumlah dana yang dijanjikan oleh penyedia data untuk asuransi, daftar penyedia data yang dimaksud), node ringan dapat mengirim permintaan ke kontrak cerdas. Kemudian, setelah menunggu waktu konfirmasi akhir dari blok, node dapat memverifikasi apakah pembelian asuransi berhasil. Jika gagal, mungkin karena node ringan lain juga telah memilih penyedia data dan menyelesaikan terlebih dahulu, sehingga sisa janji tidak cukup untuk memenuhi permintaan aslinya.
  4. Node ringan mengirim permintaan data, yang mencakup nomor asuransi selain nomor blok dan status target (bukti inklusi transaksi).
  5. Penyedia data mengirimkan data dan tanda tangan, node ringan memverifikasi tanda tangan dan meneruskannya ke jaringan jaksa, dan kemudian transaksi telah dikonfirmasi secara preliminer.
  6. Setelah menerima data dan tanda tangan, jaksa akan awalnya memverifikasi kepercayaan dari data tersebut. Jika terdapat perilaku jahat, jaksa akan mengajukan bukti ke kontrak pintar dan memberlakukan denda pada penyedia data yang bersangkutan, yang akan didistribusikan ke node-node ringan.

Poin lain:

  • Token asuransi yang dipertaruhkan penyedia data independen satu sama lain antara permintaan node ringan yang berbeda untuk mencegah risiko pembayaran asuransi ganda. Setelah node ringan memilih penyedia data, kontrak cerdas akan mengunci token yang sesuai yang dijanjikan untuk asuransi, dan node ringan lainnya tidak akan dapat mengalokasikan bagian dari jaminan ini sebelum akhir periode asuransi. Jika transaksi independen, jumlah asuransi sama dengan jumlah transaksi maksimum. Jika tidak, jumlah asuransi sama dengan jumlah transaksi total. Di bawah jumlah jaminan yang sama, node ringan umumnya memilih se sedikit mungkin penyedia data untuk memastikan efisiensi verifikasi.
  • Meskipun penyedia data dapat memulai permintaan “penarikan” sebelum akhir periode asuransi, jumlah penarikan hanya akan diterima setelah akhir periode asuransi.
  • Secara ketat, periode kebijakan asuransi seharusnya lebih besar dari waktu konfirmasi blok terakhir + total periode tantangan + keterlambatan komunikasi + keterlambatan perhitungan/verifikasi. Semakin banyak penyedia data yang Anda pilih, maka periode kebijakan asuransi akan semakin panjang berdasarkan total periode tantangan.

Evaluasi:

  • Skalabilitas: Skalabilitas Opsi 2 ditentukan oleh total jumlah token yang penyedia data bersedia pertaruhkan untuk asuransi.
  • Biaya Kebijakan: Karena tingkat keamanan yang lebih tinggi terkait dengan siklus tantangan, ini berarti bahwa penyedia data harus bertaruh untuk jangka waktu yang lebih besar atau sama dengan siklus tantangan. Oleh karena itu, semakin tinggi persyaratan keamanan, semakin lama siklus taruhan, dan semakin tinggi biaya yang dibayarkan oleh node ringan. Menurut rumus, biaya taruhan penyedia data dihitung oleh pendapatan node penyedia data/(rata-rata pemanfaatan taruhan sepanjang tahun dikalikan dengan total jumlah blok per tahun). Harga yang harus dibayarkan oleh node ringan adalah biaya taruhan dikalikan dengan periode kebijakan dan ukuran kebijakan.

Efektivitas Solusi

Pertama, dari segi efisiensi komputasi simpul ringan, kedua solusi simpul ringan menunjukkan efisiensi verifikasi tingkat milidetik (simpul ringan hanya perlu memverifikasi data sekali).

Kedua, dalam hal latensi node ringan, dalam skenario konfigurasi eksperimental yang berbeda (lihat gambar di bawah), latensi berada pada level milidetik. Perlu dicatat bahwa latensi meningkat secara linear dengan jumlah penyedia data, namun latensi selalu berada pada level milidetik. Selain itu, pada Solusi 1, karena node ringan perlu menunggu hasil periode tantangan, latensi adalah 5 jam. Jika jaringan inspektur cukup andal dan efisien, latensi 5 jam ini juga dapat dikurangi secara signifikan.

Ketiga, dalam hal biaya node ringan, sebenarnya ada dua biaya untuk node ringan: biaya gas dan premi asuransi, keduanya akan meningkat seiring dengan peningkatan jumlah kebijakan asuransi. Selain itu, bagi pemeriksa, gas yang terlibat dalam pengiriman data akan dikembalikan dengan jumlah denda untuk memastikan insentif partisipasi yang memadai.

Arah Perpanjangan

  • Lebih Banyak Jaminan: Saat ini, token yang dipertaruhkan oleh penyedia data adalah ETH, namun informasi transaksi dihitung berdasarkan standar U, yang berarti bahwa node ringan perlu mengukur kurs ETH setiap kali mereka mendapatkan data untuk memastikan jumlah jaminan cukup tinggi. Jika beberapa token diizinkan untuk dipertaruhkan, penyedia data dapat memiliki lebih banyak opsi pertaruhan, sehingga menghindari paparan risiko dari satu mata uang tunggal.
  • Otorisasi: Serupa dengan penambangan bersama, beberapa investor ritel dapat berpartisipasi dalam jaringan penyedia data dengan mengotorisasi ETH mereka sendiri ke node penuh, dan keuntungan didistribusikan sesuai dengan kesepakatan mereka sendiri. Silakan merujuk ke LSD.
  • Jaminan Blok: Untuk menghindari menunggu periode konfirmasi akhir (12-13 detik di Ethereum), node ringan dapat menggunakan jaminan untuk mengurangi waktu tunggu ini. Node ringan akan pertama-tama menambahkan simbol/identifikasi saat meminta data dan menentukan jenis jaminan apa yang diperlukan (konfirmasi akhir/diajukan). Penyedia data menyediakan data dan tanda tangan yang sesuai setelah menerima permintaan. Saat penyedia data tidak memiliki blok yang diajukan dalam situasi “jaminan diajukan”, mereka akan dikenakan denda.
    \
    Catatan: Blok yang diusulkan pada akhirnya akan difinalisasi atau menjadi blok paman.
  • Biaya dan Biaya: Untuk jaringan prosecutor, mereka perlu melakukan staking sejumlah token tertentu (lebih besar dari gas) untuk mengirimkan bukti ke kontrak cerdas. Selain itu, biaya bagian ini dari bukti dapat dikurangi melalui metode zkp. Selain itu, di bawah mekanisme asuransi, premi yang dikirimkan oleh node-node ringan akan diberikan kepada penyedia data, sementara jaringan prosecutor akan menarik sebagian pendapatan denda dari penyedia yang jahat.
  • Ketersediaan Data: Penyedia data pada dasarnya adalah node penuh. Selain berpartisipasi dalam jaringan lapis konsensus, mereka juga dapat memverifikasi ketersediaan data. Ada dua jenis skema untuk memverifikasi ketersediaan: model Tarik dan model Dorong. Yang pertama mengacu pada node ringan secara acak mengekstrak data yang diperoleh dari node penuh. Yang terakhir mengacu pada produsen blok mendistribusikan blok yang berbeda ke penyedia data. Untuk penyedia data yang mengadopsi model Tarik, mereka bertanggung jawab untuk mengembalikan permintaan sampel. Setelah menerima data, node ringan meneruskannya ke node/validator tepercaya, dan mereka mencoba mengembalikan blok. Jika gagal, penyedia data akan dikenai denda. Protokol node ringan dalam artikel ini mengusulkan mekanisme asuransi berdasarkan ini, memberikan arah penelitian baru untuk penelitian ketersediaan data.

Kesimpulan dan Penilaian

Solusi node ringan yang diusulkan dalam artikel ini menyediakan “keamanan yang dapat diprogram” untuk memenuhi kebutuhan keamanan dalam situasi yang berbeda. Opsi 1 menukar latensi yang lebih tinggi untuk keamanan yang tinggi, sementara Opsi 2 menyediakan layanan “konfirmasi instan” untuk node ringan dengan memperkenalkan mekanisme asuransi. Solusi-solusi ini dapat digunakan dalam skenario di mana finalitas transaksi perlu dikonfirmasi, seperti transaksi atomik dan lintas-rantai.

Penafian:

  1. Artikel ini dicetak ulang dari [Mitratama Eureka]. Teruskan Judul Asli 'TeleportDAO: Permainan Keamanan dan Efisiensi Verifikasi Data - Praktek Desain Node Ringan Terbaru'. Semua hak cipta milik penulis asli [Andy、Arthur]*. Jika ada keberatan terhadap penggandaan ini, silakan hubungi Gate Belajartim, dan mereka akan menanganinya dengan cepat.
  2. Penafian Tanggung Jawab: Pandangan dan opini yang terdapat dalam artikel ini semata-mata milik penulis dan tidak merupakan saran investasi apa pun.
  3. Terjemahan artikel ke dalam bahasa lain dilakukan oleh tim Gate Learn. Kecuali disebutkan, menyalin, mendistribusikan, atau menjiplak artikel yang diterjemahkan dilarang.

Menjelajahi Keamanan dan Efisiensi dalam Desain Node Ringan

Pemula5/29/2024, 1:15:17 AM
Sebuah makalah yang dipublikasikan bersama oleh TeleportDAO dan Eigen Labs mengeksplorasi tantangan keamanan dan efisiensi yang dihadapi oleh node-node ringan di blockchain proof-of-stake (PoS) dan mengusulkan solusi baru. Melalui insentif ekonomi, mekanisme pre-keamanan yang diasuransikan, dan "keamanan yang dapat diprogram", tujuannya adalah untuk meningkatkan keamanan dan efisiensi node-node ringan, yang memiliki arti penting bagi pengembangan komunikasi lintas rantai dan teknologi blockchain.

Teruskan Judul Asli 'TeleportDAO: Permainan Keamanan dan Efisiensi Verifikasi Data - Praktik Desain Node Ringan Terbaru'

TL;DR

TeleportDAO dan Eigen Labs baru-baru ini bersama-sama menerbitkan sebuah makalah yang berfokus pada tantangan keamanan dan efisiensi yang dihadapi oleh light node ketika mengakses dan memverifikasi data on-chain di blockchain proof-of-stake (PoS). Makalah ini mengusulkan solusi baru untuk memastikan keamanan dan efisiensi simpul cahaya di blockchain PoS melalui serangkaian tindakan seperti insentif ekonomi dan mekanisme pra-keamanan yang diasuransikan, serta "keamanan yang dapat diprogram" yang disesuaikan dan efektivitas biaya. Ini sangat berwawasan ke depan dan layak untuk dipelajari secara mendalam.

Catatan: Eigen Labs adalah pengembang di balik protokol Restaking EigenLayer dan EigenDA. Eigen Labs saat ini telah mengumpulkan lebih dari 150 juta dolar AS dari lembaga modal ventura ternama seperti a16z, Polychain, dan Blockchain Capital.

TeleportDAO berlokasi di Vancouver, Kanada. Ini adalah proyek infrastruktur komunikasi lintas rantai yang berfokus pada rantai publik Bitcoin dan EVM. Protokol ini telah berhasil mengumpulkan $9 juta dalam putaran penjualan publik dan pembiayaan melalui Coinlist. Putaran pembiayaan ini mendapat partisipasi dari berbagai investor termasuk Appworks, OIG Capital, DefinanceX, Oak Grove Ventures, Candaq Ventures, TON, Across, dan bitSmiley.

Masalah-masalah yang Ada dalam Desain Node Ringan

Saat ini, dalam blockchain PoS, validator berpartisipasi dalam jaringan konsensus dengan mengunci sejumlah tertentu dari staking (seperti 32 ETH di Ethereum) untuk memastikan keamanan jaringan. Oleh karena itu, esensi keamanan blockchain PoS dilindungi oleh ekonomi, yaitu semakin besar jumlah staking total, semakin besar biaya atau kerugian yang diperlukan untuk menyerang jaringan konsensus. Implementasi mekanisme pemotongan ini bergantung pada fitur yang disebut "keamanan akuntabilitas", yaitu, jika validator menandatangani keadaan yang bertentangan, staking dapat dipotong.

Node penuh memainkan peran penting dalam mempertahankan integritas blockchain PoS. Mereka menyimpan semua informasi transaksi blok, memverifikasi tanda tangan konsensus, mereplikasi salinan lengkap riwayat transaksi, dan melakukan pembaruan status. Proses ini memerlukan banyak sumber daya komputasi dan perangkat keras yang kompleks. Misalnya, menjalankan node Ethereum penuh memerlukan setidaknya 2 TB penyimpanan SSD. Sebaliknya, node ringan mengurangi persyaratan sumber daya komputasi dan hanya menyimpan header blok, sehingga hanya cocok untuk skenario di mana transaksi/status tertentu diverifikasi, seperti dompet seluler dan jembatan lintas-rantai. Selain itu, node ringan bergantung pada node penuh untuk menyediakan informasi blok saat memverifikasi transaksi, tetapi pangsa pasar saat ini dari penyedia layanan node relatif terkonsentrasi, sehingga keamanan, kemandirian, dan ketepatan waktu tidak dapat sepenuhnya dijamin. Oleh karena itu, makalah ini mengeksplorasi kompromi antara biaya perolehan data dan latensi untuk node ringan untuk mencapai keamanan optimal.

Solusi Desain Node Cahaya yang Ada

Bitcoin memperkenalkan Verifikasi Pembayaran Sederhana (SPV) sebagai protokol node ringan. SPV memungkinkan node ringan untuk menggunakan Bukti Merkle dan header blok untuk memverifikasi apakah transaksi disertakan dalam blok tertentu. Oleh karena itu, node ringan hanya perlu mengunduh header blok dari blockchain untuk memverifikasi finalitas transaksi dengan memeriksa kedalaman blok. Dalam hal ini, biaya komputasi untuk memverifikasi konsensus oleh node ringan di Bitcoin relatif rendah. Namun, dalam blockchain PoS seperti Ethereum, desain pemeriksaan konsensus secara inheren lebih kompleks. Ini melibatkan memelihara seluruh set validator, melacak perubahan staking mereka, dan melakukan banyak pemeriksaan tanda tangan untuk jaringan konsensus. Di sisi lain, keamanan node ringan PoW bergantung pada asumsi bahwa sebagian besar node lengkap jujur. Untuk mengatasi keterbatasan SPV, FlyClient dan Bukti Kerja Non-Interaktif (NiPoPoW) membuktikan blok-blok ini kepada klien dengan biaya sublinear. Namun, aplikabilitas mereka terhadap model konsensus PoS lemah.

Sebaliknya, blockchain PoS mendapatkan keamanan melalui mekanisme pemangkasan. Sistem mengandalkan peserta konsensus yang rasional dan tidak menyerang jaringan jika biaya serangan melebihi potensi keuntungan. Untuk mengurangi biaya verifikasi, protokol node ringan Ethereum saat ini mengandalkan komite sinkronisasi yang terdiri dari 512 validator Ethereum yang dipilih secara acak, masing-masing mempertaruhkan 32 Ethereum, tetapi proses penandatanganan tidak akan dikenai denda. Desain yang tidak dapat dipangkas ini memiliki kelemahan keamanan utama, dan tanda tangan yang tidak jujur dalam komite sinkronisasi dapat menyesatkan node ringan untuk menerima data yang tidak valid tanpa dihukum. Bahkan dengan pengenalan mekanisme pemangkasan, total taruhan Komite Sinkronisasi masih kecil dibandingkan dengan jumlah besar validator Ethereum (per Maret 2024, jumlah validator Ethereum telah melebihi 1 juta). Oleh karena itu, pendekatan ini tidak dapat memberikan keamanan node ringan setara dengan kumpulan validator Ethereum. Model ini mewakili varian khusus dari komputasi multipihak dalam pengaturan rasional, tetapi gagal memberikan jaminan berbasis ekonomi atau mengatasi ancaman yang ditimbulkan oleh penyedia data jahat, irasional.

Untuk mengatasi tantangan keamanan dan efisiensi dalam proses bootstrap PoS, PoPoS memperkenalkan permainan segmentasi untuk secara efektif menantang pohon Merkle musuh dari waktu PoS. Meskipun mereka mencapai jejak minimal dan menghindari kebutuhan klien untuk selalu online dan dipertaruhkan, masalah memungkinkan klien untuk offline tanpa menimbulkan biaya signifikan untuk bergabung kembali ke jaringan masih belum terpecahkan.

Pendekatan penelitian lainnya berfokus pada penggunaan bukti pengetahuan nol untuk membuat bukti yang ringkas. Sebagai contoh, Mina dan Plumo efektif dalam memfasilitasi verifikasi konsensus ringan dengan menggunakan komposisi SNARK rekursif dan bukti transisi state berbasis SNARK. Namun, pendekatan-pendekatan ini memberikan beban komputasi yang signifikan pada produsen blok untuk menghasilkan bukti, dan mereka tidak menangani masalah mengenai mengkompenasikan node ringan untuk kerugian potensial. Dalam konteks protokol PoS lainnya, seperti protokol Tendermint yang digunakan dalam Cosmos, peran node ringan dieksplorasi dalam protokol Inter-Blockchain Communication (IBC) mereka. Namun, implementasi-implementasi ini khusus untuk ekosistem mereka masing-masing dan tidak langsung dapat diterapkan pada Ethereum atau berbagai blockchain PoS lainnya.

Desain Node Cahaya Baru

Secara umum, solusi baru memperkenalkan modul keamanan ekonomi untuk mencapai “keamanan dapat diprogram”, dan node-node ringan dapat memutuskan desain solusi yang berbeda berdasarkan kebutuhan keamanan mereka sendiri. Asumsi keamanan pada dasarnya adalah 1/N + 1/M, yaitu, selama ada node jujur dan valid di node penuh dan jaringan penuntut, operasi normal jaringan dapat dijamin.

  • Blockchain: Protokol dibangun di atas blockchain yang dapat diprogram, dan aturan untuk menyelesaikan blok bersifat deterministik. Sebagai contoh, pada blockchain Ethereum, penyelesaian blok memerlukan setidaknya dua epoch berikutnya, yang biasanya memakan waktu sekitar 13 menit.
  • Kontrak Pemangkasan Pintar: Protokol ini mencakup kontrak pemangkasan on-chain yang sesuai dengan abstraksi kontrak pintar standar. Ini memiliki akses ke hash blok blok sebelumnya dalam blockchain. Semua pihak dapat mengirim pesan ke kontrak ini.
  • Penyedia Data: Penyedia data menjalankan node penuh dan melacak kondisi terkini dari blockchain. Mereka menjanjikan aset dan menyediakan layanan untuk memverifikasi validitas kondisi yang diminta oleh node ringan. Mereka menandatangani semua data yang dikirim ke node ringan dengan kunci rahasia yang sesuai dengan kunci publik mereka, sehingga memverifikasi sumber dan integritas data.
  • Jaksa: Jaksa adalah node-node penuh yang terhubung ke node-node ringan untuk membantu dalam verifikasi data. Siapa pun bisa menjadi jaksa dan mendapatkan keuntungan dengan memantau dan mengurangi pihak-pihak yang berperilaku tidak semestinya. Untuk kesederhanaan, skema berikut mengasumsikan bahwa setiap node ringan terhubung setidaknya ke satu jaksa yang jujur.
  • Node Ringan: Sebuah node ringan memverifikasi apakah suatu status/transaksi tertentu disertakan dalam blockchain dengan biaya terendah. Selama proses verifikasi, node ringan terhubung dengan sekelompok penyedia data dan penuntut.
  • Jaringan: Penyedia data membentuk jaringan peer-to-peer (p2p) dan menggunakan protokol Gossip untuk menyebarkan data. Node ringan terhubung ke beberapa penyedia data untuk mengirim permintaan dan menerima tanggapan.

Opsi 1: Keamanan Pertama

Opsi 1 terutama mencapai kredibilitas data melalui pengenalan periode tantangan dan jaringan jaksa. Singkatnya, setelah node ringan menerima data yang ditandatangani oleh penyedia, node tersebut mengirim bagian data ini ke jaringan jaksa untuk ditinjau. Dalam jangka waktu tertentu, jika terjadi penipuan data, jaksa akan mengingatkan node ringan bahwa data tersebut tidak kredibel, dan modul hukuman dari kontrak cerdas akan menghukum token yang dijanjikan oleh penyedia. Sebaliknya, node ringan dapat mempercayai kredibilitas data-data ini.

Proses khusus dari node ringan yang meminta data:

  1. Node ringan memperoleh daftar penyedia data terbaru dari jaringan saat ini dan menentukan periode tantangan. Perlu dicatat bahwa periode tantangan ini independen di antara node ringan yang berbeda, tetapi batas atas periode tantangan berlaku untuk semua node ringan. Periode tantangan adalah waktu terpanjang bagi jaringan penuntut untuk memeriksa keandalan data, sehingga semakin lama waktu, semakin lama keterlambatan per transaksi.
  2. Setelah mendapatkan daftar tersebut, node ringan akan memilih sekelompok penyedia data dan memastikan bahwa dana yang dipertaruhkan masing-masing lebih besar dari nilai transaksi saat ini. Secara teoritis, semakin tinggi dana yang dipertaruhkan, semakin tinggi biaya pelanggaran penyedia data, dan semakin rendah biaya kepercayaan dari node ringan.
  3. Node ringan mengirim permintaan data yang sesuai ke grup penyedia data ini, yang mencakup nomor blok yang sesuai dan status target (bukti inklusi transaksi ini).
  4. Penyedia data mengirimkan hash blok yang sesuai dan bukti inklusi transaksi, dan melampirkan tanda tangan.
  5. Setelah node ringan menerima bahan-bahan yang disebutkan di atas, node tersebut meneruskannya ke jaringan jaksa terhubung saat ini. Jika tidak ada peringatan keabsahan data yang diterima setelah periode tantangan berakhir, node ringan akan memverifikasi tanda tangan ini dan lulus uji keabsahan data jika tidak ada kesalahan.

  1. Namun jika ada peringatan yang diterima dari jaringan jaksa, node ringan perlu membuang tanda tangan yang diterima sebelumnya. Jaringan jaksa akan mengajukan bukti relevan ke modul hukuman dari kontrak cerdas. Jika kontrak cerdas menemukan bahwa pelanggaran memang terjadi setelah memeriksa data, taruhan penyedia data yang sesuai akan dikenai denda. Karena sebagian/sebagian besar penyedia data yang dipilih telah dikenai denda, node ringan perlu mendapatkan kembali daftar penyedia data baru dari jaringan saat ini untuk mengonfirmasi bahwa peristiwa pemotongan memang terjadi.

Poin lain:

  • Setiap node penuh dapat bergabung atau keluar dari jaringan penyedia data dengan menginisiasi permintaan “pendaftaran” dan “penarikan” ke kontrak pintar. Ada ambang batas staking minimum untuk mendaftar untuk berpartisipasi dalam jaringan penyedia data. Begitu node penuh memilih untuk menginisiasi penarikan, status mereka dalam jaringan akan segera berubah menjadi “pergi”, dan mereka tidak lagi dapat menerima permintaan dari node ringan, untuk mencegah perilaku jahat potensial dari masuk dan keluar secara cepat. Selain itu, jaringan penyedia data memperbarui daftar penyedia data aktif saat ini secara bergantian, di mana penyedia data tidak dapat menerima dana penarikan. Permintaan penarikan akan berlaku pada blok terakhir dari siklus pembaruan saat ini, dan frekuensi pembaruan akan lebih tinggi dari batas periode tantangan untuk memastikan bahwa semua tes ketersediaan data node ringan telah selesai. Karena aktivitas jaringan penyedia data, node ringan perlu memperoleh kembali daftar penyedia aktif saat ini setiap kali jaringan diperbarui. Jika siklus pembaruan diperpanjang, node ringan dapat menikmati proses verifikasi yang lebih efisien (dengan memperkirakan daftar aktif saat ini melalui permintaan “pendaftaran” dan “penarikan” dari siklus sebelumnya), tetapi node yang ingin pergi akan menghadapi waktu tunggu yang lebih lama.
  • Setelah menerima tanda tangan data, jaringan jaksa memeriksa apakah tanda tangan tersebut milik penyedia data dan menilai apakah data telah "akhirnya dikonfirmasi" dalam jaringan konsensus. Jika data tidak muncul di rantai yang wajar, ada dua kemungkinan. Pertama, data belum akhirnya dikonfirmasi oleh blockchain saat ini, rantai berbeda memiliki aturan kepastian yang berbeda, seperti prinsip rantai terpanjang. Kedua, transaksi berada di blok rantai yang wajar lainnya. Jika data tersebut terbukti palsu, jaringan jaksa akan mengirim permintaan pemotongan ke kontrak pintar, yang mencakup kunci publik penyedia data, tanda tangan penyedia data, nomor blok, dan pada saat yang bersamaan mengirim bukti peristiwa pemotongan untuk mengingatkan node ringan. Setelah menerima data ini, kontrak pintar mengukur apakah nomor blok saat ini yang akhirnya dikonfirmasi konsisten dengan data yang diterima sesuai dengan prinsip kepastian lapisan konsensus. Jika tidak konsisten, maka peristiwa pemotongan dipicu. Selain itu, jika seorang penyedia data yang dipilih oleh node ringan dipotong karena kelompok lain permintaan data, jaringan jaksa akan segera mengirim peristiwa pemotongan untuk mengingatkan node ringan bahwa kredibilitas data penyedia data rendah, dan node ringan akan kemudian kembali memperoleh daftar dan memilih penyedia lainnya.

Evaluasi:

  • Keamanan: Node ringan menentukan biaya perilaku jahat bagi penyedia data rasional dan irasional melalui modul staking dan jaringan jaksa, meningkatkan kredibilitas data. Namun, karena protokol keseluruhan didasarkan pada jaringan konsensus (makalah ini diuji di Ethereum), begitu lapisan konsensus diserang, protokol juga dapat menghadapi potensi krisis kepercayaan. Oleh karena itu, mekanisme reputasi dapat diperkenalkan lebih lanjut untuk memastikan risiko sistemik dalam situasi ekstrem.
  • Keamanan Tingkat Node Penuh: Skema ini bertujuan untuk memberikan keamanan yang setara dengan asumsi PoS Ethereum, yaitu, node penuh perlu menanggung risiko pemotongan karena membuat pernyataan palsu.
  • Aktivitas Jaringan: Jika jaringan saat ini hanya memiliki sedikit penyedia data yang rasional, node ringan akan menghadapi beberapa putaran keterlambatan, tetapi karena throughput setiap penyedia data tidak nol, setiap permintaan akan selalu selesai. Oleh karena itu, selama jaringan memiliki satu node penuh yang rasional, itu dapat memastikan jaringan dapat terus beroperasi. Pada saat yang sama, karena pendapatan penyedia data terkait dengan jumlah staking, ini juga mendorong node penuh untuk melindungi jaringan dengan melakukan staking lebih dari yang diperlukan.
  • Efisiensi: Tim penulis artikel memprediksi bahwa validator Ethereum adalah pengguna utama yang berpartisipasi dalam penyedia data, karena validator sudah menjalankan node penuh dan dapat memperoleh pendapatan tambahan melalui protokol ini. Transaksi kecil mungkin mendapatkan data yang dapat dipercaya melalui satu penyedia data (node ringan hanya perlu diverifikasi sekali), sementara transaksi besar mungkin memerlukan beberapa penyedia data untuk mendapatkan data yang dapat dipercaya (jumlah verifikasi meningkat secara linear dengan jumlah penyedia).

Opsi 2: Efisiensi Pertama

Solusi 2 mewujudkan konfirmasi data yang cepat dengan mengusulkan mekanisme asuransi berdasarkan Solusi 1. Secara sederhana, setelah node ringan menentukan asuransi sesuai dengan jumlah dan durasi kebijakan, sebagian/semua jaminan dari penyedia data dapat dikembalikan untuk kerugian berikutnya dari node ringan akibat adanya kejahatan data. Oleh karena itu, setelah node ringan menerima dan memverifikasi tanda tangan data yang diberikan oleh penyedia, itu dapat menentukan keandalan awal data.

Proses khusus dari node ringan meminta data:

  1. Node ringan menghitung kerugian potensial maksimum dari transaksi saat ini, dan kemudian menetapkan jumlah kebijakan asuransi dan periode asuransi. Jumlah dana yang dijanjikan oleh penyedia data untuk asuransi harus lebih besar dari jumlah kebijakan asuransi untuk memastikan dana pembayaran yang cukup.
  2. Node ringan menentukan periode tantangan untuk transaksi. Perlu dicatat bahwa periode kebijakan dapat mencakup pemeriksaan inklusi dari beberapa transaksi, sehingga total periode tantangan yang dipilih oleh node ringan tidak boleh melebihi periode kebijakan, jika tidak beberapa transaksi mungkin tidak tercakup.
  3. Setelah memilih parameter (jumlah kebijakan, jangka waktu kebijakan, jumlah dana yang dijanjikan oleh penyedia data untuk asuransi, daftar penyedia data yang dimaksud), node ringan dapat mengirim permintaan ke kontrak cerdas. Kemudian, setelah menunggu waktu konfirmasi akhir dari blok, node dapat memverifikasi apakah pembelian asuransi berhasil. Jika gagal, mungkin karena node ringan lain juga telah memilih penyedia data dan menyelesaikan terlebih dahulu, sehingga sisa janji tidak cukup untuk memenuhi permintaan aslinya.
  4. Node ringan mengirim permintaan data, yang mencakup nomor asuransi selain nomor blok dan status target (bukti inklusi transaksi).
  5. Penyedia data mengirimkan data dan tanda tangan, node ringan memverifikasi tanda tangan dan meneruskannya ke jaringan jaksa, dan kemudian transaksi telah dikonfirmasi secara preliminer.
  6. Setelah menerima data dan tanda tangan, jaksa akan awalnya memverifikasi kepercayaan dari data tersebut. Jika terdapat perilaku jahat, jaksa akan mengajukan bukti ke kontrak pintar dan memberlakukan denda pada penyedia data yang bersangkutan, yang akan didistribusikan ke node-node ringan.

Poin lain:

  • Token asuransi yang dipertaruhkan penyedia data independen satu sama lain antara permintaan node ringan yang berbeda untuk mencegah risiko pembayaran asuransi ganda. Setelah node ringan memilih penyedia data, kontrak cerdas akan mengunci token yang sesuai yang dijanjikan untuk asuransi, dan node ringan lainnya tidak akan dapat mengalokasikan bagian dari jaminan ini sebelum akhir periode asuransi. Jika transaksi independen, jumlah asuransi sama dengan jumlah transaksi maksimum. Jika tidak, jumlah asuransi sama dengan jumlah transaksi total. Di bawah jumlah jaminan yang sama, node ringan umumnya memilih se sedikit mungkin penyedia data untuk memastikan efisiensi verifikasi.
  • Meskipun penyedia data dapat memulai permintaan “penarikan” sebelum akhir periode asuransi, jumlah penarikan hanya akan diterima setelah akhir periode asuransi.
  • Secara ketat, periode kebijakan asuransi seharusnya lebih besar dari waktu konfirmasi blok terakhir + total periode tantangan + keterlambatan komunikasi + keterlambatan perhitungan/verifikasi. Semakin banyak penyedia data yang Anda pilih, maka periode kebijakan asuransi akan semakin panjang berdasarkan total periode tantangan.

Evaluasi:

  • Skalabilitas: Skalabilitas Opsi 2 ditentukan oleh total jumlah token yang penyedia data bersedia pertaruhkan untuk asuransi.
  • Biaya Kebijakan: Karena tingkat keamanan yang lebih tinggi terkait dengan siklus tantangan, ini berarti bahwa penyedia data harus bertaruh untuk jangka waktu yang lebih besar atau sama dengan siklus tantangan. Oleh karena itu, semakin tinggi persyaratan keamanan, semakin lama siklus taruhan, dan semakin tinggi biaya yang dibayarkan oleh node ringan. Menurut rumus, biaya taruhan penyedia data dihitung oleh pendapatan node penyedia data/(rata-rata pemanfaatan taruhan sepanjang tahun dikalikan dengan total jumlah blok per tahun). Harga yang harus dibayarkan oleh node ringan adalah biaya taruhan dikalikan dengan periode kebijakan dan ukuran kebijakan.

Efektivitas Solusi

Pertama, dari segi efisiensi komputasi simpul ringan, kedua solusi simpul ringan menunjukkan efisiensi verifikasi tingkat milidetik (simpul ringan hanya perlu memverifikasi data sekali).

Kedua, dalam hal latensi node ringan, dalam skenario konfigurasi eksperimental yang berbeda (lihat gambar di bawah), latensi berada pada level milidetik. Perlu dicatat bahwa latensi meningkat secara linear dengan jumlah penyedia data, namun latensi selalu berada pada level milidetik. Selain itu, pada Solusi 1, karena node ringan perlu menunggu hasil periode tantangan, latensi adalah 5 jam. Jika jaringan inspektur cukup andal dan efisien, latensi 5 jam ini juga dapat dikurangi secara signifikan.

Ketiga, dalam hal biaya node ringan, sebenarnya ada dua biaya untuk node ringan: biaya gas dan premi asuransi, keduanya akan meningkat seiring dengan peningkatan jumlah kebijakan asuransi. Selain itu, bagi pemeriksa, gas yang terlibat dalam pengiriman data akan dikembalikan dengan jumlah denda untuk memastikan insentif partisipasi yang memadai.

Arah Perpanjangan

  • Lebih Banyak Jaminan: Saat ini, token yang dipertaruhkan oleh penyedia data adalah ETH, namun informasi transaksi dihitung berdasarkan standar U, yang berarti bahwa node ringan perlu mengukur kurs ETH setiap kali mereka mendapatkan data untuk memastikan jumlah jaminan cukup tinggi. Jika beberapa token diizinkan untuk dipertaruhkan, penyedia data dapat memiliki lebih banyak opsi pertaruhan, sehingga menghindari paparan risiko dari satu mata uang tunggal.
  • Otorisasi: Serupa dengan penambangan bersama, beberapa investor ritel dapat berpartisipasi dalam jaringan penyedia data dengan mengotorisasi ETH mereka sendiri ke node penuh, dan keuntungan didistribusikan sesuai dengan kesepakatan mereka sendiri. Silakan merujuk ke LSD.
  • Jaminan Blok: Untuk menghindari menunggu periode konfirmasi akhir (12-13 detik di Ethereum), node ringan dapat menggunakan jaminan untuk mengurangi waktu tunggu ini. Node ringan akan pertama-tama menambahkan simbol/identifikasi saat meminta data dan menentukan jenis jaminan apa yang diperlukan (konfirmasi akhir/diajukan). Penyedia data menyediakan data dan tanda tangan yang sesuai setelah menerima permintaan. Saat penyedia data tidak memiliki blok yang diajukan dalam situasi “jaminan diajukan”, mereka akan dikenakan denda.
    \
    Catatan: Blok yang diusulkan pada akhirnya akan difinalisasi atau menjadi blok paman.
  • Biaya dan Biaya: Untuk jaringan prosecutor, mereka perlu melakukan staking sejumlah token tertentu (lebih besar dari gas) untuk mengirimkan bukti ke kontrak cerdas. Selain itu, biaya bagian ini dari bukti dapat dikurangi melalui metode zkp. Selain itu, di bawah mekanisme asuransi, premi yang dikirimkan oleh node-node ringan akan diberikan kepada penyedia data, sementara jaringan prosecutor akan menarik sebagian pendapatan denda dari penyedia yang jahat.
  • Ketersediaan Data: Penyedia data pada dasarnya adalah node penuh. Selain berpartisipasi dalam jaringan lapis konsensus, mereka juga dapat memverifikasi ketersediaan data. Ada dua jenis skema untuk memverifikasi ketersediaan: model Tarik dan model Dorong. Yang pertama mengacu pada node ringan secara acak mengekstrak data yang diperoleh dari node penuh. Yang terakhir mengacu pada produsen blok mendistribusikan blok yang berbeda ke penyedia data. Untuk penyedia data yang mengadopsi model Tarik, mereka bertanggung jawab untuk mengembalikan permintaan sampel. Setelah menerima data, node ringan meneruskannya ke node/validator tepercaya, dan mereka mencoba mengembalikan blok. Jika gagal, penyedia data akan dikenai denda. Protokol node ringan dalam artikel ini mengusulkan mekanisme asuransi berdasarkan ini, memberikan arah penelitian baru untuk penelitian ketersediaan data.

Kesimpulan dan Penilaian

Solusi node ringan yang diusulkan dalam artikel ini menyediakan “keamanan yang dapat diprogram” untuk memenuhi kebutuhan keamanan dalam situasi yang berbeda. Opsi 1 menukar latensi yang lebih tinggi untuk keamanan yang tinggi, sementara Opsi 2 menyediakan layanan “konfirmasi instan” untuk node ringan dengan memperkenalkan mekanisme asuransi. Solusi-solusi ini dapat digunakan dalam skenario di mana finalitas transaksi perlu dikonfirmasi, seperti transaksi atomik dan lintas-rantai.

Penafian:

  1. Artikel ini dicetak ulang dari [Mitratama Eureka]. Teruskan Judul Asli 'TeleportDAO: Permainan Keamanan dan Efisiensi Verifikasi Data - Praktek Desain Node Ringan Terbaru'. Semua hak cipta milik penulis asli [Andy、Arthur]*. Jika ada keberatan terhadap penggandaan ini, silakan hubungi Gate Belajartim, dan mereka akan menanganinya dengan cepat.
  2. Penafian Tanggung Jawab: Pandangan dan opini yang terdapat dalam artikel ini semata-mata milik penulis dan tidak merupakan saran investasi apa pun.
  3. Terjemahan artikel ke dalam bahasa lain dilakukan oleh tim Gate Learn. Kecuali disebutkan, menyalin, mendistribusikan, atau menjiplak artikel yang diterjemahkan dilarang.
Comece agora
Registe-se e ganhe um cupão de
100 USD
!