Decentralization has been one of the most explored technology in recent times; everyone in every sector wants to eliminate the middleman from governments and big tech. Cryptocurrency already ensures decentralization in the financial sector, enabling the borderless transfer of money via a decentralized peer-to-peer network.
More than just the financial sector, blockchain technology seeks to cut out the middleman in other sectors, even in our everyday applications. Hence, apps involved in our daily use, like Twitter for social media, Uber for Transport, Netflix for streaming, etc., can all have decentralized options powered by a peer-to-peer network that can effectively function without giving a single company the power over the application. For example, in a decentralized cab-hailing service, the peer-to-peer network connects riders directly with passengers, reducing the costs incurred by the riders and maximizing their income; similarly, prices customers pay cannot be inflated by any central authority, an algorithm will determine prices based on set criteria such as traffic condition, demand, etc., which will be generally accepted by all network participants.
Decentralized Applications (dApps) seek to revolutionize our experiences with everyday applications via blockchain technology. But first, let us familiarize ourselves with the definitions.
What Is A DApp (Decentralized Application)?
Decentralized Applications (dApps) run on a peer-to-peer network, which cannot be controlled by a single organization, company, or entity. They are similar to our regular applications and, in fact, have similar functions; however, accessing a dApp isn’t done similarly to a regular web application.
Traditional web applications are programmed at the backend via the Hypertext Transfer Protocol (HTTP), which every company’s database is connected to. So, when you open your app, say “Netflix,” your internet-enabled device communicates with Netflix’s database via the HTTP and provides you with movies on the database, which you can watch. Each company’s databases hold huge amounts of information, including your login details (such as your email address and password, as well as your saved preferences; hence, you can open the app at any time and continue from where you have stopped.
Decentralized applications work differently; instead of using HTTP for communication with centralized databases, they communicate with the blockchain, which is a decentralized database having several nodes (up to hundreds or even thousands) which can hold data over a distributed network. So, when you open your dApp, you need to connect via your crypto wallet, which will connect you with the blockchain’s decentralized database via a smart contract signed with your private key; all your internet footprints on the dApp are registered on the blockchain, so as long as your wallet is connected to the blockchain, you can continue surfing from where you have stopped.
Only the backend differentiates dApps and traditional applications; hence, even though both apps access their databases in different manners, what the end users can see (User Interface) should be similar; also, the User Experience (UX) should remain the same as far as satisfaction is concerned. However, due to the lack of widespread adoption, dApp developers aren’t sufficient yet.
Features of Decentralized Applications (DApps)
- DApps are open-source; hence, improvements can be suggested by any network participant; as long as the majority accept the proposed upgrade, it will be implemented. Hence, no single entity controls them.
- DApp data are on the blockchain; hence, they can be publicly verified, and everyone accessing a particular dataset can be identified.
- Users can protect access to their data via private keys. Before anyone can gain access to user data, the user has to grant permission by signing a smart contract via their private keys; hence, dApps prevent the selling of user data by centralized organizations.
- All fees paid in the dApps are used to reward network participants that vote on proposals to improve the dApp and maintain the network; no single entity gains the profits.
Advantages and Disadvantages of DApps
- Privacy: One of the biggest advantages of dApps is the privacy it allows; instead of signing up with email addresses and passwords, users can access services by simply connecting their wallets to the blockchain via private keys.
- Security: In traditional applications, email addresses and passwords are saved on the company’s database; hence, if breached, sensitive information will be exposed, which could lead to a loss of crucial information, money, or other assets. Conversely, with dApps, no personal information is stored on databases; furthermore, users’ internet footprints on the blockchain cannot be accessed without their permission via smart contracts, and even if a few nodes are breached, only a small fraction of your information can be accessed at a single time, unlike a centralized database where all information becomes instantly exposed upon a hack.
- Open-Source: Since dApps are open-source, it gives room for faster improvements and development as several people can simultaneously suggest proposals to improve the dApp.
- No Downtimes: Since several nodes are connected to the distributed network, a single point of failure cannot affect the network or shut it down; only a fraction of people will be affected by it. Conversely, we have seen several instances of traditional applications like Twitter and WhatsApp suffering from downtimes because of their centralized databases.
- Ideal for Free Speech: Many times, we have seen social media applications like Twitter, Facebook, Instagram, etc., permanently ban users because of their stances on certain societal issues; these actions are met with different reactions by network participants, but ultimately, one entity determines whether an account remains or gets banned. However, with dApps built on a peer-to-peer network, each network participant gets a chance to vote on a decision on whether a speech is indeed harmful to the community or not; hence, free speech is enabled, and users cannot be banned from an app unless there is a consensus that determines that they are harmful to the community.
- Cybersecurity Issues: The open-source nature of smart contracts and dApps, in general, exposes them to security risks as attackers examine the codes, looking for a point of vulnerability, and despite attempts to keep them safe via independent code audits, several dApps have experienced hacks worth a few billion dollars ($2.1 billion in H1 2022).
- Adoption: Generally, traditional apps are in use and more common than dApps. As dApps haven’t fully broken into real-world usage, it slows down progress. For example, dApps security depends on several network participants holding a few hundred or thousand nodes; however, in the absence of this, security will be shaky. Also, fewer participants will cause slower progress as there will be fewer proposals to examine. Hence, adoption is greatly needed for progress.
- UI/UX: Due to poor adoption, many developers still focus on traditional apps (which are currently very profitable). Hence, a shortage of manpower in the dApp industry causes a lot of them to have poor UI/UX, making it unappealing for users.
Where Are We Now and What Are The future of DApps
DApps are in active use, especially in relation to financial services, following the faster adoption of cryptocurrency. Hence, we have decentralized exchanges like Pancakeswap and Sushiswap in place of Binance and Coinbase; also, other dApps exist for borrowing and lending, staking, yield farming, etc. Also, some blockchain-based games are built on dApps, such as Axie Infinity, The Sandbox, etc.
According to dappradar, there are 1.67 million daily active dApp users in Q2 2022 (down from 2.4 million in Q1 due to lesser blockchain activity); this high-level activity is mainly associated with crypto-based usages like NFT trading and P2E games. To indeed raise adoption in the nearer future, awareness must be raised for users to know that dApps are meant for general use and not just for crypto-related purposes; more importantly, developers should be incentivized to pivot towards dApp building to facilitate better apps in terms of UI/UX, scalability, and security.