There are many benefits to on-chain governance, which is why DFINITY has a built-in governance system, the Blockchain Nervous System (BNS).
In this episode, I discuss the shortcomings of off-chain governance and briefly explain how BNS works.
Hello everyone, and welcome to another episode of Inside DFINITY.
Today, I want to talk about a topic that makes DFINITY different from most other existing blockchain systems. I want to talk about governance, a word I’m sure you’ve heard multiple times here.
Generally, there are two types of governance systems, on-chain and off-chain governance systems used by various blockchain protocols. Before we delve into the details, why is it important?
Blockchain Ecosystem
If you look at the blockchain ecosystem, you’ll notice different actors: miners, users, and developers, and presumably other categories within which you can define the stakeholders or participants of that ecosystem.
Why does it matter? With all of this, different participants may have different interests.
For example, when we look at the Bitcoin network, users who want to make transactions and move Bitcoins, historically they have been interested in larger blocks because that would allow them to get cheaper transaction fees.
This will also allow them to conduct transactions faster and incorporate more data into a single block.
The most widely used off-chain governance systems are already in use in platforms such as Bitcoin.
Let’s assume that in Bitcoin, miners are interested in keeping the block size constant because it means they can stick with their current hardware and not have to upgrade any clients.
On the other hand you have users who want to make transactions and are interested in those transactions being as cheap as possible and as fast as possible, which will mean increasing the block size.
Off-chain governance systems: Bitcoin, Ethereum
How do these groups come to agreement? In an off-chain governance system, what happens is that users, developers, and miners (everyone) meet in some off-chain channel, maybe Reddit, a Telegram Group, a Slack Channel, or even an offline meeting.
They discuss solutions and try to reach agreement. Once enough people agree, the update is released, and hopefully enough people adopt it so that the network fully upgrades to that new version.
Historically, off-chain governance systems have been very difficult for Bitcoin.
Many proposals to upgrade the block size and other parameter changes have been made and, because the network could not agree on one solution, none of them could be processed and published.
But even worse, another platform that uses an off-chain governance system is Ethereum.
Data Access Object (DAO) Surface
If you remember, the DAO incident happened about two years ago.
And if you remember the DAO, it was essentially a distributed venture capital fund that raised money through ICOs and then distributed those funds to various companies based on decisions that people made on-chain.
While on paper the DAO was very successful in raising money, I think it raised about $150 million at the time, and is probably worth more now.
Unfortunately, someone hacked the system and stole approximately $50 million, roughly a third of all the funds raised by the DAO.
There was a problem in the way the smart contract for the DAO ICO was written, and because of this, someone was able to steal approximately one-third of all the funds.
So what happened? The community was split. Some believed that the money stolen in the DAO hack should be returned and that there should be a hard fork to reverse the transaction.
On the other hand, there is a large part of the community that says that blockchain should be immutable. That is one of its most valuable qualities, and that is why we should never mess with the immutability of blockchain.
So what happened? Vitalik listened to both sides of the community and decided that even though code is law, in this case the ends justify the means.
He then decided to release an update that would require everyone to adopt and return the $50 million to the DAO. Unfortunately, not everyone followed Vitalik’s advice.
Ethereum Classic
There was a large portion of the community that disagreed with the hard fork, or they just didn’t want to go through the hassle of updating, or whatever the reason, but a large portion of the community stayed with what is now called Ethereum Classic.
ETC is a symbol. Therefore, the chain split into two parts, a hard fork.
Of course, this is not something you want to have on your network, as it would create a lot of insecurity and instability when these two coins are now together when they were previously one, or when one chain would be completely useless and the other chain would become valuable.
How do you handle this situation? There is a lot of insecurity. So technically, you don't want this to happen in a user network that many companies are going to use.
Hard Forks and Soft Forks
So before I go on, a term I use a lot right now is fork. And there are only two types of forks: hard fork and soft fork.
A fork basically means that the chain was one until a certain point, and then only a portion of the network adopted the release. Suddenly, the chain split in two.
For a hard fork, this means that the two ends of the fork are incompatible with each other. The upgrade is so large that one is incompatible with the other, and clients that do not upgrade will not be able to follow the new chain.
On the other hand, a soft fork is an upgrade that introduces new functionality to the blocks that process data, in a backwards-compatible way.
All clients (i.e. those that have not yet upgraded) can still join the network and can still follow the chain and build new modules, although they will lack certain functionality.
As such, we now know that its off-chain governance may not be an ideal solution as it leads to unmanageable soft and hard forks and generally results in a fragmented network.
So what are the potential solutions?
On-chain and off-chain governance systems
Now, as you might have guessed, the alternative approach is called on-chain if the governance of these systems is handled in properties elsewhere on the web, rather than on-chain or off-chain.
This means that your blockchain introduces built-in mechanisms for you and the community to make decisions and for the community to self-govern. If the blockchain allows you to make decisions on-chain, it means that clients can also update themselves.
Releases can be rolled out to all clients currently connected to the network, which allows you to upgrade faster and also prohibits them from being diverted to other forks.
In a sense, if you look at this, it's a little like when the iPhone first came out and you always had to manually download the software in the beginning.
The upgrade process is complicated, and some people choose not to upgrade because they like certain features and don't like how they are changed in the new version.
So, in a sense, on-chain governance is like automatic updates: when your computer automatically or your phone automatically downloads a security update.
It might just prompt you if you want to stop it, and usually just executes them and adapts automatically to new updates and upgrades.
DFINITY Solution: Blockchain Nervous System (BNS)
Now to the fun part. How does DFINITY solve this problem? How does DFINITY handle on-chain governance?
DFINITY is one of the few systems that have emerged that is very promising for how on-chain governance should work.
DFINITY does this through what we call the “Blockchain Nervous System.”
The Blockchain Nervous System is the built-in governance protocol that DFINITY will build into all of its clients, users, miners, and everyone who participates in the network. We’ll use another episode to dive deeper into how the Blockchain Nervous System works.
Generally, the way you can imagine it is that you submit proposals to the blockchain nervous system and then stake them, which means you stake some money to show that you are serious about these proposals.
Now, everyone who wants to vote on a proposal also invests some money and then returns to get neurons. What we now call neurons are a voting token, and then you can use these neurons and voting tokens to make decisions.
And the clever thing about it is you can delegate votes. So if you set up your neuron to follow your colleagues to vote, you can delegate your vote to someone you know, or maybe you're on vacation and you want to vote in a similar way to one of your colleagues, it will vote for you.
Rough summary
• There is on-chain and off-chain governance. There are some problems with off-chain governance, most notably it is very difficult for the entire community to make a decision and then have the entire community adapt to that decision. This usually leads to forks. Forks are bad because they make the network fragmented, which means the network loses value or at least has a lot of insecurity.
• There are two types of forks. A hard fork, which means that non-upgraded clients cannot participate in the new blocks, or are not aware of the new blocks. A soft fork, where non-upgraded clients can still follow the new function blocks, but they may not be able to create new function blocks, thus missing out on some key functions.
• That’s why DFINITY has a governance protocol built into its blockchain, we are using an on-chain governance system. In the case of DFINITY it’s called the Blockchain Nervous System. The Blockchain Nervous System works by getting some Neurons and either voting on proposals directly or delegating your votes and Neurons to follow some of your colleagues, friends, or whomever you want to follow.
Hopefully, this has given you some insight into DFINITY’s plans for on-chain governance.
Career opportunities at DFINITY
Now I’m going to enjoy one of the best things about living on Lake Zurich, I’m going to go water skiing.
I would just like to say that we are also hiring and we are opening an office in Zurich.
So if you want to work on a cool project with a bunch of really smart people and maybe go water skiing on Friday nights every now and then, head over to dfinity.org/jobs.
That's it, we'll see you soon.
IC content you care about
Technology Progress | Project Information | Global Activities
Collect and follow IC Binance Channel
Get the latest news