Detailed explanation of Vota: Explore the optimal voting technology for specialized infrastructure used in decentralized community governance.

CN
PANews
Follow
1 year ago

Blockchain can play a role beyond currency and financial transactions. One non-financial application is the significant improvement of voting and governance through blockchain. In this article, we explore the method of constructing a special-purpose blockchain infrastructure aimed at facilitating voting activities based on MACI. This infrastructure should include a lightweight blockchain serving as a timestamp server and hosting logic, as well as tools required to reduce user costs and maximize user experience. Therefore, it should become the new foundational platform for the next generation of voting technology. Before delving into the details, let's first review the history of voting technology and its development within the blockchain community.

Evolution of Voting Technology

Detailed explanation of Vota: Exploring the optimal voting technology for special-purpose infrastructure for decentralized community governance

From the ancient Greek Kleroterion[1] to modern electronic voting machines.

Voting technology has a long history[2]. It is crucial to human society but has developed slowly. In 2019, the UK still relied on handwritten ballots during the general election[3], while other nations used closed-source electronic voting machines[4], which easily led to disputes over governance results[5].

The adoption of modern voting technology has improved efficiency but has not been very successful in addressing transparency and verifiability.

Undoubtedly, the integrity of voting is crucial for the transfer of power, decision-making on important matters, or the allocation of resources. If people cannot agree on the voting results of governance decisions, they cannot cooperate, leading to increased friction. Friction can lead to problems, from disputes to wars.

Despite the slow development of voting technology, transparency has not improved for a long time. From Kleroterion to paper ballots, and then to electronic and optical scan voting machines, verification still relies on trusted individuals and auditing organizations. The cost of confirming and auditing voting results can be extremely high[6]. Clearly, there is room for improvement.

So, what is the ideal voting technology? In fact, this is not a difficult question. We can easily create a "wish list":

(1) Open-source infrastructure;

(2) Open-source programs hosting voting logic;

(3) Permanent records of all votes in sequence;

(4) Ability to cryptographically verify results;

(5) Resistance to collusion;

(6) Privacy protection;

(7) Low voting costs.

If we can build an open-source system that can be continuously improved, we will gradually achieve the above goals. The improvement of voting technology and the reduction of costs can benefit smaller organizations and communities by providing them with technology they could not previously access, creating significant positive externalities.

Voting and Governance in the Blockchain Community

Voting and governance are not unfamiliar in the blockchain community, as many blockchain communities are distributed and rely on governance to drive the development of transactions.

Blockchain itself can transparently record votes and verify voting results. These attributes have been used by the blockchain community for governance, such as Snapshot token voting[7] and Cosmos governance proposal voting[8] activities. Therefore, the blockchain community can vote on proposals and decide on important governance matters without the need for centralized agents or face-to-face meetings.

Detailed explanation of Vota: Exploring the optimal voting technology for special-purpose infrastructure for decentralized community governance

KlaytnSquare[9] is conducting a proposal[10] calling for validators to vote on-chain. The proposal seeks approval for quarterly financial expenditure plans[11].

The aforementioned examples adopt a simple and direct 1 token 1 vote rule - the voting power depends on the stake in the network or protocol. Clearly, as long as it makes sense, we can create other voting logics. The programmability of blockchain makes it easier and more practical to implement non-traditional voting logics.

An example is Quadratic Voting12, a voting scheme that is becoming increasingly popular in the blockchain community. In a QV round, users can express their preferences by spending "voting credit points" (Voice Credit) on a specific topic. However, if a voter wants to cast more than one vote on the same topic, the voting credit cost for each vote will increase. Therefore, the total cost of voting increases quadratically, preventing extreme preferences from users with excessive voting power.

Detailed explanation of Vota: Exploring the optimal voting technology for special-purpose infrastructure for decentralized community governance

Quadratic Funding[13] round voting on the Aptos blockchain. Voting results are recorded on-chain, and the voting logic is verifiable.

Many parameters need to be considered when choosing a specific voting method. For example, a trade-off is choosing between on-chain voting and off-chain voting. On-chain voting logic may be more verifiable and transparent, but transaction fees may be a significant burden. Conversely, off-chain voting logic may be cheaper but with lower transparency and verifiability. However, on-chain and off-chain voting are not mutually exclusive. We can easily design a hybrid system where some processes are conducted on-chain and the rest off-chain.

