A16z Meluncurkan Sistem Voting Anonim untuk Ethereum

Dana modal ventura Andreessen Horowitz, juga dikenal sebagai A16z, telah merilis perpustakaan Soliditas yang dapat digunakan untuk pemungutan suara anonim di Ethereum. Disebut “Cicada”, perpustakaan mencegah pilihan pemilih individu untuk diketahui sebelum akhir jajak pendapat. Ketika dikombinasikan dengan sistem keanggotaan grup tanpa pengetahuan seperti Semaphore, itu juga dapat membuat identitas pemilih tidak dapat diketahui secara permanen, menurut posting blog 24 Mei oleh insinyur A16z Michael Zhu.

Cicada didasarkan pada teka-teki kunci waktu, sejenis enkripsi yang memungkinkan pengguna untuk mengenkripsi nilai-nilai rahasia yang hanya dapat didekripsi setelah waktu tertentu berlalu, kata Zhu.

Teka-teki ini telah ada sejak tahun 1996. Namun sebelum tahun 2019, mereka akan meminta pengguna untuk mengungkapkan nilai rahasia mereka setelah jangka waktu tersebut berlalu. Dalam sistem pemungutan suara, hal ini dapat menyebabkan masalah dengan pengguna yang mengirimkan suara dan kemudian offline, mencegah semua suara dihitung.

Pada tahun 2019, konsep teka-teki blok waktu “homomorfik” adalah diajukan oleh cryptographers Giulio Malavolta dan Aravind Thyagarajan. Ini memungkinkan teka-teki untuk ditambahkan bersama untuk menghasilkan teka-teki akhir yang jauh lebih mudah dipecahkan daripada menjumlahkan teka-teki individual. Memecahkan teka-teki terakhir hanya mengungkapkan jumlah dari nilai individu tanpa mengungkapkan nilai individu yang membentuk jumlah ini.

Menurut postingan A16z, Cicada menggunakan teka-teki homomorfik ini, memungkinkan suara dihitung meskipun pengguna sedang offline.

Saat mencoba membawa sistem Malavolta dan Thyagarajan ke blockchain, peneliti A16z mengalami hambatan untuk menciptakan sistem pemungutan suara yang adil: setiap pilihan harus dikodekan sebagai nilai boolean “1” atau “0” . Ini berarti bahwa penyerang dapat mencoba untuk meningkatkan kekuatan voting mereka dengan salah menyandikan suara, seperti menyandikan “100” sebagai nilai.

Untuk mengatasi masalah ini, Cicada mewajibkan pemilih untuk menyerahkan bukti pemungutan suara tanpa pengetahuan bersama dengan setiap suara, kata postingan itu. Bukti menunjukkan bahwa pemungutan suara dienkripsi dengan benar, tetapi tanpa mengungkapkan isi pemungutan suara.

Terkait: Anchorage Digital membuka pemungutan suara DeFi untuk pelanggan hak asuh

Cicada hanya mencegah suara diketahui saat pemungutan suara berlangsung. Setelah “jajak pendapat ditutup” atau periode kunci waktu telah berlalu, siapa pun dapat menentukan isi suara dengan memaksa teka-teki untuk dipecahkan. Namun, A16z menunjukkan bahwa masalah ini dapat diselesaikan dengan menggabungkan Cicada dengan sistem keanggotaan kelompok tanpa pengetahuan seperti Semaphore, Semacaulk, atau pembuktian keadaan tanpa pengetahuan. Dalam kasus ini, memaksakan teka-teki hanya akan mengungkapkan bahwa suara diberikan oleh pemilih yang memenuhi syarat tetapi tidak akan mengungkapkan kredensial yang digunakan untuk membuktikan kelayakan pemilih.

Misalnya, Zhu memberikan tautan ke contoh kontrak yang dibuat menggunakan Cicada yang juga mengandalkan Semaphore untuk menunjukkan kelayakan pemungutan suara.

Sistem pemungutan suara telah lama menjadi komponen Organisasi Otonomi Terdesentralisasi (DAO), badan pengatur yang sering menjalankan aplikasi blockchain. Tetapi dalam kebanyakan kasus, DAO menggunakan token untuk mewakili suara, yang berarti bahwa pengguna individu dapat memiliki pengaruh yang sangat besar jika mereka memiliki banyak token. Misalnya, pada 22 Mei, seorang penyerang mengambil alih Tornado Cash memberikan suara ekstra pada proposal yang berbahaya, menggunakannya untuk menghabiskan semua dana kontrak tata kelola. Sang striker kemudian menawarkan untuk melakukannya kontrol kembali kepada pengguna.

Pendiri Gelombang Sasha Ivanov berpendapat bahwa DAO perlu beralih ke sistem pemungutan suara yang lebih demokratis jika ingin menghindari serangan tata kelola seperti ini.