For many people in the blockchain and cryptocurrency sector, decentralization is the Holy Grail. Despite that Satoshi Nakamoto himself never even used the term in his seminal white paper, decentralization has evolved into a byword for many of the principles that the crypto community holds dear. These include trustlessness, security, censorship resistance, and open governance, to name a few.
But just how decentralized is a typical blockchain application?
The dApp Centralization Problem
Ethereum is widely accepted as one of the most decentralized blockchains. However, several incidents in DeFi underscore the lack of true centralization. The recent dForce hack resulted in the dApp’s operators halting lending while they figured out what was going on. Elsewhere, Synthetix was accused of foul play last year by a frontrunner on Reddit after the company used his own tactics against him to drain his account balance.
In reality, only a few elements of the dApp are hosted on the Ethereum blockchain. This is usually limited to the data that relates to token ownership.
Many of the other components in a dApp, such as user interface, databases, and object storage are owned or operated by centralized companies. In terms of reaping the benefits of decentralization, some of these components matter more than others. For example, data storage is one area that many people don’t realize takes place off the blockchain.
This is because data storage on Ethereum, and many other blockchains, is inefficient and prohibitively expensive. Using Ethereum, a dApp developer would be paying upwards of six figures once their data storage goes above around 100GB.
Data stored on Ethereum is also permanent, and for most applications, it’s simply unnecessary to store all data permanently.
Centralized Points of Failure
To navigate these problems, most developers use centralized providers such as AWS to host the data for their dApps. This means that dApps don’t get the full range of benefits offered by decentralization, and as such, are prone to many of the issues that blockchains are supposed to overcome. For example, centralized servers repeatedly come under attack from hackers.
This has happened on several occasions over recent years. Canva is a centralized web app allowing users to create free graphics. In 2019, the company was targeted by hackers who exposed data, including email addresses, credit cards and payment data, and passwords, of 137 million users.
It can also be the case that these kinds of attacks go undetected. In 2018, Marriott Hotels admitted that its reservation systems had been compromised. However, it emerged that the incident dated back to 2014 when hackers had breached the systems of the Starwood group, which was acquired by Marriott in 2016. By the time the incident was discovered, the attackers had exposed data of more than 500 million Marriott guests.
A Decentralized Solution for Data
If we’re to move to a state where decentralized dApps are a reality, then we need decentralized solutions for the parts of dApps that are currently centralized. One example of a project offering such a solution is Bluzelle. The Bluzelle network operates as a kind of Airbnb for blockchain data storage. Developers simply rent the storage space they require from Bluzelle on an as-needed basis paying with the BLZ token.
The storage space itself comes from the network’s validators, who provide their storage space and stake their BLZ tokens to receive a share of the rental fees charged by Bluzelle. Rewards are distributed proportionally to the size of the validator’s stake.
The network architecture means that any given piece of data is stored on a network of 13 or more nodes, so there’s no risk of downtime if any given node is offline. If changes are required, they must receive the approval of a supermajority, meaning that data is tamper-proof and censorship-resistant.
Along with the increased resilience resulting from decentralization, developers using Bluzelle can realize other benefits. Centralized data storage providers charge developers more when they want to expand across new regions, as the data needs to be replicated across a new set of servers. Bluzelle’s decentralized architecture makes replication much more efficient, meaning developers benefit from the lower costs - around 50% cost savings compared to AWS.
Furthermore, the flexible architecture also makes it easy for developers to scale up their storage as their dApp grows, simply paying for the extra reads and writes to the database.
Decentralized Object Storage
Decentralized object storage is made possible thanks to the emergence of Interplanetary File System, or IPFS. Internet communication protocols are now buckling under the weight of web traffic, and IPFS aims to solve the problem of file storage on centralized servers.
IPFS introduces a system where peers in a network provide paths to a file or object, which is stored and distributed through a BitTorrent based protocol. The end result is a version of the web where content isn’t dependent on centralized servers to deliver up content, resulting in better availability and censorship resistance.
Decentralization may be the Holy Grail for many, but the reality is that we’re still some distance from true decentralization. However, as innovation brings more decentralized solutions to the fore, developers can progress further down the path to fully decentralized dApps.