Decentralization took seriously — Our SPO View

Markus from VITAL - Responsible Staking
Cardano SPOs
Published in
4 min readNov 19, 2021

--

In this fourth article of our series, we want to focus on the different levels of decentralization. Some may think this is just about having many pools. Let’s take a deeper look at that!

Articles in this series:

01 VITAL Introduction
02 Stakepools, the backbone of the Cardano Network
03 How we ensure fair rewards
04 Decentralization took seriously (this Article)
05 Environmental and Social Responsibility
06 Trust needs to be earned

Why is decentralization important

Primarily decentralization is important to avoid the risk of attacks. In Cardano, everyone who controls more than 50% of the stake would be able to make voting decisions on his own and in the worst case even manipulate transactions if the stake is delegated to Stake Pools which are controlled by this stake owner.

Based on that you could say that decentralization purely relies on the maximum share of individual stakeholders or mutual stakeholders with a common harmful interest.

Actually, it’s not as simple as that. The stake is delegated to pools which are generating blocks based on the assigned stake. This means that effectively anyone who would control a list of stake pools that got >50% of the active delegated stake would also be capable of manipulating transactions. This of course would require manipulations on the Cardano Code and with that some in-depth knowledge. But for sure this is cheaper compared to owning >50% of the total staked ADA supply.

OK, so decentralization not only belongs to Stake owners. It also belongs to Stakepool operators. So how can an SPO support decentralization to help secure the network?

Which aspects can be decentralized

The question above requires us to take a deeper look at all aspects which might help improve decentralization. It’s a common belief that just having many pools increases decentralization. Actually, this is not fully correct. Only pools which have active delegation help.

Which aspects can be decentralized?

  • Active Stake delegated to many pools
  • Pools are operated by different Operators who are independent
  • Hosting pools on different hosting providers and locations
  • Proper hardening to avoid malicious manipulations

How a Stake pool can contribute to decentralization.

Given the 4 mentioned SPO-related decentralization aspects each SPO has a responsibility to not only look at the individual pool benefits but on the overall network health and maximum support of decentralization.

How can the single aspects be considered by an SPO?

Active Stake delegated to many pools
This aspect is nothing the SPO can affect directly. It’s a delegator’s choice to select a trustworthy SPO

Pools are operated by different Operators who are independent
One SPO should only run a single pool. Running multiple pools is increasing the totally delegated stake managed by one single person. Operators who commit to run a single pool are typically part of the Cardano Single Pool Alliance. As nothing is blocking single persons from running multiple pools, this is a pure responsibility of a delegator who selects a pool

Hosting pools on different hosting providers and locations
Many pools are running on the same hosting providers like e.g. Contabo because it’s a very cheap Virtual Private Cloud Provider.

What happens if Contabo decides to restrict Crypto Services? Or if a government forces them to do so? Or even worse, what happens if multiple hosting providers are forced to shut down crypto-related servers?

This would impact the overall Cardano network health on the one hand. It will take some time until delegators re-delegate their stake to other servers or the SPO’s move their operations to different providers.

Additionally, it removes e.g. 20% of honest nodes and therefore makes it easier for the remainder to gain a 51% scenario.

Proper hardening to avoid malicious manipulations

What would happen if the biggest Cardano Nodes had major security leaks. If someone is able to gain access to many servers this also would be a risk. Also, the risk of using common tools is a potential security risk as they could be misused to inject malicious software into Servers.

Also, DDOS Attacks to the biggest pools could make a portion of honest nodes be unable to distribute their blocks and therefore make it easier to attack the remainder through a 51% scenario.

How about VITAL?

To address the above-mentioned risk we run our nodes in a hybrid cloud setup. Hybrid means that a part runs in the Cloud. Another part runs in a private hosting location. Both are able to run our pool independently which makes us independent from single Hosting Centers.

Besides that, we are running one of our servers in a Hosting Center in Ethiopia which no other Pool is using so far. This improves distribution times to this location and again avoids that all pools running on the same hosting providers.

All of this is of course not the cheapest option. But in terms of overall network health, decentralization, and securing the network we think it’s a responsible approach.

In terms of security, we are only exposing the Cardano Port to the outside world. All servers are auto-upgrading packages to apply security-related updates immediately. Maintenance access only happens through VPN with 2FA and all other basic Linux hardening tasks are executed. Additionally, we run one private Relay not which is not announced publically to avoid going out-of-service in a DDOS Attack scenario.

What’s next?

Next time I’ll give some insight into our environmental and social responsibility.

--

--