How Decentralized is DeFi? – Part 2/3

Published by Mario Oettler on

If you have missed part 1 you can find it here.

In this part, we scrutinize the settlement layers 1 and 2. They serve as a foundation of decentralized finance services and thus influence their decentralization. In some cases, there is even a strong connection between the settlement layer and financial services, like in the case of the Terra blockchain, its Luna token and its UST algorithmic stablecoin that crashed dramatically in May 2022.

Settlement Layer 1 – Bitcoin & Ethereum

Since we cannot give details about every blockchain out there, we focus on the two largest blockchain networks, Bitcoin and Ethereum.

Protocol

The first question one should ask is whether the protocol allows for a decentralized network or not. Bitcoin’s and Ethereum’s protocols enable a decentralized network with many nodes that contribute to the consensus. In theory, everybody can enter or leave the PoW consensus mechanism at will. There is no registration necessary and nobody can censor contributors.

Network

Network and protocol go hand in hand. The way the network looks like (what roles there are, how many nodes of each role exist, etc.) depends on the protocol. In a PoW network like Bitcoin (and still Ethereum), we have three important roles:

  1. Miners
  2. Full Nodes
  3. Wallets

In Ethereum 2.0, with PoS instead of PoW, we might have other roles like:

  1. block producers,
  2. attestors,
  3. Full Nodes, and
  4. Wallets

Here, we only want to focus on the miners. These are the nodes that create the consensus.

In principle, there is no central authority that somehow influences the consensus.

A small decentralized network of miners.

Miners can connect to whatever other miner they want. There is no registration necessary that could censor any participant. It is not even necessary that every miner is connected with every other miner. This is given by the protocol.

The more miners there are, the harder it is to collude, which would weaken the idea of decentralization.

If we look at the hash rate distribution provided by the Bitcoin mining pools, we see that five pools control more than 50 % of the hashing power. This could lead to collusion and ultimately to censorship. Hence, the decentralization is not that strong here.

Distribution of the bitcoin hash rate among mining pools as of 16. May 2022. Source: https://www.blockchain.com/charts/pools

Ethereum also allows a decentralized network. At the time of writing, the PoW consensus mechanism was still in place, but the transition to PoS is in sight.

The distribution of the hash rate of Ethereum is not much different. But here, more combinations among miners are possible to control more than 50 % of the hashing power.

Distribution of the hash rate in the Ethereum network as of 16. May 2022. Source: https://etherscan.io/stat/miner?blocktype=blocks

Hardware

Ethereum uses graphic cards to mine blocks; Bitcoin uses ASICs – specialized hardware. The focus on consumer graphic cards makes it easier for customers to buy the necessary hardware since there are different (but not many) graphic card producers. The mining ASIC market is mostly controlled by one company (Bitmain with its Antminer). Although there are other manufacturers, they only play a minor role. The concentration in the hardware sector means that the producer controls who can participate in the mining by delivering hardware or not. It can even use its own hardware to mine blocks.

Software

Another aspect is the software that is used to run the network. The reason why software matters is that if there is a bug in one implementation, it can stall the whole network. With different implementations, it is less likely that there is the same bug.

In Bitcoin, there is basically one implementation – the bitcoin core. It is coded by the core developers and serves as the protocol representation.

Ethereum follows a different approach than Bitcoin. Here, the protocol exists as a document specifying the network rules. Hence, coders can (and do) code their own software in their favorite programming language. This helps to secure the network against accidental bugs. It also broadens the coder base.

Different implementations also mean less power to the coders and more choice for the users – in theory. In Ethereum 2.0, we could see at the beginning of 2022 a domination of the Geth client (running on more than 80% of the nodes) for the execution layer.

A similar picture shows with the consensus clients where Prysm dominates the space with more than 60% of all nodes. It is important to note that Ethereum 2.0 is not yet merged with Ethereum 1.0 and hence, most DeFi applications still run on Ethereum 1.0. But these numbers are an outlook on what the network could look like.

If we consider the distribution of the stakes among addresses and pools, we get this Lorenz curve. It shows a strong inequality between the smallest pools and the largest ones.

Lorenz curve. Data source https://beaconcha.in/pools.