In addition to costs, there are privacy issues. Privacy is important for two reasons. First, in many cases, if users can vote anonymously (privacy between users and organizers), their concerns about voting will decrease. Additionally, privacy between users can help prevent vote buying, effectively achieving resistance to collusion.

One way to minimize on-chain computation while enforcing off-chain integrity is to use zero-knowledge proofs[14]. A simple idea is that if off-chain computation can be verified through zero-knowledge proofs, we can move most of the computation off-chain. If messages are further encrypted, we can enhance privacy. MACI[15] is the minimal framework to achieve this goal.

Detailed explanation of Vota: Exploring the optimal voting technology for special-purpose infrastructure for decentralized community governance

MACI voting rounds move tallying off-chain. The validity of the results is then verified on-chain through zero-knowledge proofs.

In MACI voting rounds, votes are encapsulated in messages encrypted with a public key generated by a round operator (operator) and submitted to the smart contract. Therefore, all messages are "timestamped" by the blockchain, creating a message chain of voting information.

When the voting round ends, the operator downloads all messages, decrypts them, and counts the votes in reverse order. Then, the results are published along with zero-knowledge proofs, which can be verified on the smart contract (or by anyone else), marking the validity of the results and the correctness of message processing.

The entire process ensures the integrity of the published results while maintaining minimal on-chain computation. It also provides the ability for privacy and resistance to collusion among users.

How Does MACI Work in Practical Applications?

MACI is now being used by various hackathon communities on DoraHacks[16] to vote for their favorite hackathon projects. So, let's take the DoraHacks MACI round as an example.

Detailed explanation of Vota: Exploring the optimal voting technology for special-purpose infrastructure for decentralized community governance

OpenSea and Replit hackathon using MACI for judge voting in 2022.

After hackathon projects (BUIDL) were submitted, the organizers selected 12 BUIDL teams from all submissions. Ten judges were invited to vote for these 12 BUIDL teams and distribute a $25,000 prize. The ten judges were whitelisted and registered to participate in the voting round, collectively sending 39 messages to the MACI smart contract deployed on Polygon.

After the voting, the administrator (DoraHacks) tallied the votes and published the final results on the leaderboard, then provided zero-knowledge proofs to verify the leaderboard.

Detailed explanation of Vota: Exploring the optimal voting technology for special-purpose infrastructure for decentralized community governance

Leaderboard of the OpenSea x Replit hackathon voting results.

Detailed explanation of Vota: Exploring the optimal voting technology for special-purpose infrastructure for decentralized community governance

Zero-knowledge proof verifying the results displayed on the leaderboard.

As a general framework, MACI can be used for voting use cases beyond hackathon judge voting and open-source community voting. However, surprisingly, the adoption of MACI in more voting use cases is rare. More broadly, blockchain voting itself has not been widely adopted in the real world.

The benefits of using blockchain to improve voting technology are obvious, so why has the real world not progressed forward? Even within the blockchain community, the advantages of MACI are clear, so why is MACI not widely adopted in decentralized communities?

One of the main reasons for the slow adoption of advanced voting technology is not low demand but the difficulty of using such technology. In other words, we need to improve the technology to provide better UX/UI for modern voting products and reduce user usage costs.

User Experience

In addition to open-source community governance, we also need to build more interfaces for users to use new voting technology. DoraHacks provides the best product for the entire industry to fund the Web3 ecosystem and hackathon community. Although the interfaces on DoraHacks.io have specific use cases, they can be simplified and generalized to build more interfaces for more use cases.

Specific frontend strategies have not been determined yet. However, good user experience is crucial for the adoption of this technology, even within the blockchain community - this is important for Dora Factory developers.

Voting Costs

General blockchains should be as decentralized as possible and provide a single infrastructure for all types of applications. These blockchains are not optimized for any specific type of application, especially non-monetary or non-financial applications. However, when a large number of applications compete for the same set of computing resources, transaction costs fluctuate. The unpredictability of costs can cause trouble for voting.

Here is the complete translation of the provided markdown:


Dora Factory has recently tested a new product called Vota[17]. The idea behind Vota is to experiment with special-purpose blockchains and continuously optimize voting technology and user experience. Currently, Vota is still in its infancy. However, we can imagine several different forms of Vota.

