Kachina - Smart Contract Privasi

Dipublikasikan pada tanggal 11 Aug 2022
Ditranslasi & disadur oleh andre cahyadi (@prosperaan)
Untuk komunitas Cardano Indonesia
Referensi: Kachina: privacy-preserving smart contracts - IOHK Blog

Kachina
Memanfaatkan ZK Snarks untuk fungsi smart contract yang dapat menjaga privasi tanpa mengorbankan karakteristik desentralisasi

Sekilas tentang smart contract

Smart contract atau kontrak pintar adalah sebuah metode untuk menjabarkan transaksi pertukaran data atau mata uang yang kompleks antara dua pihak atau lebih yang dilakukan secara otomatis dan terdesentralisasi. Smart contract sendiri pada dasarnya adalah kode tertulis di blockchain yang dapat mencari, memverifikasi, serta mengeksekusi sebuah transaksi yang mengikat / kontrak ketika kondisi - kondisi yang ditentukan telah terpenuhi. Kode smart contract ini terdistribusi ke seluruh jaringan blockchain, transparan, dan dapat dikonfigurasi agar tidak dapat diubah sama sekali (immutable).

Menjaga privasi dalam smart contract

Smart contract pada umumnya bersifat publik dan terbuka dimana kondisi - kondisi kontrak yang harus terpenuhi dapat dilihat oleh semua orang. Walaupun transparansi menjadi salah satu keunggulan teknologi blockchain, namun privasi tetap menjadi elemen penting untuk aplikasi yang memproses data - data sensitif.

Beberapa teknik kriptografi yang digunakan oleh para developer untuk menambahkan atau meningkatkan level privasi di smart contract antara lain zero-knowledge proofs (ZKP) dan secure computation. Namun, teknik - teknik ini tidak sejalan dengan konsep desentralisasi di blockchain karena masih mengandalkan asas kepercayaan.

Apa itu Kachina

Kachina adalah solusi smart contract yang dikembangkan oleh Input Output Global (IOG) bersama dengan University of Edinburgh, yang memungkinkan pengguna untuk menggunakan smart contract dengan tetap menjaga privasi dan tidak mengorbankan desentralisasi.

Cara Kerja Kachina

  • Sekelompok besar proses penghitungan yang terdistribusi dibuat dalam bentuk smart contract sehingga memiliki atribut privasi. Developer dApp tidak perlu lagi menambahkan referensi lain sebagai asas kepercayaan.

  • Protokol smart contract ini bergantung pada argumen yang bersifat non-interaktif (disebut juga zero knowledge ~ZK Snarks) yang membuatnya memiliki sifat privasi. Jaminan privasi ini juga dibuktikan dengan framework keamanan Universal Composability (UC) melalui model dan bukti matematis.

  • Protokol juga didesain memiliki basis penggunaan secara low level code dimana sistem tidak perlu di-update ketika ada perubahan atau ekstensi baru, namun privasi dapat tetap terjaga.

  • Kachina juga memampukan pembuat smart contract menutup gap antara blockchain dengan mesin lokal pengguna, yang diatasi dengan penggunaan public dan private state. Sebuah kontrak dapat meng-update public state (on-chain and shared) dan private state (off-chain) secara bersamaan.

  • Para pihak yang bertransaksi dapat melakukan pembuktian secara non-interaktif (zero knowledge) bahwa mereka telah diizinkan meng-update public state dengan bukti detail dari input transaksi dan keberadaan private state.

    Smart contract Kachina juga memastikan:

    • Concurrency secara terprivasi (concurrency: memungkinkan banyak partisipan menjalankan sebuah aktivitas tanpa saling mengganggu satu sama lain).

      Kachina mampu mencapai level concurrency yang tinggi dengan adanya konsep baru, transkrip state oracle. Transkrip ini berisi catatan - catatan transaksi dari sebuah kontrak yang berinteraksi dengan oracle.

      Pembuat smart contract dapat mengoptimasi transaksi yang sering konflik, meminimalisir kebocoran, sambil tetap mengizinkan re-ordering sebuah transaksi.

    • Konstruksi modular secara efisien, karena Kachina dirancang untuk digunakan dalam skala besar.

      Pengembangan zero knowledge sebelumnya tidak menyertakan fitur untuk menjaga contract state. Dengan Kachina terdapat akses ke contract state, walaupun tidak langsung karena harus melalui oracle yang dispesifikasikan dalam smart contract. Akses secara tidak langsung ini memungkinkan skalabilitas yang lebih besar, dan kompleksitas dari apa yang harus dibuktikan berada di bawah kendali penuh sang pembuat kontrak yang dapat terus dioptimasi.

Penelitian tentang Kachina

Di dalam makalah penelitan, IOG mendemonstrasikan versatility dari protokol Kachina dalam studi kasus private payment. Tim riset menunjukkan sebuah kontrak private token yang dapat mendukung private fund transfer, pengecekan saldo, serta asset creation.

Walaupun desain yang diusulkan ini masih bersifat teoritis, namun Kachina membuktikan kemungkinan membuat smart contract yang dapat menjaga privasi walau dengan keterbatasan di dunia nyata:

  • Penggunaan state oracle memungkinkan proses komputasi yang sulit atau memakan sumber daya besar di luar proses zero knowledge proof, sehingga dapat mengurangi biaya.

  • Walaupun zero knowledge proof harus bersifat universal, namun rancangannya sudah ada dan praktis untuk digunakan dalam proposal yang diusulkan.

Untuk detail lebih lanjut tentang makalah penelitian Kachina, dapat dilihat di link berikut ini, Kachina - Foundations of Private Smart Contracts - IOHK Research