More than 60 % of the pools make basically no contribution to the pools staking. While this points to a strong concentration in the staking pool space, staking pools contribute only roughly 27 % of the total stake in Ethereum 2.0. at the time of writing.

Staking distribution. Source: https://beaconcha.in/pools

Governance

At the beginning of this part, we have talked about the protocol. Since time doesn’t stand still and the environment and the needs of the users evolve, the protocol needs to be maintained and updated from time to time to bring in new features and bug fixes. The important question is who can make changes to the protocol.

This could be the time to talk about soft forks and hard forks. If you are not familiar with them, you can learn more here and here. But instead, we want to take a more general perspective.

In Bitcoin and Ethereum, basically everyone (who can code and understands the system) can code new features and publish them since the code is open source. But in reality, it is not that easy. Who would download the new feature, particularly if they influence the consensus mechanism and cause a fork?

Before the code becomes part of the consensus, other miners need to install it on their devices too. This requires some amount of public relations and media coverage to reach out to the miners, full nodes, wallets, etc. to get their attention. But gaining this attention is cumbersome. Another issue is that there might be contradicting implementations which would make it difficult for the users to decide on what software is the correct one.

For that reason, the community of both networks (Bitcoin and Ethereum) has formed some kind of process that controls the suggestion of new features (Bitcoin Improvement Proposal BIP or Ethereum Improvement Proposal EIP). Both networks follow a similar approach in how they handle new suggestions. It is important to know that everyone can make a suggestion.

Ultimately, a decision on what feature makes it into the code needs to be made. The decision is made by rough consensus. It doesn’t require formal voting, which would not work in such an open community anyway. Instead, the core developers try to sense what the community really wants. Of course, this gives some degree of power to the core developers since they can interpret the signals (or ignore them completely) the way they want. The term for such a consensus method is rough consensus.

This touches on the question of how contributors can publish their ideas. In Ethereum, there is a website (centrally operated) called Ethereum Magicians. It is highly recommended to discuss EIPs on this website. And again, this gives some degree of power to the operators of this website.

In the Bitcoin environment, there is a (centralized operated) forum called bitcointalk. It also serves as a discussion board for new ideas.

We see that even though the community tries to maintain a decentralized and open governance process, there are centralized elements.

Solidity

If we focus on Ethereum as one of the major DeFi blockchains, the important question is how all these DeFi protocols are coded. The most popular programming language for this is Solidity. This means the majority of the ecosystem depends on a single programming language. This is again a part of the network that shows some large degree of centralization. If there should be a serious bug in the compiler, this affects the whole network.

I remember this meme from a messenger group. But unfortunately, I cannot recall where it was taken from.

But we can even broaden our view to other blockchains. Many new blockchains (Touted as Bitcoin or Ethereum killers) run on an EVM (Ethereum virtual machine). This means that it is possible to execute smart contracts written in Solidity and compiled to EVM bytecode. On the one hand, this is very convenient for programmers who don’t need to develop the same logic in different languages. But is also means that even more DeFi protocols rely on the EVM and Solidity. If we take a look at the distribution of DeFi funds among blockchains, we see that Ethereum has the lion’s share with more than 50 %.

Distribution of Total Value Locked (TVL) among different blockchains. Data source: https://defillama.com/

And if we look at what blockchains run the EVM, we see that more than 75% of all DeFi funds rely on the EVM. (EVM based blockchains are: Ethereum, Avalanche, Polygon, Cronos, BSC, Solana partially).

Settlement Layer 2

In this chapter, we focus mainly on Ethereum. Since Layer 2 solutions are still a work in progress, we keep this short. At the time of writing, it seems that rollups will be the major 2nd layer solution for Ethereum. It is expected that first optimistic rollups and later zk-Rollups will take over. Both solutions have strong network effects. Users need to deposit funds in the rollup’s contract if they want to use it.

And like in any other network, the more users a rollup solution has the more useful and attractive it is for other users. This might end in a situation where only a few or even a single 2nd layer solution will be available, which creates a high degree of centralization.

If you want to read more about his, the blog post by Vitalik Buterin is recommended.

Categories: Blog

if()