Academy

Penjelasan zk-SNARKs dan zk-STARKs

Published

on

Dalam ranah kriptografi dan keamanan informasi, dua istilah yakni zk-SNARKs dan zk-STARKs tengah mencuri perhatian. Seiring meningkatnya kekhawatiran terhadap privasi serta keamanan data, kedua teknologi ini telah muncul sebagai solusi menjanjikan dalam mengatasi tantangan verifikasi informasi tanpa harus mengorbankan kerahasiaan.

Dalam tulisan ini, kami akan menggali lebih dalam mengenai makna sesungguhnya dari zk-SNARKs dan zk-STARKs, bagaimana keduanya beroperasi, dan perbedaan mendasar yang memisahkan keduanya. Dengan pemahaman yang lebih mendalam mengenai teknologi ini, kita dapat menggali potensi aplikasi luas serta dampaknya di berbagai bidang, dari mata uang kripto hingga keamanan data perusahaan.

Privasi selalu dianggap sebagai fitur yang berharga dalam komunitas mata uang digital. Ini adalah pendorong penting bagi konsep anonimitas, yang sangat relevan bagi berbagai jenis uang digital. Hal ini sama halnya dengan pemegang aset kripto yang tak ingin jejak transaksi dan kepemilikan asetnya terekspos kepada publik. Dalam berbagai fitur kriptografi yang bertujuan untuk memberikan privasi pada teknologi blockchain, bukti zk-SNARK dan zk-STARK muncul sebagai dua contoh utama.

Istilah zk-SNARK sendiri merujuk pada zero-knowledge succinct non-interactive argument of knowledge (bukti pengetahuan yang singkat, tanpa interaksi, dan dengan pengetahuan nol). Bukti zk-SNARK telah digunakan dalam proyek seperti Zcash dan sistem pembayaran berbasis blockchain milik JP Morgan Chase, sebagai cara untuk memastikan autentikasi relasi ke server. 

Namun, sementara zk-SNARK sedang dalam tahap pengembangan menuju adopsi yang lebih luas, bukti zk-STARK telah muncul sebagai iterasi terbaru dan diperbarui dari protokol tersebut. Ia menangani banyak kelemahan dari pendahulunya, zk-SNARK.

Perumpamaan Gua Alibaba

Pada tahun 1990, muncul tulisan berjudul “How to Explain Zero-Knowledge Protocols to Your Children” (Bagaimana Menjelaskan Protokol Zero-Knowledge kepada Anak-anak Anda) oleh seorang ahli kriptografi bernama Jean-Jacques Quisquater (dan beberapa kontributor lainnya). Tulisan ini memperkenalkan konsep bukti pengetahuan nol dengan menggunakan perumpamaan Gua Alibaba. Sejak diperkenalkannya, perumpamaan ini telah berkali-kali diadaptasi dan saat ini ada beberapa variasi. Akan tetapi, inti dari konsep ini tetap tak berubah.

Bayangkan sebuah gua berbentuk lingkaran yang hanya memiliki satu pintu masuk dan sebuah pintu ajaib yang memisahkan dua sisi gua. Untuk bisa melewati pintu ajaib tersebut, seseorang harus merahasiakan kata rahasia yang benar. 

Mari kita asumsikan Alice (berwarna kuning) ingin membuktikan kepada Bob (berwarna biru) bahwa dia tahu kata rahasianya – sambil tetap menjaga rahasia tersebut. Agar bisa melakukannya, Bob setuju untuk menunggu di luar gua, sementara Alice memasuki gua dan berjalan hingga mencapai pemisah di dalamnya. Dalam contoh ini, Alice memutuskan untuk melewati jalur nomor 1.

Setelah beberapa saat, Bob memasuki gua dan berteriak ke arah mana dia ingin Alice muncul (misalnya, di jalur nomor 2).

Jika Alice memang tahu kata rahasianya, maka dia akan muncul dari arah yang diinginkan oleh Bob.

