กองทุน Andreessen Horowitz หรือที่รู้จักในชื่อ A16z ได้เปิดตัว Solidity library ที่สามารถใช้ในการลงคะแนนโดยไม่ระบุชื่อบน Ethereum ที่เรียกว่า “Cicada” โดย library จะป้องกันไม่ให้ผู้มีสิทธิเลือกแต่ละคนทราบก่อนการลงคะแนนเสียงจะสิ้นสุดลง และเมื่อรวมกับระบบ zero-knowledge group membership เช่น Semaphore ก็สามารถทำให้ตัวตนของผู้ลงคะแนนเสียงไม่เป็นที่รู้จักอย่างถาวร ตามโพสต์บล็อกเมื่อวันที่ 24 พฤษภาคมจากวิศวกร A16z Michael Zhu
Cicada อาศัย time-lock puzzles ซึ่งเป็นประเภทของ cryptography ที่ช่วยให้ผู้ใช้สามารถเข้ารหัส secret values ที่สามารถถอดรหัสได้หลังจากผ่านช่วงระยะเวลาหนึ่งเท่านั้น Zhu กล่าว
puzzles เหล่านี้มีมาตั้งแต่ปี 1996 แต่ก่อนปี 2019 puzzles เหล่านี้จะต้องให้ผู้ใช้เปิดเผย secret values เมื่อผ่านช่วงเวลาดังกล่าวไปแล้ว ซึ่งในระบบการลงคะแนน อาจทำให้เกิดปัญหากับผู้ใช้ที่ส่งการลงคะแนนแล้วออฟไลน์ ทำให้ไม่สามารถนับการลงคะแนนทั้งหมดได้
ในปี 2019 แนวคิดของ “homomorphic” time-lock puzzles” ได้รับการเสนอโดย cryptographer “Giulio Malavolta” และ “Aravind Thyagarajan” ซึ่งสิ่งนี้ทำให้สามารถรวม puzzle เข้าด้วยกันเพื่อสร้าง puzzle สุดท้ายที่แก้ได้ง่ายกว่าผลรวมของ puzzle แต่ละตัว โดยวิธีแก้ puzzle สุดท้ายจะเปิดเผยเฉพาะผลรวมของค่าแต่ละค่าโดยไม่เปิดเผยค่าแต่ละค่าที่รวมกันเป็นค่ารวมนี้
ตามโพสต์ของ A16z Cicada ใช้ homomorphic puzzles เหล่านี้ ทำให้สามารถนับคะแนนได้แม้ว่าผู้ใช้จะออฟไลน์ก็ตาม
Cicada กำหนดให้ผู้ลงคะแนนต้องส่ง zero-knowledge proof ของบัตรลงคะแนนพร้อมกับบัตรลงคะแนนแต่ละใบ โดย proof จะแสดงให้เห็นว่าการลงคะแนนถูกเข้ารหัสอย่างถูกต้อง แต่ไม่มีการเปิดเผยเนื้อหาของการลงคะแนน
Cicada จะป้องกันไม่ให้รู้ผลโหวตในขณะที่ทำโพลเท่านั้น เมื่อ “แบบสำรวจปิดลง” หรือ time-lock ผ่านไป บุคคลใดก็ตามสามารถกำหนดเนื้อหาของการลงคะแนนเสียงได้โดย brute-forcing เพื่อไข puzzle อย่างไรก็ตาม A16z เสนอว่า ปัญหานี้สามารถแก้ไขได้โดยการรวม Cicada เข้ากับระบบ zero-knowledge group membership เช่น Semaphore โดย Semacaulk หรือ zero-knowledge state proofs ซึ่งในกรณีนี้ การ brute forcing จะเปิดเผยเพียงว่าการลงคะแนนนั้นมาจากผู้มีสิทธิเลือก แต่จะไม่เปิดเผยข้อมูลประจำตัวที่ใช้ในการพิสูจน์สิทธิ์ของผู้มีสิทธิเลือก
ระบบการลงคะแนนเป็นส่วนประกอบขององค์กรปกครองตนเองแบบกระจายอำนาจ (DAO) มาเป็นเวลานาน ซึ่งเป็นหน่วยงานกำกับดูแลที่มักจะจัดการกับ blockchain app แต่ในกรณีส่วนใหญ่ DAO จะใช้โทเค็นเพื่อเป็นตัวแทนการโหวต ซึ่งหมายความว่าผู้ใช้แต่ละรายสามารถมีอิทธิพลเกินขอบเขตได้หากพวกเขามีโทเค็นจำนวนมาก ตัวอย่างเช่น เมื่อวันที่ 22 พฤษภาคม ผู้โจมตีเข้าควบคุม Tornado Cash โดยการลงคะแนนเสียงพิเศษสำหรับข้อเสนอที่เป็นอันตราย โดยใช้มันเพื่อถอนเงินทุนทั้งหมดของ governance contract