DApps are decentralized applications which run on top of a peer-to-peer network of computers instead of on one central computer. These types of apps have emerged since the creation of P2P networks.
Decentralized applications are pieces of code written in smart contracts which communicate with the blockchain, and it is programmed to control various actions on the said network by processing the external information they receive.
The rules of the smart contract are executed by an autonomous agent which operates on an owner’s behalf but without the owner actually making any actions.
On the surface, decentralized applications have similar interfaces just like any other web or mobile-based app.
Not all decentralized applications have to function using a blockchain network. Some dapps just run on P2P networks that are not blockchains, such as Tor, BitTorrent, Popcorn Time, BitMessage. But in this article, we will be focusing solely on blockchain-based dapps.
There are several specific characteristics which define any dapp:
- Open Source: The first condition a dapp must meet is to have its core source code publicly available. dApps must have a consensus which is autonomous and unanimous, meaning all changes have to be first agreed on by the majority of network users. Also, the code must be available for anyone to analyze.
- Decentralized: In order to avoid the issues that come with centralization, decentralized applications must have their operations recorded on a decentralized blockchain or any cryptographic technology that is autonomous by nature.
- Incentivization: The validators of the decentralized blockchain which have the task of verifying the records, must be rewarded/incentivized with crypto tokens based on their efforts.
- Consensus Protocol: Decentralized app must have a consensus protocol which gives the crypto token proof of value and also manages how these tokens are generated. This algorithm has to be agreed upon by the application community must. For instance, Bitcoin uses Proof of Work (PoW) and EOS uses Proof of Stake (PoS) to generate new coins on the network.
Types of protocols
The two most used protocols are Proof of Work and Proof of Stake:
Proof-of-work (POW) enables network participants to be rewarded based on how much work they have put into the network. The process of mining and adding them to the chain requires a lot of energy, and thus the blockchain remains secure. The mining rewards are tokens, and they are distributed based on the number of processed transactions.
Proof-of-stake (POS) involves holding and staking tokens and based on the amount you have, you are able to vote on a new block.
Different Types of DApps
Not all DApps are the same, as they can have different kinds of functions and use the blockchain differently.
- Type I decentralized applications are the apps that run using their own blockchain. Bitcoin, Litecoin, and other altcoins that have forked from the BTC code are examples of a type I decentralized application.
- Type II decentralized applications are apps that run on the blockchain of a type I decentralized application. Type II DApps must issue their own tokens in order to reward the network participants. As examples, the Omni Protocol is a type II decentralized application, as well as most smart contract-based dapps that are run on top of the Ethereum blockchain.
- Type III decentralized applications use a type II protocol to issue the tokens that they require for their functioning.
Difference Between DApps and Smart Contracts
Many confuse dapps and smart contracts due to the fact that they have many similarities when it comes to function, but they are actually two separate things.
A smart contract is a piece of software which automatically executes the terms agreed upon by two or more parties, and distributes the digital assets only when all the requirements are met.
A decentralized application executes similar operations like the smart contract but has two key differences. A decentralized application does not have a limit on the number of participants it can have. The second criterion is that a decentralized application does not necessarily have to be related to have a financial aspect.
Advantages of DApps
Security is a big issue in technology nowadays. Due to their decentralized nature and use of blockchain technology, DApps are more secure.
This is because a hacker does not have centralized failure point which it can attack. This type of vulnerability has been exploited before, leading to massive data breaches and huge monetary losses. DDoS, SQL injection, XML attacks, phishing, are all types of attacks that exploit the single point of failure of an app. With dapps, this is not an issue anymore.
Because the data stored by the blockchain requires all its nodes to validate any new transactions, a single entity cannot take advantage of the system and alter the dapp for its own use.
The hacker would also have to change all the blocks to hide any alteration of data stored in a blockchain so that their activity is not detected.
Unlike, traditional applications, dapps do not need a central authority to enable transactions and make changes necessary for the platform’s functioning. DApps are completely autonomous once they have been fully launched. This allows the dapps to operate without constraints set by external factors such as a corporation or a government.
A decentralized application cannot be subjected to any kind of centralized control, meaning they cannot be censored or controlled by any entity
Examples of Dapps
Augur is a type II dapp based on the Ethereum blockchain that allows participants to make market predictions. The predictions can be converted into “shares” which can subsequently be bought or sold.
Sia is a type I dapp, which uses blockchain to offer a decentralized storage platform that leverages the “underutilized hard drive capacity” of the world. The project uses its own private blockchain.
It is basically a cloud and blockchain-based marketplace for data storage. The platform uses the empty hard drives and offers them as cheap cloud storage which can be used by anyone.
The SAFE Network is a type III dapp, which serves as a decentralized storage and communications data center. SAFE, an acronym for Secure Access For Everyone, makes use of peer-to-peer technology to enable network users to share their computing power. The dapp uses the Omni Protocol (a type II dapp which is based on the Bitcoin blockchain) to issue “Safecoins” that allows network users to buy file storage.
DApps are one of the most useful applications of blockchain technology. As more and more apps enter the market, it is only natural that more types with new use cases will come along.
Featured image: Easy Crypto