Seluruh proses ini bisa diulang beberapa kali sebagai cara untuk memastikan bahwa Alice tidak memilih jalur yang benar hanya berdasarkan keberuntungannya.

Perumpamaan Gua Alibaba menggambarkan konsep dari bukti pengetahuan nol, yang merupakan bagian integral dari protokol zk-SNARK dan zk-STARK. Bukti pengetahuan nol ini memungkinkan seseorang membuktikan kepemilikan suatu pengetahuan tanpa harus mengungkapkan informasi apapun mengenai pengetahuan tersebut.

zk-SNARK

Zcash menunjukkan diri sebagai pionir dalam mengaplikasikan zk-SNARK. Sementara proyek-proyek privasi lainnya, seperti Monero, bergantung pada tanda tangan lingkaran dan teknik lain yang menciptakan semacam kabut informasi mengenai pengirim dan penerima, zk-SNARK mengubah struktur fundamental distribusi data.

Keutamaan privasi Zcash muncul dari fakta bahwa transaksi dalam jaringan dapat dienkripsi dan tetap dapat diverifikasi keabsahannya menggunakan bukti zero-knowledge (pengetahuan kosong). Dengan demikian, pihak-pihak yang memelihara aturan konsensus tidak perlu mengetahui semua data yang mendasari setiap transaksi. Ini menjadi sangat penting dalam menggambarkan fitur privasi pada Zcash yang secara baku tidak aktif, melainkan menjadi opsional yang bergantung pada pengaturan manual.

Bukti pengetahuan kosong (zero-knowledge) mengijinkan individu untuk membuktikan bahwa suatu pernyataan adalah benar, tanpa mengungkapkan informasi di luar validitas pernyataan tersebut. Semua entitas terlibat dalam proses ini umumnya disebut sebagai pembuktian (prover) dan pemeriksa (verifier), dan pernyataan yang mereka hasilkan secara rahasia dikenal sebagai saksi (witness).

Tujuan inti dari metode ini adalah mengurangi sebanyak mungkin informasi yang dipertukarkan antara kedua belah pihak. Dengan kata lain, seseorang dapat menggunakan bukti pengetahuan kosong (zero-knowledge) untuk membuktikan kepemilikan suatu pengetahuan tanpa harus mengungkapkan rincian lain mengenai pengetahuan tersebut.

Dalam akronim SNARK, “succinct” mengindikasikan bahwa bukti ini berukuran sangat kecil dan dapat diverifikasi dengan cepat. “Non-interactive” menandakan bahwa interaksi antara pembuktian dan pemeriksa sangat terbatas atau bahkan tidak ada sama sekali.

Versi sebelumnya dari protokol pengetahuan kosong (zero-knowledge) biasanya memerlukan komunikasi berkelanjutan antara pembuktian dan pemeriksa, sehingga disebut “interaktif”. Namun, dalam konstruksi “non-interactive,” pembuktian dan pemeriksa hanya perlu bertukar satu bukti saja.

Saat ini, zk-SNARK sangat bergantung pada pengaturan awal antara pembuktian dan pemeriksa, di mana rangkaian parameter publik dibutuhkan untuk membuat bukti pengetahuan kosong (zero knowledge) dan menjadikan transaksi bersifat privat.

Parameter ini berfungsi seperti aturan dalam suatu permainan, dienkripsi ke dalam protokol dan menjadi unsur penting dalam membuktikan validitas transaksi. Akan tetapi, hal ini juga membawa potensi sentralisasi, karena parameter-parameter ini seringkali dibentuk dalam kelompok yang sangat kecil.

Meski pengaturan awal publik menjadi esensial dalam implementasi zk-SNARK saat ini, para peneliti berusaha mencari alternatif lain untuk mengurangi tingkat kepercayaan yang dibutuhkan dalam proses tersebut.