Temporary Smart Contracts

This is the current way of supporting voting rounds on DoraHacks.io. Each voting round is deployed as a separate smart contract on a specific blockchain. In most cases, Ethereum usually cannot directly support most voting scenarios (which is why Snapshot is the default product used by the Ethereum community). Currently, Polygon and BNBChain are popular choices for most funding organizers and hackathon organizers on DoraHacks.

Detailed explanation of Vota: Exploring the optimal voting technology for special-purpose infrastructure for decentralized community governance

Temporary smart contracts on L1 blockchain, with all voting messages sent to L1.

Using temporary smart contracts is not entirely a bad thing. It is flexible and can be deployed anywhere as needed. For DoraHacks users, the current effect is good, but it cannot equally meet all voting needs.

L2 Vota

If we create a second-layer infrastructure (L2) specifically for voting, we can significantly reduce gas costs and may be able to achieve low-cost voting on Ethereum. L2 contracts do not have to be fully deployed on Ethereum; they can be cheaper, only occasionally submitting L1 transactions to verify all L2 activities.

We can further optimize this model. General L2s must be frequently submitted to Ethereum. Vota only needs to submit one transaction to Ethereum per round, with a maximum of one transaction's gas cost per round. If multiple rounds end at the same time, they can share a transaction to further reduce gas costs, making voting on L2 more feasible.

Detailed explanation of Vota: Exploring the optimal voting technology for special-purpose infrastructure for decentralized community governance

Messages sent directly to L2 contracts. Only one transaction is sent to the L1 blockchain at the end of each round.

L3 Vota (Applicable to L(n)Vota, where n>=3)

L3 Vota is not entirely meaningless. Through the established L2, L3 Vota can further reduce gas costs by an order of magnitude. Although L3 transactions are ultimately recorded and verified on Ethereum, the trade-off is to trust the selected L2.

Of course, we can further extend this to L(n) Vota, as L(2)…L(n-1) will submit transactions to Ethereum (or other L1). But obviously, the trust chain will make things complicated. From the current situation, many well-known L2s still rely on a single sequencer; talking about L(4) now may be premature.

Detailed explanation of Vota: Exploring the optimal voting technology for special-purpose infrastructure for decentralized community governance

Application Chain Vota

Dora Factory developers have created a simple "hack" that allows CosmWasm contracts to use[18] Bellman[19] to verify zero-knowledge proofs generated by SnarkJS. By incorporating Bellman into CosmWasm contracts, any Cosmos application chain can quickly support zk applications.

With the ability to run zk applications, independent blockchains can use software architectures like Tendermint to build a chain. The consensus of these blockchains is similar to BFT, or simpler, and they can typically support up to around 100 validators. By carefully selecting validators with no conflicting interests, independent blockchains can be secure and neutral enough.

Detailed explanation of Vota: Exploring the optimal voting technology for special-purpose infrastructure for decentralized community governance

As DoraHacks welcomes more Cosmos application chains, a clear use case for application chain-based Vota is voting for hackathon results. Beyond DoraHacks, the role of application chain-based Vota goes far beyond hackathon judge voting.

Detailed explanation of Vota: Exploring the optimal voting technology for special-purpose infrastructure for decentralized community governance

Application chain Vota has fewer validators, but carefully selected validators can provide reliable infrastructure.

It is worth noting that these solutions are not exclusive. As Vota develops, different solutions may intersect. For example, if we have an independent application chain version of Vota as the primary infrastructure, application chains can send additional transactions to L1 for specific transaction verification needs.

Better Anonymity

Current research is aimed at making MACI more trustless. The original MACI made an important trust assumption, that the administrator would not be corrupt. This is not universal. To improve this, there are MPC-based[20] and non-MPC-based[21] solutions. Currently, DoraHacks has built an anonymous version of MACI based on ElGamal verifiable randomizing encryption, initially proposed by Kobe Guikan.[22] It has been tested in small ETH research funding rounds[23] on DoraHacks.io.

Pushing for the adoption of anonymous MACI may be a bit premature before MACI itself is widely adopted. However, continuing research to reduce the trust assumptions of general voting mechanisms is also important.

