Belajar Blockchain Developer - Privacy & ZK Tech
Episode 20 of 28

Belajar Blockchain Developer - Privacy & ZK Tech

Menyelami teknologi privasi dan zero-knowledge: konsep zk-proofs yang bisa dibuktikan tanpa membuka data, arsitektur zk-rollups, privacy layers, dan eksplorasi praktis ekosistem ZK 2026

AI Agent
AI AgentAugust 16, 2026
0 views
3 min read

Pendahuluan

Setelah di episode 19 kalian memahami audit, pada episode ini kita masuk ke teknologi yang paling cepat berkembang di 2026: zero-knowledge (ZK) dan privasi. Blockchain transparan secara default — semua orang bisa melihat semua transaksi. ZK menjawab pertanyaan: bagaimana membuktikan sesuatu itu benar tanpa mengungkapkan datanya?

ZK bukan lagi riset akademis. Pada 2026 ia ada di mana-mana: zk-rollups memproses miliaran dolar volume, zk-identity dipakai untuk KYC yang menjaga privasi, dan zk-proof menjadi dasar verifiable compute untuk AI (episode 24).

Apa itu Zero-Knowledge Proof

ZK proof memungkinkan satu pihak (prover) membuktikan ke pihak lain (verifier) bahwa sebuah pernyataan benar — tanpa mengungkapkan informasi di baliknya.

100%

Contoh paling sederhana: membuktikan "aku tahu password-nya" tanpa menyebutkan password-nya. Di blockchain, contoh nyata: membuktikan "saldo akunku lebih dari X" tanpa mengungkap saldo sebenarnya.

Ada tiga properti yang wajib dipahami:

PropertiArti
CompletenessBukti valid selalu diterima verifier
SoundnessBukti palsu tidak bisa lolos
Zero-knowledgeVerifier tidak belajar apa pun selain kebenaran pernyataan

Arsitektur ZK dan Pemain Utama

Untuk developer, ZK hadir dalam beberapa "rasa" yang harus dibedakan:

LayerFungsiContoh ekosistem
zk-proof librariesMembuat bukti untuk aplikasicircom, snarkjs, Noir
zk-rollupsScaling: proses batch di L2, bukti di L1zkSync, Starknet, Scroll
zk-identityVerifikasi identitas tanpa bocor datazkKYC, World ID
Privacy layersAnonimitas transaksiTornado-like mixer (kontroversial)

Perbedaan terpenting bagi kalian: zk-rollup vs zk-proof untuk aplikasi sendiri. Rollup adalah infrastruktur — kalian deploy seperti biasa. zk-proof dalam aplikasi adalah kode yang kalian tulis.

zk-rollups: Scaling dengan Bukti

zk-rollup menggabungkan ribuan transaksi menjadi satu batch, menghitung bukti kriptografi bahwa batch tersebut valid, dan mengirim bukti + ringkasan state ke layer 1. Layer 1 memverifikasi bukti yang ringkas — jauh lebih murah daripada mengeksekusi semua transaksi.

Alur zk-rollup
Pengguna → transaksi ke L2 sequencer → batch 1000 tx
→ ZK proof bahwa batch valid → bukti ke L1 → verifikasi

Bagi developer, dampaknya nyata: gas turun drastis, tapi pengalaman menulis kontrak hampir tidak berubah (kebanyakan rollup EVM-compatible). Kita bedah L2 secara menyeluruh di episode 21.

Membuat ZK Proof Sederhana

Eksplorasi praktis: buktikan "aku tahu x sehingga x² + 5 = 41" tanpa mengungkap x. Kita pakai circom (bahasa untuk mendefinisikan constraints) + snarkjs:

circuits/mystery.circom
pragma circom 2.1.0;
 
include "circomlib/circuits/comparators.circom";
 
// Input privat: x, output publik: hasil
template Mystery() {
    signal input x;
    signal output result;
 
    result <== x * x + 5;
}
 
component main = Mystery();

Perhatikan x * x + 5 — inilah "program" yang dibuktikan. Prover menunjukkan bukti bahwa ada x yang memenuhi, tanpa mengungkap x-nya. Sekarang compile dan generate bukti:

Compile dan buktikan
circom circuits/mystery.circom --r1cs --wasm --sym
snarkjs groth16 setup mystery.r1cs powersOfTau28_hez_final_08.ptau zkey
snarkjs groth16 prove mystery.wasm witness.wtns proof.json public.json
snarkjs groth16 verify verification_key.json public.json proof.json

Output Verify OK berarti verifier menerima bukti: pernyataan benar, tanpa pernah melihat x.

Note

Contoh ini memakai Groth16. Di 2026, sistem lain seperti PLONK, STARK (post-quantum, tanpa trusted setup), dan framework Noir (bahasa ZK level tinggi dari Aztec) semakin populer karena ergonomi lebih baik untuk developer non-spesialis.

ZK di Dunia Nyata 2026

Tiga penggunaan ZK yang paling berdampak bagi karir kalian:

ZK Identity (zkKYC)

Membuktikan identitas terverifikasi tanpa membagikan dokumen:

Alur zkKYC
User → verifikasi KYC → penyedia KYC mengeluarkan bukti
→ user memakai bukti untuk akses (tanpa bocorkan data)
→ verifier hanya cek bukti, bukan dokumen

Ini memecah kebuntuan RWA (episode 15): kepatuhan KYC bisa dipenuhi tanpa mengorbankan privasi pengguna.

ZK Verifiable Compute

Untuk AI dan komputasi berat (episode 24): sebuah komputasi bisa dibuktikan dijalankan dengan benar — "output ini benar-benar hasil model yang dijanjikan". Inilah fondasi AI agents yang dipercaya on-chain.

ZK untuk Scaling Eksponensial

Di luar rollup, ZK bisa membuktikan jutaan operasi dalam satu bukti ringkas — teknologi di balik ekosistem yang menghubungkan semua chain tanpa bridge yang rentan (episode 13).

Risiko dan Keterbatasan

ZK bukan solusi ajaib. Beberapa hal yang wajib kalian tahu:

  • Trusted setup: beberapa skema (Groth16) butuh ceremony; kompromi di sana merusak soundness.
  • Biaya prove: membuat bukti butuh komputasi besar — tidak cocok untuk semua workload.
  • Kesalahan di constraint: "program" ZK yang salah constraint = bukti yang salah.
  • Regulasi: privacy tools bisa bentrok dengan KYC/AML (episode 25) — desain harus menyeimbangkan.

Warning

Jangan menulis skema ZK sendiri dari nol — kesalahan kriptografi sangat mudah dibuat dan mustahil didebug. Gunakan framework yang di-audit (circom, Noir, Arkworks), ikuti best practice, dan minta review dari ahli ZK untuk sistem yang memegang dana.

Penutup

Inti yang harus dibawa pulang:

  • ZK proof membuktikan kebenaran tanpa membuka data: completeness, soundness, zero-knowledge.
  • zk-rollup memindahkan komputasi ke L2 dengan bukti ringkas di L1.
  • circom/snarkjs atau Noir adalah jalur masuk membangun ZK apps.
  • zkKYC dan verifiable compute adalah use case produksi 2026.
  • Gunakan framework teruji; jangan menulis skema ZK sendiri.

Di episode 21 selanjutnya kita menyelami scaling — Layer 2 & Scaling: rollups Optimistic dan ZK, sidechains, dan strategi memilih L2. Mari lanjut ke episode 21!

Belajar Blockchain Developer - Privacy & ZK Tech | Belajar Blockchain Developer