Skip to main content

Anti-Collusion Infrastructure


This Request for Proposals is currently considered under development, meaning one or more grants have been signed to address the topic. We might be interested in additional implementations, but itโ€™s better to double check this with the grants team.

Project Description ๐Ÿ“„โ€‹

A lot of blockchain applications that involve some kind of voting, like on-chain quadratic funding, can potentially be exploited via collusion and bribery (see Vitalikโ€™s post about collusion). Therefore, itโ€™s important to design mechanisms that effectively prevent any kind of on-chain collusion or at least make it more difficult. The goal of this RFP is to encourage people to try to research and come up with their own solutions or to implement existing solutions, like Minimal anti-collusion infrastructure as a substrate pallet or ink! smart contract.

Deliverables ๐Ÿ”ฉโ€‹

The milestones below are just an initial draft. The milestones can be structured completely differently and the implementation can also leverage other tools and infrastructure as long as the overall goal of the RFP is met.

Milestone 1 - Anti-collusionโ€‹

0a.LicenseApache 2.0 / MIT / Unlicense
0b.DocumentationInline documentation of the code and a basic tutorial that explains how a developer can use the project
0c.Testing GuideThe code will have unit-test coverage (min. 70%) to ensure functionality and robustness. In the guide we will describe how to run these tests
0d.Article/TutorialArticle or tutorial that explains the work done as part of the grant.
1.Anti-collusionImplement a mechanism to prevent bribery and collusion, leveraging encrypting votes (ZKPs) potentially via Minimum Anti-Collusion Infrastructure (MACI)
2.Voting ExampleIntegrate a basic voting example that lets you test the mechanism

Previous grant applicationsโ€‹