Overview of the Secondary Financing Agreement clr.fund: How is it different from Gitcoin?
Written by: Karen
The airdrop effect has spread Gitcoin donations to underserved users, while on the other side, the secondary financing protocol clr.fund on xDai has also begun to gain attention and recognition.
Since the second half of last year, clr.fund has completed 9 rounds of financing (from round 0 to round 8), with the most recent matching pool reaching $12,000, contributed by 511 users who provided $6,300 in funding. Although the matching pool and user contributions are far lower than Gitcoin, clr.fund's advantages in resisting Sybil attacks, bribery, and collusion are gradually becoming evident.
What is clr.fund?
clr.fund is a secondary financing protocol that effectively allocates matching funds to public goods in the Ethereum ecosystem without relying on centralized entities. It combines secondary financing, zk-SNARKs, Minimal Anti-Collusion Infrastructure (MACI), and anti-Sybil attack mechanisms or features, aiming to provide more democratic and increased funding support for public goods in the Ethereum ecosystem, characterized by permissionless access, accuracy, censorship resistance, privacy protection, and anti-coercion.
Similar to Gitcoin, clr.fund also holds a series of funding activities where anyone can add public goods projects beneficial to the Ethereum ecosystem as beneficiaries, contribute funds to the matching pool, and donate funds to the beneficiaries. However, the funds received by the supported public goods can only be used for product development.
According to an interview with clr.fund's main contributor Auryn Macmillan recorded on the xDai documentation page, clr.fund is more like a community rather than a team, and anyone can contribute to the project. clr.fund has received grants from Moloch DAO, which promotes the development of Ethereum infrastructure, and Gitcoin Grant.
Operating Mechanism of clr.fund
The clr.fund protocol uses the Constraint Liberal Radicalism algorithm (CLR, also known as secondary financing) to facilitate donations from Ethereum community members to public goods.
Secondary financing was proposed by Vitalik Buterin in 2018 as a mechanism for crowdfunding matching for public goods, considering both the number of donors and the amount donated. It not only allows small donations to be better matched but also makes fundraising and donation decisions more democratic and efficient. In simple terms, the amount received by the supported project is the "square of the sum of the square roots of individual donations."
Regarding the operational mechanism, clr.fund has a matching fund pool where individuals or organizations can contribute funds. In each round of donation activities, users can donate funds to projects they are interested in based on their preferences, while also helping the supported projects receive part of the matching pool funds.
Therefore, from a contract perspective, the main component of the clr.fund smart contract is the factory contract, which can deploy a new contract for each round of donations. All matching funds are sent to the factory contract, while user contributions are sent to the contract for that round of donations.
Specifically, the clr.fund factory contract has the following four roles:
Owner: Initially the deployer, has the authority to set the coordinator address, transfer matching funds to the current round donation contract, and set the duration of donation openings;
Coordinator: Responsible for running zk-SNARK calculations on donations to determine the relative percentage of matching funds each supported public good should receive;
Contributor: Contributes tokens (WXDAI) to the address of the current funding activity;
Beneficiary: The supported public good.
What are the characteristics of clr.fund, and how does it differ from Gitcoin?
clr.fund has focused on preventing Sybil attacks, bribery, and collusion since its inception.
To prevent the expectation of airdrops from undermining the original intention of donations and to eliminate the situation where a contributor uses multiple addresses, clr.fund uses the BrightID identity system to prevent Sybil attacks and ensure the uniqueness of each account.
In this regard, Gitcoin is also continuously optimizing its trust verification mechanism to mitigate Sybil attacks. When calculating unverified users, it considers 50% of the donation amount, and after users are verified through Proof of Humanity, BrightID, Idena, POAP, ENS, SMS, Google, Twitter, or Facebook, the system increases the user's donation influence, up to 150%.
Gitcoin Trust Verification Mechanism
Additionally, in clr.fund, since community members cannot access voting information and cannot decrypt it, bribery situations are rare.
In terms of resisting collusion and collusion, clr.fund uses zero-knowledge proofs (ZK-SNARKs) combined with Minimal Anti-Collusion Infrastructure (MACI) to protect the privacy of individual contributions and limit bribery situations. This is also the main difference between clr.fund and Gitcoin currently.
Further reading: "Does Airdrop Expectation Undermine Gitcoin's Original Donation Intent? Vitalik Buterin Introduces the MACI Solution That Does Not Support Airdrop Retrospective"
Moreover, clr.fund utilizes the decentralized arbitration mechanism Kleros Curate List to manage and filter public goods eligible for donations through secondary funding. To apply to become a supported public good on clr.fund, a review must be submitted, along with a deposit of 20 XDAI, with the review process taking about three days.
Conclusion
Compared to traditional financing mechanisms, secondary financing, as a way to co-fund public goods with the community, not only better matches user-donated funds but also largely eliminates the presence of centralized organizations or committee roles. Coupled with clr.fund's verification mechanisms against Sybil attacks, bribery, and collusion, as well as the implementation of Minimal Anti-Collusion Infrastructure (MACI), it may see widespread application.
However, at the same time, there may still be a bribery situation in clr.fund, where coordinators can be bribed, thus clr.fund coordinators must be highly trusted by the community. clr.fund has also mentioned that the current need for multiple trusted parties is the biggest limitation of the project's design, and the Owner is likely to be replaced by a DAO or other decision-making mechanisms to alleviate trust issues regarding that role.