Penerapan dan tren perkembangan teknologi zk-SNARKs dalam Blockchain

Aplikasi dan Pengembangan Teknologi zk-SNARKs dalam Bidang Blockchain

Ringkasan

Artikel ini memberikan tinjauan sistematis tentang sejarah hampir empat puluh tahun literatur dan penelitian terbaru mengenai teknologi zk-SNARKs ( ZKP ). Pertama, diperkenalkan konsep dasar dan latar belakang sejarah dari ZKP, kemudian fokus menganalisis teknologi ZKP berbasis sirkuit, termasuk desain, aplikasi, dan metode optimasi dari model seperti zkSNARK, Ben-Sasson, Pinocchio, Bulletproofs, dan Ligero. Dalam bidang lingkungan komputasi, artikel ini memperkenalkan ZKVM dan ZKEVM, serta membahas bagaimana keduanya meningkatkan kapasitas pemrosesan transaksi, melindungi privasi, dan meningkatkan efisiensi verifikasi. Artikel ini juga menjelaskan mekanisme kerja dan metode optimasi dari zero-knowledge Rollup sebagai solusi perluasan Layer 2, serta kemajuan terbaru dalam percepatan perangkat keras, solusi campuran, dan ZK EVM khusus.

Akhirnya, artikel ini mengulas konsep-konsep baru seperti ZKCoprocessor, ZKML, ZKThreads, ZK Sharding, dan ZK StateChannels, serta membahas potensi mereka dalam hal skalabilitas, interoperabilitas, dan perlindungan privasi blockchain. Dengan menganalisis teknologi terbaru dan tren perkembangan ini, artikel ini memberikan perspektif komprehensif untuk memahami dan menerapkan teknologi ZKP, menunjukkan potensi besar dalam meningkatkan efisiensi dan keamanan sistem blockchain, serta memberikan referensi penting untuk keputusan investasi di masa depan.

Daftar

Pendahuluan

Satu, Pengetahuan Dasar zk-SNARKs

  1. Ringkasan
  2. Contoh zk-SNARKs

Dua, zk-SNARKs non-interaktif

  1. Latar Belakang
  2. Pengenalan NIZK
  3. Transformasi Fiat-Shamir
  4. Jens Groth dan penelitiannya
  5. Penelitian Lain

Tiga, pembuktian nol pengetahuan berbasis sirkuit

  1. Latar Belakang
  2. Konsep dan Karakteristik Dasar Model Sirkuit
  3. Desain dan Aplikasi Sirkuit dalam zk-SNARKs
  4. Potensi cacat dan tantangan

Empat, model zk-SNARKs

  1. Latar Belakang
  2. Model algoritma umum
  3. Skema berbasis PCP linier dan masalah logaritma diskrit
  4. Rencana berbasis bukti orang biasa
  5. Pembuktian yang dapat diverifikasi berdasarkan probabilitas ( PCP ) zk-SNARKs
  6. Klasifikasi berdasarkan tahap pengaturan CPC

Lima, Gambaran Umum dan Perkembangan zk-SNARKs Virtual Machine

  1. Latar Belakang
  2. Klasifikasi ZKVM yang ada
  3. Paradigma Frontend dan Backend
  4. Kelebihan dan Kekurangan Paradigma ZKVM

Enam, Gambaran dan Perkembangan zk-SNARKs Ethereum Virtual Machine

  1. Latar Belakang
  2. Cara kerja ZKEVM
  3. Proses implementasi ZKEVM
  4. Fitur ZKEVM

Tujuh, Gambaran Umum dan Perkembangan Solusi Jaringan Layer Dua zk-SNARKs

  1. Latar belakang
  2. Mekanisme kerja ZK Rollup
  3. Kekurangan dan Optimasi ZK Rollup

Delapan, arah pengembangan masa depan zk-SNARKs

  1. Mempercepat perkembangan lingkungan komputasi
  2. Usulan dan perkembangan ZKML
  3. Perkembangan teknologi ekspansi ZKP
  4. Pengembangan interoperabilitas ZKP

Kesimpulan

Pendahuluan

Dalam beberapa tahun terakhir, pengembangan aplikasi blockchain (DApps) berkembang pesat, dengan aplikasi baru muncul setiap hari. Platform blockchain setiap hari menampung aktivitas jutaan pengguna, memproses miliaran transaksi. Jumlah data besar yang dihasilkan dari transaksi ini biasanya mencakup informasi pribadi sensitif seperti identitas pengguna, jumlah transaksi, alamat akun, dan saldo akun. Mengingat sifat terbuka dan transparan dari blockchain, data yang disimpan ini terbuka untuk semua orang, sehingga menimbulkan berbagai masalah keamanan dan privasi.