Tahap pengaturan awal ini sangat penting untuk mencegah pemalsuan transaksi, karena jika seseorang memiliki akses ke sifat acak yang dihasilkan oleh parameter, mereka dapat membuat bukti palsu yang tampak valid bagi pemeriksa. Dalam konteks Zcash, tahap ini dikenal sebagai Parameter Generation Ceremony (Upacara Pembentukan Parameter).

“ARguments” pada akronim mengacu pada sifat logika komputasi dalam zk-SNARK. Ini berarti bahwa pembuktian yang tidak jujur memiliki kemungkinan yang sangat rendah untuk berhasil memanipulasi sistem. Prinsip ini dikenal sebagai keadaan logis dan mengasumsikan bahwa pembuktian memiliki sumber daya komputasi yang terbatas.

Dalam teori, individu dengan daya komputasi yang cukup mungkin dapat membuat bukti palsu, dan ini menjadi salah satu alasan mengapa komputasi kuantum dianggap sebagai ancaman bagi sistem zk-SNARK dan teknologi blockchain.

Akhirnya, “of Knowledge” dalam akronim mengindikasikan bahwa pembuktian tidak dapat dibuat tanpa pengetahuan (atau saksi) yang mendukung pernyataan tersebut.

Bukti pengetahuan kosong (zero knowledge) cepat diverifikasi dan biasanya memerlukan sedikit data dibandingkan dengan transaksi Bitcoin standar. Hal ini membuka jalan bagi teknologi zk-SNARK untuk menjadi solusi privasi dan penskalaan.

zk-STARK

zk-STARK dihasilkan sebagai alternatif terhadap bukti zk-SNARK dan dianggap sebagai implementasi teknologi yang lebih cepat dan ekonomis. Lebih penting lagi, zk-STARK menonjol karena tidak memerlukan tahap pengaturan awal kepercayaan (maka sebutan “T” yang merujuk pada “transparan”).

Dari segi teknis, zk-STARK tidak bergantung pada tahap pengaturan awal kepercayaan karena mengandalkan kriptografi simetris leaner melalui fungsi hash tahan bentrok. Pendekatan ini juga menghapus asumsi-asumsi teoretis dari zk-SNARK yang mahal secara komputasi dan rentan terhadap serangan komputasi kuantum.

Salah satu faktor mengapa zk-STARK menawarkan implementasi yang lebih cepat dan efisien adalah bahwa volume komunikasi antara pembuktian dan pemeriksa tetap konstan bahkan saat daya komputasi meningkat. Sebagai perbandingan, pada zk-SNARK, peningkatan dalam kebutuhan komputasi menghasilkan peningkatan jumlah komunikasi yang harus terjadi antara pihak yang terlibat. Karena itu, ukuran keseluruhan zk-SNARK cenderung lebih besar dibandingkan dengan bukti zk-STARK.

Sangat jelas bahwa baik zk-SNARK maupun zk-STARK menyajikan solusi dalam hal privasi. Di dalam ranah mata uang digital, kedua protokol ini memiliki potensi besar dan mungkin menjadi landasan bagi adopsi dalam skala besar.

Kesimpulan

zk-SNARKs dan zk-STARKs adalah teknologi kriptografi yang memungkinkan bukti pengetahuan tanpa mengungkapkan informasi rahasia, menjaga privasi dan keamanan dalam verifikasi informasi. 

zk-SNARKs adalah metode non-interaktif yang ringkas dan cepat diverifikasi, digunakan dalam proyek seperti Zcash. Ini memerlukan pengaturan awal yang memuat parameter publik untuk transaksi. 

Sementara zk-STARKs adalah alternatif yang lebih cepat dan ekonomis, tidak memerlukan pengaturan awal dan mengandalkan kriptografi simetris. Keduanya memungkinkan solusi privasi yang kuat dalam mata uang digital dan berpotensi untuk adopsi luas.

Jika kamu ingin mengetahui lebih dalam mengenai aset kripto atau cryptocurrency, bisa baca artikel “Belajar Crypto untuk Pemula Mulai Dari Sini.”

Sumber: Binance Academy Indonesia

Popular

Exit mobile version