A16z, 이더리움용 익명 투표 시스템 출시

A16z로도 알려진 벤처 캐피털 펀드 Andreessen Horowitz는 이더리움에서 익명 투표에 사용할 수 있는 Solidity 라이브러리를 출시했습니다. "Cicada"라고 불리는 이 도서관은 투표가 끝나기 전에 개별 유권자의 선택이 알려지지 않도록 합니다. A24z 엔지니어 Michael Zhu의 16월 XNUMX일 블로그 게시물에 따르면 Semaphore와 같은 영지식 그룹 멤버십 시스템과 결합하면 유권자의 신원을 영구적으로 알 수 없게 만들 수도 있습니다.

Cicada는 사용자가 특정 시간이 지난 후에만 해독할 수 있는 비밀 값을 암호화할 수 있는 암호화 유형인 시간 잠금 퍼즐에 의존한다고 Zhu는 말했습니다.

이 퍼즐은 1996년부터 있었습니다. 하지만 2019년 이전에는 기간이 지나면 사용자가 비밀 값을 공개하도록 요구했을 것입니다. 투표 시스템에서 이로 인해 사용자가 투표를 제출한 다음 오프라인으로 전환하여 모든 투표가 집계되지 않는 문제가 발생할 수 있습니다.

2019년 암호학자 Giulio Malavolta와 Aravind Thyagarajan이 "동형" 시간 잠금 퍼즐의 개념을 제안했습니다. 이를 통해 퍼즐을 함께 추가하여 개별 퍼즐의 합보다 해결하기 훨씬 쉬운 최종 퍼즐을 생성할 수 있었습니다. 마지막 퍼즐의 해결책은 이 합계를 구성하는 개별 값을 공개하지 않고 개별 값의 합계만 공개합니다.

A16z 게시물에 따르면 Cicada는 이러한 동형 퍼즐을 사용하여 사용자가 오프라인 상태가 되더라도 투표가 집계되도록 합니다.

Malavolta 및 Thyagarajan의 시스템을 블록체인으로 이전하려고 시도할 때 A16z 연구원은 공정한 투표 시스템을 만드는 데 장애가 되었습니다. 각 선택은 "1" 또는 "0"의 부울 값으로 인코딩되어야 했습니다. 이는 공격자가 투표를 잘못 인코딩하여 투표권을 높이려고 시도할 수 있음을 의미합니다. 예를 들어 "100"을 값으로 인코딩합니다.

이 문제를 해결하기 위해 Cicada는 유권자가 각 투표 용지와 함께 투표 용지 유효성에 대한 영지식 증명을 제출하도록 요구한다고 포스트는 말했습니다. 증명은 투표가 올바르게 인코딩되었지만 투표 내용을 공개하지 않음을 보여줍니다.

관련 : Anchorage Digital, 커스터디 고객을 위한 DeFi 투표 개시

Cicada는 투표가 진행되는 동안에만 투표가 알려지는 것을 방지합니다. "투표가 종료"되거나 제한 시간이 지나면 누구나 퍼즐에 대한 솔루션을 무차별 대입하여 투표 내용을 결정할 수 있습니다. 그러나 A16z는 Cicada를 Semaphore, Semacaulk 또는 영지식 상태 증명과 같은 영지식 그룹 구성원 시스템과 결합하여 이 문제를 해결할 수 있다고 제안했습니다. 이 경우 무차별 대입 퍼즐은 자격 있는 유권자가 투표를 했다는 사실만 드러낼 뿐 유권자의 자격을 증명하는 데 사용된 자격 증명은 드러내지 않습니다.

예를 들어 Zhu는 유권자 자격을 증명하기 위해 Semaphore에 의존하는 Cicada를 사용하여 생성된 샘플 계약에 대한 링크를 제공했습니다.

투표 시스템은 오랫동안 블록체인 앱을 관리하는 관리 기관인 분산형 자율 조직(DAO)의 구성 요소였습니다. 그러나 대부분의 경우 DAO는 토큰을 사용하여 투표를 나타냅니다. 즉, 개별 사용자가 많은 수의 토큰을 보유하고 있으면 막대한 영향력을 행사할 수 있습니다. 예를 들어, 22월 XNUMX일 공격자는 악의적인 제안에 추가 투표를 함으로써 토네이도 캐시를 장악하고 이를 사용하여 거버넌스 계약의 자금을 모두 소모했습니다. 공격자는 나중에 사용자에게 제어권을 되돌려 주겠다고 제안했습니다.

Waves 설립자 Sasha Ivanov는 이와 같은 거버넌스 공격을 피하려면 DAO가 보다 민주적인 투표 시스템으로 이동해야 한다고 주장했습니다.

출처: https://cointelegraph.com/news/a16z-releases-anonymous-voting-system-for-ethereum