Saat ini, ada beberapa teknologi kriptografi yang dapat mengatasi tantangan ini, termasuk enkripsi homomorfik, tanda tangan cincin, komputasi multi-pihak yang aman, dan zk-SNARKs. Enkripsi homomorfik memungkinkan operasi dilakukan tanpa mendekripsi ciphertext, membantu melindungi keamanan saldo akun dan jumlah transaksi, tetapi tidak dapat melindungi keamanan alamat akun. Tanda tangan cincin menyediakan bentuk tanda tangan digital yang khusus, mampu menyembunyikan identitas penandatangan, sehingga melindungi keamanan alamat akun, tetapi tidak dapat melindungi saldo akun dan jumlah transaksi. Komputasi multi-pihak yang aman memungkinkan distribusi tugas komputasi di antara beberapa peserta, tanpa peserta mana pun mengetahui data peserta lainnya, secara efektif melindungi keamanan saldo akun dan jumlah transaksi, tetapi juga tidak dapat melindungi keamanan alamat akun. Selain itu, enkripsi homomorfik, tanda tangan cincin, dan komputasi multi-pihak yang aman tidak dapat digunakan untuk memverifikasi apakah pembuktian dalam lingkungan blockchain memiliki cukup jumlah transaksi tanpa mengungkapkan jumlah transaksi, alamat akun, dan saldo akun.

zk-SNARKs adalah solusi yang lebih komprehensif, protokol verifikasi ini memungkinkan untuk memverifikasi kebenaran proposisi tertentu tanpa mengungkapkan data perantara apa pun. Protokol ini tidak memerlukan infrastruktur kunci publik yang kompleks, dan pelaksanaan ulangnya tidak memberikan kesempatan bagi pengguna jahat untuk mendapatkan informasi berguna tambahan. Melalui ZKP, pemverifikasi dapat memverifikasi apakah pembuktian memiliki jumlah transaksi yang cukup tanpa mengungkapkan data transaksi pribadi apa pun. Proses verifikasi melibatkan pembuatan bukti yang mencakup jumlah transaksi yang diklaim oleh pembuktian, kemudian bukti tersebut disampaikan kepada pemverifikasi, pemverifikasi melakukan perhitungan yang telah ditentukan sebelumnya pada bukti, dan menghasilkan hasil perhitungan akhir, sehingga mencapai kesimpulan apakah menerima pernyataan pembuktian atau tidak. Jika pernyataan pembuktian diterima, itu berarti mereka memiliki jumlah transaksi yang cukup. Proses verifikasi di atas dapat dicatat di Blockchain, tanpa adanya pemalsuan.

Fitur ZKP ini menjadikannya peran inti dalam transaksi Blockchain dan aplikasi cryptocurrency, terutama dalam perlindungan privasi dan skalabilitas jaringan, sehingga tidak hanya menjadi fokus penelitian akademis, tetapi juga dianggap secara luas sebagai salah satu inovasi teknologi terpenting sejak implementasi sukses teknologi buku besar terdistribusi—terutama Bitcoin. Ini juga merupakan jalur utama untuk aplikasi industri dan investasi modal ventura.

Dengan demikian, banyak proyek jaringan berbasis ZKP muncul, seperti ZkSync, StarkNet, Mina, Filecoin, dan Aleo. Seiring dengan perkembangan proyek-proyek ini, inovasi algoritma terkait ZKP terus bermunculan, dilaporkan hampir setiap minggu ada algoritma baru yang diluncurkan. Selain itu, pengembangan perangkat keras yang terkait dengan teknologi ZKP juga berjalan cepat, termasuk chip yang dioptimalkan khusus untuk ZKP. Misalnya, proyek-proyek seperti Ingonyama, Irreducible, dan Cysic telah menyelesaikan penggalangan dana dalam skala besar, perkembangan ini tidak hanya menunjukkan kemajuan cepat teknologi ZKP, tetapi juga mencerminkan peralihan dari perangkat keras umum menuju perangkat keras khusus seperti GPU, FPGA, dan ASIC.

Kemajuan ini menunjukkan bahwa teknologi zk-SNARKs bukan hanya terobosan penting di bidang kriptografi, tetapi juga merupakan pendorong kunci untuk mewujudkan aplikasi teknologi Blockchain yang lebih luas—terutama dalam meningkatkan perlindungan privasi dan kemampuan pemrosesan.

