Protect a DAO with Civic Pass
By default, a DAO grants permission to vote through a governance token.
In many cases, this is insufficient, and a DAO needs to add additional constraints to its membership based on their real-world identity.
Example use-cases are:
- Sybil-resistance and one-person-one-vote
- DAOs with quadratic voting systems
- Location-specific DAOs
- Bot-resistance
- Age-gated DAOs
- DAOs that require KYC
The Civic Pass plugin allows a DAO to connect their DAO to Civic Pass, a platform using the decentralized Gateway Protocol to verify and tokenize aspects of their members' real-world identity.
In order to enable the Civic Pass plugin, use the following steps:
Security
As of 14/05/2022 the Civic Gateway program is not yet security-audited. Use at your own risk.
Create DAO
Create a DAO as usual with Realms. Both Bespoke and Multisig DAO types are supported.
tip
The current version of the Civic Pass plugin does not support composition of plugins. This feature is expected in
June/July 2022. Until then, gated DAOs require the Min community tokens to create proposal
property to be
set to 1.
danger
The spl-governance program version must be equal or higher than v2.2.4 for the Civic Pass plugin to work correctly. If the plugin is enabled for older versions it can result in irreversible deadlock of the DAO.
Council
- Setup a DAO with a council.
The Civic Pass plugin does not affect the council. Setting a council allows the configuration of a DAO without requiring the council members to first obtain passes.
Configure Civic Pass Plugin
In order to configure the Civic Pass Plugin a "Civic: Create Gateway plugin registrar" proposal must be created.
Set the community token as the governance token, and choose a Civic Pass type.
tip
The pass types offered via the UI change as new passes become available. Check docs.civic.com for more details.
tip
Enable Civic Pass Plugin
Once the Civic Pass plugin configuration proposal is voted on and executed, the DAO can enable it
through a DAO Config Change
proposal.
From the DAO parameters page, select Change Config
option
and set the Community voter weight addin
parameter to
the Civic Pass Gateway Program Id Ggatr3wgDLySEwA2qEjt1oiw4BUzp5yMLJyz21919dq6
Obtaining a Civic Pass
Once the Civic Pass plugin has been added correctly, a button will appear on the DAO page.
The button shows the status of the current pass. A status of "Active" indicates that the member's pass is valid, and they can interact with the DAO.
Clicking the button opens an iFrame, which guides the user through the process of obtaining a Civic Pass.