Detailed explanation of Vota: Exploring the optimal voting technology for special-purpose infrastructure for decentralized community governance

Adding anonymity to MACI by allowing users to disable and change their secret keys, while the administrator cannot know who added which new key.

Gas Payments

It is important not to assume that users have cryptocurrency. If every user needs to pay gas fees for each transaction, blockchain users will be limited to a small fraction of people. To address this issue, MACI operators can deposit a refundable token in advance and pay users' fees. This mechanism can be implemented through a gas station.

The gas station itself is a smart contract residing on Vota. Before each round begins, the operator can choose to use it or not. By using the gas station, the operator deposits DORA into the smart contract in advance and can pay transaction fees related to a specific round through the gas station.

Most likely, Vota will deploy a default gas station, and people can deploy their own gas stations with different payment logic as needed.

Detailed explanation of Vota: Exploring the optimal voting technology for special-purpose infrastructure for decentralized community governance

The gas payment contract is a ledger of gas balances for each voting round.

Conclusion

Special-purpose blockchains may be suitable for a wide range of specific use cases, especially non-financial use cases. Voting is one of the most important issues that blockchain and zero-knowledge cryptography can significantly improve. Improving voting transparency and efficiency can reduce governance friction in human society and within the blockchain community, ultimately increasing productivity in the long run. Protocols like MACI have created a concise framework for voting applications on the blockchain, but there is still much work to be done to improve voting technology. Specifically, we need a user-friendly infrastructure as a foundation for long-term improvement of voting technology, and this article details future work.

References

Kleroterion: https://en.wikipedia.org/wiki/Kleroterion

The long history of voting technology: https://electionlab.mit.edu/research/voting-technology

UK 2019 "Brexit" general election: https://en.wikipedia.org/wiki/2019UnitedKingdomgeneralelection

Electronic voting machines: https://en.wikipedia.org/wiki/DominionVotingSystems

Disputes over election results: https://www.reuters.com/legal/dominions-defamation-case-against-fox-poised-trial-after-delay-2023-04-18

The high cost of confirming and auditing voting results: https://azsos.gov/elections/voters/voting-elections/ballot-processing/2022-general-elections-recount-information

Snapshot token voting: https://snapshot.org/

Cosmos governance proposal voting: https://www.mintscan.io/cosmos/proposals

KlaytnSquare: https://square.klaytn.foundation/GC

A proposal on KlaytnSquare: https://square.klaytn.foundation/Proposal/Detail?id=4

Financial expenditure plan: https://govforum.klaytn.foundation/c/proposal/5

Quadratic voting: https://en.wikipedia.org/wiki/Quadratic_voting


I have completed the translation of the provided markdown. Let me know if you need any further assistance!

Quadratic Funding: https://research.dorahacks.io/2022/07/11/quadratic-governance

Zero-Knowledge Proof: https://en.wikipedia.org/wiki/Zero-knowledge_proof

MACI: https://ethresear.ch/t/minimal-anti-collusion-infrastructure/5413

DoraHacks: https://dorahacks.io/grant/ethdenver22/buidl

Vota: https://vota.dorafactory.org/

A simple "hack" allowing CosmWasm contracts to use: https://github.com/DoraFactory/snarkjs-bellman-adapter/tree/main/prove

Bellman: https://github.com/zkcrypto/bellman

MPC-based solution: https://research.dorahacks.io/2023/03/30/mpc-maci-anonymization

Non-MPC-based solution: https://ethresear.ch/t/maci-anonymization-using-rerandomizable-encryption/7054

Anonymous MACI version proposed by KobeGuikan: https://github.com/dorahacksglobal/anonymous-maci

ETH research funding round: https://dorahacks.io/grant/ethre3/maci

免责声明:本文章仅代表作者个人观点,不代表本平台的立场和观点。本文章仅供信息分享,不构成对任何人的任何投资建议。用户与作者之间的任何争议,与本平台无关。如网页中刊载的文章或图片涉及侵权,请提供相关的权利证明和身份证明发送邮件到support@aicoin.com,本平台相关工作人员将会进行核查。

欧易返20%,前100送AiCoin保温杯
链接:https://www.okx.com/zh-hans/join/aicoin20
Ad
Share To
APP

X

Telegram

Facebook

Reddit

CopyLink