Oleh karena itu, kami memutuskan untuk secara sistematis mengatur pengetahuan terkait zk-SNARKs ( ZKP ) untuk lebih baik membantu kami dalam membuat keputusan investasi di masa depan. Untuk itu, kami telah meninjau secara komprehensif makalah akademis inti yang terkait dengan ZKP ( berdasarkan relevansi dan jumlah kutipan yang diterima ); pada saat yang sama, kami juga menganalisis secara rinci informasi dan whitepaper dari proyek-proyek terkemuka di bidang ini ( berdasarkan skala pendanaan mereka ). Pengumpulan dan analisis informasi yang komprehensif ini memberikan dasar yang kuat untuk penulisan artikel ini.

Satu, Pengetahuan Dasar zk-SNARKs

1. Ringkasan

Pada tahun 1985, para akademisi Goldwasser, Micali, dan Rackoff pertama kali mengemukakan konsep zk-SNARKs dalam makalah berjudul "The Knowledge Complexity of Interactive Proof-Systems". Makalah ini menjadi fondasi bagi zk-SNARKs, ZKP( dan Interactive Zero-Knowledge, IZK). Makalah tersebut mendefinisikan banyak konsep yang mempengaruhi penelitian akademis selanjutnya. Misalnya, definisi pengetahuan adalah "output dari komputasi yang tidak dapat dilakukan(", yang berarti pengetahuan harus merupakan output dan merupakan komputasi yang tidak dapat dilakukan, yang menunjukkan bahwa itu tidak bisa menjadi fungsi sederhana, melainkan harus fungsi yang kompleks. Komputasi yang tidak dapat dilakukan biasanya dapat dipahami sebagai masalah NP, yaitu masalah yang dapat memverifikasi kebenaran solusinya dalam waktu polinomial, di mana waktu polinomial mengacu pada waktu eksekusi algoritma yang dapat dinyatakan dengan fungsi polinomial dari ukuran input. Ini adalah standar penting dalam ilmu komputer untuk mengukur efisiensi dan kelayakan algoritma. Karena proses penyelesaian masalah NP itu rumit, maka dianggap sebagai komputasi yang tidak dapat dilakukan; tetapi proses verifikasinya relatif sederhana, sehingga sangat cocok digunakan untuk verifikasi zk-SNARKs.

Salah satu contoh klasik masalah NP adalah masalah salesman perjalanan, di mana harus menemukan jalur terpendek untuk mengunjungi serangkaian kota dan kembali ke titik awal. Meskipun menemukan jalur terpendek mungkin sulit, tetapi diberikan sebuah jalur, memverifikasi apakah jalur tersebut adalah yang terpendek relatif mudah. Karena memverifikasi total jarak dari jalur tertentu dapat dilakukan dalam waktu polinomial.

Goldwasser et al. memperkenalkan konsep "knowledge complexity" ) knowledge complexity ( dalam makalah mereka, untuk mengukur jumlah pengetahuan yang diungkapkan oleh pembukti kepada verifier dalam sistem bukti interaktif. Mereka juga mengusulkan sistem bukti interaktif ) Interactive Proof Systems, IPS (, di mana pembukti ) Prover ( dan verifier ) Verifier ( membuktikan kebenaran suatu pernyataan melalui interaksi berulang.

Secara keseluruhan, definisi zk-SNARKs yang dirangkum oleh Goldwasser dan kawan-kawan adalah suatu jenis bukti interaktif yang khusus, di mana verifier tidak akan mendapatkan informasi tambahan selain nilai kebenaran dari pernyataan tersebut selama proses verifikasi; dan mereka mengusulkan tiga karakteristik dasar yang mencakup:

1.Kelengkapan)completeness(: Jika argumen itu benar, pembuktian yang jujur dapat meyakinkan verifikator yang jujur tentang fakta ini;

2.Keandalan ) soundness (: Jika pembuktian tidak mengetahui isi pernyataan, ia hanya dapat menipu verifier dengan probabilitas yang sangat kecil;

3.zk-SNARKs)zero-knowledge(: Setelah proses pembuktian selesai, verifier hanya mendapatkan informasi "pembuktian memiliki pengetahuan ini", dan tidak dapat memperoleh konten tambahan.

)# 2.zk-SNARKs contoh

Untuk lebih memahami zk-SNARKs dan atributnya, berikut adalah contoh untuk memverifikasi apakah seorang pembuktian memiliki informasi pribadi tertentu, yang dibagi menjadi tiga tahap: pengaturan, tantangan, dan respons.

