You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Jul 18, 2020. It is now read-only.
Aragon Nest Proposal: Verifiable Off-chain Tabulation of Carbon-vote signaling
Abstract
On-chain governance reduces friction and increases transparency in collective decision making. However, current approaches to voting make tradeoffs to user experience in order to achieve secure on-chain tabulation and prevent double voting.
Partial-Lock Commit Reveal Voting Procedure: Users submit a secret vote, then after poll closes reveal and tabulate votes. This process has the advantage of keeping votes secret during the voting process, but requires the user to perform two separate transactions and lock their tokens from the point they submit a vote to when they reveal their vote.
A Balance Snapshots Voting Procedure: A snapshot of the balances of all token holders is taken at a specific block number when voting begins. Users can vote with the balance and tabulate votes as they submit them, they are never required to lock their tokens and voting and tabulation can be done in a single transaction. However, votes are not private during the voting period and users can vote with their balance and exit before the vote completes.
Carbon-vote Signaling Procedure: Users can indicate their vote based on their current token balance, if they transfer tokens the weight of their vote changes. Tabulation can be done client side but the result is not available on-chain.
Verifiable Off-chain Tabulation of Carbon-vote signaling would use the Carbon-vote procedure along with verifiable off-chain computation mechanism to provide an on-chain result given a specific blocknumber. The result should be verifiable on-chain in the event of a dispute, but the cost for on-chain verification should be contained within the verification game and not passed on to voters.
This would present a new alternative to the above voting procedures that would:
Not require token locking
Not require on-chain token snapshots
Be compatible with both public and commit-reveal procedures
Reduce ability for users to influence the vote and leave before results are public
Deliverables
An off-chain verification solution that takes a carbon-vote poll using a plurality tabulation procedure and block-number and returns the tabulated result of the poll based on balances at block-number.
An AragonOS compatible application and user interface for creating and participating in a vote
An interface to program more sophisticated tabulation procedures (e.g. range voting, approval voting, borda, instant-runoff, etc)
Grant size
Funding: From $50k up to $100k in ETH, split into chunks paid out over achieved deliverables.
Success reward: Up to $50k in ANT, given out when all deliverables are ready.
Application requirements
Proof of concept implementation or well thought out technical design document detailing how project will be accomplished
Details of the team members, alongside their willingness in terms of implementation
Estimated average burn rate for completing the deliverables
Legal structure to be adopted, if any
Development timeline
The development timeline will be the following one in regards to each deliverable:
Feb 2018
March 2018
Apr 2018
Testnet launch will be expected during Apr 2018, with mainnet launch being June 2018
The text was updated successfully, but these errors were encountered:
It is a bit complex, but most of the stuff will be needed by Truebit anyways. Also implementing different kinds of tabulation methods should be quite simple.
At Decentraland, we're about to release an off-chain voting tool where votes are weighted based on any ERC20 token. It's not built shoe-horned for this Nest Proposal, but it should take care of point (1) of the requirements. The code lives at:
The bad news is that it requires a central server to carry the results, and that it's prone to censorship of votes, which is awful and unacceptable. We're working on it [1], we're not looking to claim the Nest bounty, but rather offer the code for anyone who wants to build on top of Agora and help us take away all the centralization of our solution.
Best regards from a passionate Aragon fan,
Esteban
[1]: We're adding a smart contract with a security deposit that gets slashed if the central server does not include a vote.
Aragon Nest Proposal: Verifiable Off-chain Tabulation of Carbon-vote signaling
Abstract
On-chain governance reduces friction and increases transparency in collective decision making. However, current approaches to voting make tradeoffs to user experience in order to achieve secure on-chain tabulation and prevent double voting.
Partial-Lock Commit Reveal Voting Procedure: Users submit a secret vote, then after poll closes reveal and tabulate votes. This process has the advantage of keeping votes secret during the voting process, but requires the user to perform two separate transactions and lock their tokens from the point they submit a vote to when they reveal their vote.
A Balance Snapshots Voting Procedure: A snapshot of the balances of all token holders is taken at a specific block number when voting begins. Users can vote with the balance and tabulate votes as they submit them, they are never required to lock their tokens and voting and tabulation can be done in a single transaction. However, votes are not private during the voting period and users can vote with their balance and exit before the vote completes.
Carbon-vote Signaling Procedure: Users can indicate their vote based on their current token balance, if they transfer tokens the weight of their vote changes. Tabulation can be done client side but the result is not available on-chain.
Verifiable Off-chain Tabulation of Carbon-vote signaling would use the Carbon-vote procedure along with verifiable off-chain computation mechanism to provide an on-chain result given a specific blocknumber. The result should be verifiable on-chain in the event of a dispute, but the cost for on-chain verification should be contained within the verification game and not passed on to voters.
This would present a new alternative to the above voting procedures that would:
Deliverables
Grant size
Funding: From $50k up to $100k in ETH, split into chunks paid out over achieved deliverables.
Success reward: Up to $50k in ANT, given out when all deliverables are ready.
Application requirements
Development timeline
The development timeline will be the following one in regards to each deliverable:
Testnet launch will be expected during Apr 2018, with mainnet launch being June 2018
The text was updated successfully, but these errors were encountered: