How should blockchains be governed? Distributed Ledger Technology allows us to experiment with new voting algorithms that are embedded on the blockchain and free from human intervention. In this note, we examine the differences between on-chain and off-chain governance and discuss specific forms that have emerged, such as futarchy and quadratic voting.
When Bitcoin was first described by Satoshi Nakamoto, there were no details on how the project and resulting network should be governed. Who decides on how the code should be updated and what features should be included? In the early days, all of these issues were decided through informal community consensus. This was relatively easy to achieve, as there were very few users, developers and miners. However, as Bitcoin has risen in prominence and value, attracting an ever increasing number of stakeholders, the issue of governance has become increasingly problematic. The same issues of governance are relevant to all subsequent DLT projects. Given the evolution of DLT governance, any new project should now specify at the outset how it will be governed, with the quality of the response instrumental in determining long-term success.
The topic of governance is extensive. In previous notes, we have examined the characteristics of good governance and the differences between formal and informal governance.1 In this note, we discuss off-chain and on-chain governance, together with new forms of governance, such as futarchy and quadratic voting.
Off-chain governance includes all decision processes about the future of the distributed ledger, that occur outside of the ledger. For example, miners, users and developers can reach a consensus about a proposed change in the code by discussing it informally, or even by voting. When the decision is made, the miners execute it by updating the code run on their hardware. Such a decision process is implemented in Bitcoin and Ethereum, using the Bitcoin Improvement Proposal (BIP) and the Ethereum Improvement Proposal (EIP), respectively.
This decision-making process is similar to traditional corporate decision making in small companies; however, it is less formal. There are no well-defined governance structures, such as a Board of Directors, CEO and an annual general meeting of shareholders. This is partly because distributed ledgers are relatively new, so there is no agreement on what the appropriate governance structure should be. On the other hand, the nature of public distributed ledgers and the fact that they are decentralised makes it hard to just copy the centralised corporate governance structure. For example, nobody “owns” a public ledger and therefore cannot appoint a CEO or Board of Directors. Moreover, there is no legal requirement for anyone to follow or implement the decisions made by the network. Those who accept the decisions can continue to participate in the network, while those who don’t can engage in a hard-fork, creating a new branch of the ledger. This branch is separate from the previous ledger and operates on a separate set of rules.
Figure 1: Blockchain Hard-Fork
Off-chain governance may be efficient when the project is small and is governed by few people who share the same vision. However, when the project grows, this may lead to less transparency, especially if decisions are made behind closed doors, without revealing who the decision makers are. It can also lead to a centralised form of governance, where only a few people make the decisions for the rest to follow.
On-chain governance implements decision processes directly on the distributed ledger protocol. This means that there are governance procedures embedded in the ledger’s code, that determines how network protocol changes are proposed, how consensus via voting is reached and how the final decision is implemented. Prominent examples of distributed ledgers implementing on-chain governance are Tezos and Decred.
The main benefits of on-chain governance is that the decision process becomes more efficient and decentralised, as it is independent of the actions or mistakes of any specific person. There is also greater transparency, as anyone can inspect the code and understand how consensus is reached and the decision is implemented. Another benefit is that hard forks can be deterred. Hard forks can arise when some stakeholders feel disenfranchised from the decision process and are unable to agree with other groups on the future direction of the network. This can usually occur with off-chain and informal governance, especially when the decision process is slow and non-transparent.
On-chain governance is implemented using voting through tokens, and there can also be rewards for participating in the voting process to incentivise user participation. Using a one-token-one-vote system, however, has some disadvantages. First, it is less democratic than assigning one vote to each person, or to each node in the network. Stakeholders with large token holdings may try to implement their own agenda, which may differ from the best interests the rest of the network. The best interest of the network may be defined as the majority of nodes, or the majority of network users. Moreover, stakeholders with small token holdings may feel that their vote has very little influence and choose not to participate at all, exacerbating the influence of those with large token holdings.
The one-token-one-vote system is, in some sense, inevitable due to the nature of the public ledgers. Even if we wanted to assign one vote to each stakeholder or node, it is very difficult to verify one’s identity in a decentralised and pseudonymous system which is open to everyone. Hence, a voting system that tries to enforce one vote per stakeholder (or node in the network) would fail, as nodes would be able to replicate themselves, in order to get more votes. In other words, it seems that there is an inherent inability of public and decentralised blockchains to implement one-node-one-vote or per user systems. However, private blockchains, that implement some form of identity management, can implement this.
We now discuss two specific forms of on-chain governance, that have been considered in blockchains.
The first is futarchy, proposed by Robin Hanson.2 The basic idea is that, instead of voting on different proposals directly, we vote on values and bet on beliefs. The aim is to have a more efficient form of governance, by separating what we want to achieve (values), from how we think it can be achieved (beliefs).
To provide an example, suppose that users on a blockchain want to decide whether to increase fees for miners. The first step is to vote on what is our value, or what we want to achieve. Suppose we decide that our value is to maximise the number of transactions, one year from now. The second step is to determine, by betting on beliefs, which policy maximises the number of transactions one year from now. We do that by extracting the beliefs and information, or expertise, of everyone in the network through incentives. In practice, we can set up two prediction markets that run for two weeks, for instance. The first predicts what will happen to the number of transactions if there is an increase in fees, and the second predicts if there is no increase in transactions.3 Anyone can participate in these markets and bet on the outcomes, by buying tokens that pay a pre-specified amount for every transaction that is achieved within a one year. These are zero-supply tokens, so by buying (or selling) a token, you effectively bet on a particular outcome, against the person you are buying from or selling to. If you believe people are underestimating the number of transactions, you can buy the token and collect the reward paid for every transaction over the next year. If you believe people are overestimating the number of transactions, you can sell the token now for more than you will collect from one years’ worth of transactions. The difference between the final prices of these two tokens in the two prediction markets is the best estimate of the effect of fees on the number of transactions.
When the two prediction markets end, we see the prices of the two tokens and implement the policy that generates the highest price in the respective market. In other words, we implement the policy that is more likely to maximise the number of transactions, according to the aggregated expertise of the network. After one year, we count the number of transactions and tokens of the prediction market that would have received the highest pay-out as a result. These token’s pay-out is then executed. The tokens of the other prediction market, of the policy that are not implemented, are nullified and the bets are not executed.
Another form of DLT governance is quadratic voting. The basic idea is that each individual can cast multiple votes, however the marginal cost of casting each additional vote increases. The mathematical formula specifies that the cost of casting x number of votes, is x to the power of 2. For example, if casting 1 vote costs 1 token, casting 5 votes costs 25 tokens. Quadratic voting solves some of the problems generated by the one-token-one-vote system. First, it protects minorities and people with few tokens, against people with large token holdings. For example, in a one-token-one-vote system a rich person with 101 tokens can defeat 100 people, each having 1 token. With quadratic voting, however, this person would need 10,201 tokens to defeat them. Second, it gives a higher incentive to people with small token holdings to participate in voting, because their influence is increased, hence it is less likely that power becomes centralised. Finally, it allows people to express the intensity of the support they have for certain issues, which is a major shortcoming of traditional one-vote-per-person systems.
Quadratic voting has already been implemented in some distributed ledger projects.4 However, it is important to note that in order to implement it, we need to be able to prevent an endless replication of one’s identity i.e. sybil attack. This is because we need to know how many votes (or tokens) have been cast by each individual. As we mentioned above, it is difficult for a public distributed ledger to prevent the replication of identities. Hence, implementing quadratic voting requires some form of identity management, like KYC procedures, introducing an element of centralisation.
On-chain governance has the potential to revolutionise how any project, not just distributed ledgers, are governed. It provides tools to quickly program and implement any decision process we can imagine. Our current governance structures were invented hundreds of years ago and were shaped by the technological constraints of the past. In recent years, there have been many proposals for new types of governance, that take advantage of these new tools, such as futarchy and quadratic voting. More are likely to emerge, that can only make governance more efficient.
1 Good governance is discussed at https://en.aaro.capital/Download.aspx?ID=2e6e0048-f80d-4c95-89e8-e7f5b2869306&Name=A_Primer_on_the_Economic_Aspects_of_DLT_and_Cryptoassets&inline=true. Formal vs. informal governance is discussed at https://en.aaro.capital/Article?ID=88793025-683c-409b-899e-e5823697cbc6.
2 Futarchy is explained in more detail at https://blog.ethereum.org/2014/08/21/introduction-futarchy/.
3 For more details on prediction markets, see https://augur.net/blog/prediction-markets/.
4 For more details, see https://www.forbes.com/sites/shermanlee/2018/05/30/quadratic-voting-a-new-way-to-govern-blockchains-for-enterprises/#210c723d6ef8.