| Penulis | Ben-Sasson, Eli; Chiesa, Alessandro; Garman, Christina; Green, Matthew; Miers, Ian; Tromer, Eran; Virza, Madars |
|---|---|
| Tahun | 2014 |
| Proyek | Zcash / Electric Coin Company |
| Lisensi | MIT |
| Sumber Resmi | eprint.iacr.org/2014/349 |
Paper “Zerocash: Decentralized Anonymous Payments from Bitcoin” dipresentasikan di IEEE Symposium on Security and Privacy 2014 oleh Eli Ben-Sasson, Alessandro Chiesa, Christina Garman, Matthew Green, Ian Miers, Eran Tromer, dan Madars Virza. Paper ini mendeskripsikan protokol Zerocash — sistem pembayaran penuh-anonimitas yang dibangun di atas model UTXO Bitcoin menggunakan zk-SNARK untuk membuktikan secara kriptografis bahwa transaksi valid tanpa mengungkapkan detail apapun. Zcash diluncurkan 28 Oktober 2016 sebagai implementasi pertama Zerocash.
Publikasi dan Konteks
Zerocash merupakan penerus Zerocoin (2013) — proposal akademis untuk menambahkan coin mixing buta denominasi ke Bitcoin yang tidak pernah diterima. Zerocash melangkah lebih jauh: bukan hanya mixing, melainkan sistem pembayaran yang benar-benar privat. Alat kriptografis kunci: zk-SNARK — bukti ringkas yang memungkinkan pembuktian kebenaran komputasi tanpa mengungkapkan input apa pun.
Desain Inti: Transaksi Terlindungi
Zcash memiliki dua jenis alamat:
- Transparan (t-address): Seperti Bitcoin biasa — semua data transaksi terlihat publik
- Terlindungi (z-address): Sepenuhnya privat — pengirim, penerima, dan jumlah semuanya tersembunyi
Cara transaksi terlindungi bekerja:
- Pengirim “menuangkan” dana ke alamat terlindungi — dienkripsi menggunakan kunci tampilan masuk penerima
- Pengirim menghasilkan bukti zk-SNARK yang membuktikan: input coin ada di blockchain, pengirim mengetahui spending key, jumlah input sama dengan jumlah output, nullifier (penanda anti-double-spend) dihitung dengan benar
- Proof disiarkan dengan transaksi; validator memverifikasinya tanpa mempelajari detail apapun
Komponen Kriptografis
- Note commitment: Hash kriptografis dari aset coin yang terlindungi; ditambahkan ke Merkle tree on-chain
- Nullifier: Penanda unik yang dihasilkan saat coin dihabiskan; mencegah double-spending tanpa mengungkapkan coin mana yang dihabiskan
- Merkle tree: Semua note commitment tersimpan dalam Merkle tree; bukti keanggotaan membuktikan coin ada tanpa mengidentifikasi mana
- Trusted setup: Zcash memerlukan “Powers of Tau” — upacara kriptografis di mana parameter SNARK awal dihasilkan; jika rahasia upacara tidak dihancurkan, uang palsu dapat dibuat (ini adalah “kelemahan” yang terkenal dari Zcash)
Perkembangan: Sprout, Sapling, Orchard
- Sprout (2016): Implementasi Zerocash awal — prover sangat lambat (~40 detik/transaksi), memori tinggi
- Sapling (2018): Sirkuit Groth16 yang jauh lebih efisien — prover menjadi ~7 detik, memori jauh lebih rendah, mobile-friendly
- Orchard (2021): Menggunakan sistem proving Halo 2 tanpa trusted setup berulang, berdasarkan kurva Pallas/Vesta
Keterbatasan
- Mayoritas transaksi Zcash tetap menggunakan alamat transparan, melemahkan anonimitas set
- Trusted setup Sprout dan Sapling adalah vektor kepercayaan yang tidak bisa dihilangkan retroaktif
- Regulasi peraturan: beberapa bursa menghapus daftar ZEC karena kekhawatiran kepatuhan AML
- Penggunaan address terlindungi rendah secara historis (~5-15% dari semua transaksi)
Warisan dan Dampak
Zerocash/Zcash mendirikan zk-SNARK sebagai alat kriptografis yang layak untuk produksi, memicu revolusi zero-knowledge dalam blockchain. Groth16 (sistem pembuktian efisien yang dikembangkan untuk Zcash Sapling) kemudian diadopsi oleh zkSync, Tornado Cash, dan hampir setiap aplikasi SNARK lainnya. Pekerjaan Eli Ben-Sasson pada Zcash langsung memunculkan pendirian StarkWare.
Istilah Terkait
Referensi
- Ben-Sasson et al. “Zerocash: Decentralized Anonymous Payments from Bitcoin,” IEEE S&P 2014
- eprint.iacr.org/2014/349