Aeternity and decisions in cryptocurrency design. Part 2: Governance
This is part two of a two-part series on the choices you have to make when building a cryptocurrency.
- Governance elements will emerge even in the absence of deliberate design choices
- Governance design is highly unpredictable, both on the blockchain and off
- Governance designs need to be actively tested and iterated
Aeternity, or æternity as the diphthong-gifted call it, is a blockchain smart contract platform that aims to start with a more modern foundation than Ethereum did for the creation of a more streamlined and naturally faster dapp platform.
It's an ambitious goal though, and it can't be achieved without a lot of careful and conscious thought. Every element of cryptocurrency platform design is a conscious choice of some kind, even if that conscious decision is to not over-design a certain element.
This means there are a lot of tough choices to be made when designing a cryptocurrency platform. Governance is one of those elements.
What does governance look like?
In nuts and bolts terms, governance might be described as community decision-making. It's critical because no crypto platform will spring into the world fully formed. Rather, it will need constant community-driven development to remain effective and succeed. A good governance system might be one which lets a blockchain develop in a way that lets a cryptocurrency most effectively fulfill its purpose.
It's easy to forget about governance, but one school of thought holds that by looking for deliberate governance design choices, you can separate the coins which will survive in the long run from those which will wither away after going in the wrong direction.
And, as discussed in Part 1, governance mechanisms and the decisions they influence have direct impacts on other elements like network consensus and tokenomics.
As the importance of governance in cryptocurrencies becomes more apparent, it's become more of a standard element. The first cryptocurrencies like bitcoin didn't really have any type of deliberate governance, and instead saw the creation of incidental governance systems. Later arrivals like Ethereum built in mechanisms to overcome the limitations of fragmented decision-making. And now cryptocurrencies like Aeternity are exploring how to formalise governance and put it "on chain" as it were, to make it an integral and trustless part of a cryptocurrency.
Bitcoin, for example
Omitting clear governance mechanisms is also a design choice.
Bitcoin was first on the scene, and naturally didn't have any previous coins to learn from, which might be one of the main reasons it didn't include clearly defined governance mechanisms. This gave power over bitcoin's future to miners, under a system where they could try to collaborate on bitcoin's development and then thrash out disagreements with a hash war whenever they couldn't agree.
The upshot is that it's easy, and fair in a way.
The downside is that it's difficult, if not impossible, for bitcoin to ever develop in a way that's unfavourable to miners. On the one hand this makes sense. Miners secure the network and run the transactions, and are arguably the only ones who should have a say over how bitcoin develops. On the other hand, miners are still just one type of network participant and an active system will ideally want to create benefits for all types of users to produce the desired network effects.
Hodlers, people who want to transact with bitcoin as digital cash, day traders and anyone else who touches the stuff is also a network participant. A diverse range of applications and users is helpful to a cryptocurrency, but the desires of different groups often won't align.
Plus, is bitcoin really decentralised if its miners and their profit motives have complete control of network development? Can a coin that needs to satisfy miners above all else ever be the best possible tool for any job except satisfying miners?
There are no definitive answers to these kinds of questions yet.
Ethereum, for example
Ethereum was built with a semi-formalised governance system. Anyone can submit an Ethereum Improvement Proposal (EIP), which are publicly aired for discussion, and development decisions were deliberately designed to be public and community-centric, as are most of bitcoin's. But as a PoW blockchain, it's still subject to the longest chain wins hash power voting as bitcoin.
The main difference is that its early developers anticipated that this would be an issue, especially in light of its long term plans of migrating from proof of work to proof of stake. This change will eliminate miners and miner profits, replacing it with a staking system instead.
Anticipating that this would be an issue, early Ethereum developers (unilaterally) decided to build in a ticking time bomb, which would reduce PoW mining effectiveness over time. The idea is that miners and everyone else would have no choice but to go along with the shift to PoS, because the time bomb will be wiping out PoW one way or another. The difficulty bomb, in this context, is also a deliberate governance design choice.
But decentralised governance is easier said than done, and Ethereum's efforts have introduced new problems. For example, the mild cult of personality around Vitalik Buterin which gives him outsized control over how Ethereum develops. Similarly, an outsized amount of decision-making power lies with a small handful of "core" Ethereum developers and if they don't want an EIP to pass, it won't.
There's also the need to speak good English and have a solid technical foundation if you want to take an active role in Ethereum's development through the EIP process. How can a world computer be decentralised if it's controlled almost entirely by a few English-speaking engineers with a knack for programming in Solidity? At least hashing power is a universal language.
And what are the implications of replacing a miner oligarchy with a PoS wealth oligarchy? No one really knows yet.
Plus, there are always going to be some sticky issues that people can't agree on. The best example might be the controversial EIP 999. It proposed a way for affected users to recover funds following the $160 million Parity wallet accident, and gained a lot of support. However, it was eventually knocked down on the grounds that funds recovery was a dangerous precedent which would allow the centralising of power.
Essentially, a large part of the community voted in favour of centralisation, but their request was vetoed by a handful of authorities who didn't want to give themselves any more power.
What happens if the community decides it wants to be centralised? What if the community speaks up in a fair election and makes a resoundingly poor decision? Is completely fair and inclusive governance that gives everyone an equal voice really the best thing for a cryptocurrency?
Maybe, maybe not.
Aeternity's design choices
This was the background to Aeternity's entry – a lot of hard lessons but no clear answers.
And like bitcoin, it also uses a proof of work consensus mechanism, which means it can't afford to ignore the possibility of contentious forks.
In centralised software, you can just update the main client which automatically updates its other iterations, explains Aeternity's Vladislav Dramaliev. In that respect, the main client might be thought of as an all-powerful dictator passing down rulings to the population. But with blockchains, the nodes can choose to rebel by ignoring unpopular rules.
"In the case of blockchains it's up to users to apply the fix," Dramaliev said. "They may not choose to do so, and if they don't do so you are left with two versions - the network splits into two chains... depending on where the mining power is at one point one of the chains could become the main one. It's a very contentious process, but this is something that all public blockchains are subject to."
It's very much an unpredictable trial and error process, which doesn't necessarily sit well with a blockchain project that aims to one day control billions of dollars of value. At the end, governance too often comes down to putting out an update then crossing your fingers and hoping people like it, Dramaliev explains, "but this is never certain".
The starting point is the realisation that with a proof of work system, the Aeternity team itself does not have much actual control over what happens and that it's down to the miners to upgrade and follow the new chain. At the same time, you can't ignore the hard reality that "having a say" by itself isn't enough to actually encourage voting. From one angle you might say it's fine, because if people don't care enough to vote they probably shouldn't be voting anyway.
From another angle it's a big problem, because more voters makes a system more decentralised, and makes it much harder for a small cabal to seize control. In fact, 100% voter participation is a statistically delightful outcome even if half of them are voting completely at random. This is because simply by voting, even at random, voters help protect a governance system against collusion, or Sybil attack equivalents like vote-buying.
With this in mind, Aeternity looked for a system that rewards participation while still allowing a delicate balance between decentralisation and direction. The vision, Dramaliev explains, is a governance method that directly rewards unity and participation, gives all network participants a meaningful voice in how the system develops, and still lets key developers in the Aeternity team put their fingers on the scales in the near future to nudge communities in a more desirable direction if needed.
"Whilst aeternity launches the team will not have much control over whats happening or how forks go through since its up to the users - the people who are running the node software, the miners - to update their clients and follow the new chain," Dramaliev said. "The only thing we can do is incentivise users and miners to move to the new chain. If these incentives are large enough, then hopefully there wont be a chain split."
Some of these incentives will take the form of desirable features being added in forks, and where possible to make one version of the software more clearly desirable than the other.
It's worth noting that most of Ethereum's forks have tended to be similarly meaningful. With the notable exception of the contentious Ethereum Classic fork, most of Ethereum's forks have gone quite smoothly, probably because they introduce clearly desirable changes with minimal downsides. By contrast, Bitcoin Cash committed to a pattern of regular forks every six months. Unfortunately, the most recent scheduled fork caused a schism after a BCH faction accused it of not delivering enough benefits.
A good rule of thumb might be to not fork if you have nothing to fork about.
Aeternity has no intention of falling into this trap.
"What we plan to do in order to create these incentives is actually introduce new features," Dramaliev emphasises, "and generally that is the way these scheduled forks usually go... basically introducing new features to the blockchain. And this is also how we are going to do it. We introduce new applications, or create more stable fixes that will make the network more efficient."
Beyond that, it also has plans to ensure the community stays together through forks, at least initially, by burning down the old house when it forks to a new one.
Snapshots will be taken prior to forks, and new AE tokens dropped into the network as appropriate. The old fork's tokens, meanwhile, will be burnt and rendered unusable after a fork.
"Let's call it an expiry date," Dramaliev says. "If a user wants to have their coins on the aeternity network they will have to follow the new chain. This also could be presented as an incentive."
While it might seem heavy handed, it might also be necessary in the vulnerable early days of Aeternity. And it will only be present in the first phase of Aeternity's public release, Dramaliev says.
Having your say
The protection and ongoing development of the fledgling community eventually needs to give way to an exchange of ideas. It's similar to how early humans in their wandering nomadic tribes might benefit from following a decisive strongman, but larger nations in a more complex day and age might develop faster by being able to compromise and handle the free exchange of ideas.
A small crypto community that's a little too open minded might get usurped, but a larger and more grownup cryptocurrency might be better served by airing more diverse opinions.
Aternity also has plans for this next stage.
"You know how usually when it comes to the future of a blockchain protocol or blockchain system, the discussions usually happen - lets say - "off chain" - in blogs, in Twitter, in different places?" Dramaliev asks. "Some people think this is preferable. We think there might be a better way."
"That better way is to actually provide a formal way for users, actual users of the platform to provide their opinions on what the future of the platform should be and on any other subject."
"How we're going to do this is basically by introducing this idea that anyone who has any tokens, once they are moved to the mainnet, can post a question publicly - and we are building an app for that - and they can post this question and anyone else who has coins can provide an answer. Once they provide an answer, the weight of that answer will be the same as the number of AE coins that they have."
"It's a form of on chain democracy," Dramaliev says. "Anyone can have a vote, and their weight depends on how many coins they have."
In order to better encourage actual participation, Aeternity also wants to make voting as easy as possible with systems like easy vote delegation.
"In this case, delegation will be possible," Dramaliev says. "If you think someone else is a better expert on certain issues, you can delegate your token weight to them and they can vote on your behalf for all issues. So it's a form of liquid democracy."
This vote will initially not be binding on the protocol level, as the technology and governance philosophy really isn't yet at a place where you want to trust it to that extent. But someday it aims to get there.
"One important point here is that the outcome of these votes is not binding on the protocol level," Dramaliev notes. "At some point the idea is to make this binding, but so far from a technological point of view the developers don't think we are there yet."
Even if it's not binding though, Dramaliev reckons there might still be some benefits to orienting most of the discourse around communities of token holders rather than just opening it up as a free for all. The idea is that having skin in the game will make people weigh their words more carefully. And for Aeternity's developers, this might also make it easier to find the signal among the noise and see what the community really wants.
"I would say it would be more legitimate, in terms of an opinion, than someone just writing somewhere on the internet and providing an opinion on the system they don't have any part of," Dramaliev says.
The main reason it won't be initially binding is because just like almost everything else in cryptocurrency, it's still under development. Governance can be subject to attacks just like consensus mechanisms or anything else, and that human element is still providing an important level of protection.
Vote buying, skewed voting weights from heavy token holders and all those problems are... well... problematic. But the token weighting system is needed to protect against governance Sybil attacks – similar to how token holdings protect PoS consensus mechanisms against attacks – and many of the downsides aren't easily engineered away.
Built for testing
The team at Aeternity is approaching these downsides with both eyes wide open. If and when the on-chain governance system can be safely made binding on the protocol level it might be. And at that point Aeternity might become the first truly decentralised blockchain around.
But until then, a human element and developers who can say no to bad or hostile ideas are still a necessary form of protection.
"There are a number of different attacks or ways to abuse this system for personal gain," Dramaliev says frankly. "You can have markets of people actually paying other people to provide them with their vote weight, in order for them to be more able to influence the vote in this or that direction. We so far cannot come up with adequate ways to address these attack vectors.
"On the other hand, people might decide not to use this voting mechanism," he shrugs.
"This [binding governance] is still something we're thinking of implementing, but we're currently focusing on other features of the network, and we would like to test this out a little bit to see how it's going to work in this non binding way. At this point we decided to simply provide this on chain governance to users and see how it goes."
Aeternity doesn't have all the answers, but it's asking the right questions in an effort to find them. Its on-chain governance system, even though it's not binding, is designed to be heavily used for testing purposes. Part of that is by opening the mechanism up to more than just governance-related questions. These on-chain forums can still indicate community opinion, and unfortunately will almost certainly still be subject to various attack attempts.
Some of these attacks might be obvious, such as blatant vote buying. Others might be much more subtle and insidious. For example, pretending to be more highly qualified than you really are to solicit delegated votes; or making a sufficiently compelling argument to convince someone to vote against their own best interests; overwhelming people's common sense with emotional arguments; trying to convince your opponents to simply not vote at all rather than vote for you; or just spending money advertising to pull more votes for your cause.
At what point does someone engaging in these kinds of activities cross the line from participating in a democracy to attacking the governance model?
There's an extremely fine line between attacks on governance mechanisms and typical political discourse, and in the real world it's largely delineated by factors like nationality and clear-cut existing laws. No one's entirely sure what might happen when this is reinvented in a borderless, pseudonymous blockchain world.
But if all goes to plan, Aeternity will find out.
Disclosure: At the time of writing the author holds ETH, IOTA, ICX, XLM, BTC
- Dutch government exploring blockchain digital ID via hackathon
- Bitmain reveals new high-power Equihash miner
- Binance brings AUD-BTC to Australia with Binance Lite
- IBM’s World Wire launch will likely go down as a major event in payments history
- Ethereum likes ProgPoW but actually getting things done is hard