Langkah pertama: atur (Setup)

Pada langkah ini, tujuan pembuktian adalah untuk membuat sebuah bukti yang menunjukkan bahwa ia mengetahui angka rahasia s, tetapi tidak langsung menunjukkan s. Misalkan angka rahasia s=5;

Pilih dua bilangan prima besar p dan q, hitung produk mereka n. Misalkan bilangan prima p=11, q=13, maka n yang didapat adalah 143;

Hitung v=s^2 mod n, di sini, v sebagai bagian dari bukti dikirimkan kepada verifier, tetapi itu tidak cukup bagi verifier atau siapa pun yang mengawasi untuk menyimpulkan s. v=5^2 mod 143=25;

Pilih secara acak sebuah bilangan bulat r, hitung x=r^2 mod n dan kirimkan kepada validator. Nilai x ini digunakan untuk proses validasi selanjutnya, tetapi juga tidak mengungkapkan s. Misalkan bilangan bulat acak r=7, maka x yang dihitung adalah 49.

Langkah kedua: tantangan ###Challenge(

Validator secara acak memilih sebuah posisi a) yang bisa berupa 0 atau 1(, kemudian mengirimkannya kepada prover. "Tantangan" ini menentukan langkah-langkah selanjutnya yang perlu diambil oleh prover.

Langkah ketiga: respons )Response(

Berdasarkan nilai a yang dikeluarkan oleh validator, penunjuk melakukan respons:

Jika a=0, maka pengirim mengirim g=r) di mana r adalah angka acak yang dia pilih sebelumnya (.

Jika a=1, pembuktian menghitung g=rs mod n dan mengirimnya. Misalkan bit acak yang dikirim oleh verifier a=1, berdasarkan nilai a, pembuktian menghitung g=75 mod 143=35;

Akhirnya, verifier memverifikasi apakah x sama dengan g^2/v^a mod n berdasarkan g yang diterima. Jika persamaan tersebut benar, verifier menerima bukti ini. Ketika a=0, verifier menghitung g^2 mod n, dan memverifikasi sisi kanan x=49; ketika a=1, verifier menghitung g^2/v mod n=35^2/25 mod 143=49, dan memverifikasi sisi kanan x=49.

Di sini, kita melihat x yang dihitung oleh validator menunjukkan bahwa pembuktian berhasil melewati proses verifikasi, tanpa mengungkapkan angka rahasia s. Di sini, karena a hanya dapat mengambil 0 atau 1, terdapat hanya dua kemungkinan, probabilitas pembuktian untuk berhasil melalui verifikasi secara kebetulan adalah )1/2() ketika a adalah 0. Namun, validator kemudian menantang pembuktian n kali, di mana pembuktian terus mengganti angka terkait, mengirimkannya kepada validator, dan selalu berhasil melewati proses verifikasi. Dengan demikian, probabilitas pembuktian untuk berhasil melalui verifikasi secara kebetulan adalah (1/2)^n( yang semakin mendekati 0), membuktikan bahwa pembuktian memang mengetahui angka rahasia s. Contoh ini membuktikan integritas, keandalan, dan sifat zero-knowledge dari sistem zero-knowledge proof.

( Dua, zk-SNARKs non-interaktif

)# 1. Latar Belakang

zk-SNARKs(ZKP) dalam konsep tradisional biasanya merupakan bentuk protokol interaktif dan daring; misalnya, protokol Sigma biasanya memerlukan tiga hingga lima putaran interaksi untuk menyelesaikan autentikasi. Namun, dalam skenario seperti transaksi instan atau pemungutan suara, sering kali tidak ada kesempatan untuk melakukan interaksi berulang, terutama dalam aplikasi teknologi Blockchain, fungsi verifikasi offline menjadi sangat penting.

2.Penawaran NIZK

Pada tahun 1988, Blum, Feldman, dan Micali pertama kali mengajukan konsep bukti non-interaktif nol pengetahuan ###NIZK(, membuktikan bahwa tidak diperlukan interaksi berulang.

ZK3.14%
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
  • 2
  • Bagikan
Komentar
0/400
GweiTooHighvip
· 17jam yang lalu
Jadi kode itu bernyanyi Dompet itu menyalin
Lihat AsliBalas0
GasSavingMastervip
· 17jam yang lalu
zk begitu populer, karena terus-menerus tidak bisa mengalahkan sirkuit itu.
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)