A decentralised application (DApp, dApp,
Dapp, or dapp) is an
application that can operate autonomously, typically through the use of
smart contracts, that run on a
decentralized computing
Decentralized computing is the allocation of resources, both hardware and software, to each individual workstation, or office location. In contrast, centralized computing exists when the majority of functions are carried out, or obtained from a ...
,
blockchain or other distributed ledger system.
Like traditional applications, DApps provide some function or utility to its users. However, unlike traditional applications, DApps operate without human intervention and are not owned by any one entity, rather DApps distribute
tokens that represent ownership.
These tokens are distributed according to a programmed algorithm to the users of the system, diluting ownership and control of the DApp.
Without any one entity controlling the system, the application is therefore
decentralised.
Decentralised applications have been popularised by
distributed ledger technologies (DLT), such as the
Ethereum
Ethereum is a decentralized, open-source blockchain with smart contract functionality. Ether (Abbreviation: ETH; sign: Ξ) is the native cryptocurrency of the platform. Among cryptocurrencies, ether is second only to bitcoin in market capita ...
blockchain,
Blockmec, on which DApps are built, amongst other public blockchains.
The trustless and transparent nature of DApps have led to greater developments in the utilisation of these features within the
decentralized finance (DeFi) space.
DApps are divided into numerous categories: exchanges, games, finance, gambling, development, storage, high-risk, wallet, governance, property, identity, media, social, security, energy, insurance, health, etc.
Definition
There are a series of criteria that must be met in order for an application to be considered a DApp.
Traditional definitions of a decentralised application require a DApp to be
open-source. That is, the application operates autonomously without a centralised entity in control of the majority of the application’s associated
tokens.
[Johnston, D., Yilmaz, S. O., Kandah, J., Bentenitis, N., Hashemi, F., Gross, R., ... & Mason, S. (2014). The General Theory of Decentralized Applications, DApps.] DApps also have a public,
decentralised blockchain that is used by the application to keep a cryptographic record of data, including historical transactions.
Although traditional DApps are typically open-source, DApps that are fully closed-source and partially closed-source have emerged as the cryptocurrency industry evolves. As of 2019, only 15.7% of DApps are fully open-source while 25% of DApps are closed source. In other words, the proportion of DApps with publicly available code is less than the proportion of Dapps without publicly available code.
DApps that are open-source generally have higher transaction volumes than closed-source DApps.
Secondly, tokens, required for application use and user rewards must be generated by the application as per a programmed algorithm or criteria. A portion of the application’s tokens is typically distributed at the beginning of the application’s operation.
Lastly, the protocols of the application must be able to adapt in favor of majority consensus by the application’s users, such to make improvements to the application based on market feedback.
Bitcoin as a DApp
Bitcoin, the first
cryptocurrency, is an example of a DApp.
Bitcoin is open-source. All transactions on the Bitcoin blockchain are open, public, immutable, and operates without the control of any centralized entity. This means every Bitcoin transaction since the beginning can be seen by everyone.
Bitcoin generates its own Bitcoin tokens, through block rewards to miners for securing the network.
Block rewards are halved every 210,000 blocks mined, or roughly every four years, to limit the inflationary effects on Bitcoin; thus, capping the number of total Bitcoins at 21 million. Changes to Bitcoin must be made through Bitcoin’s proof-of-work mechanism which can only be done by majority consensus of Bitcoin’s users.
Classification
DApps can be classified based on whether they operate on their own block chain, or whether they operate on the block chain of another DApp. By this classification, DApps are divided into three types.
Type I DApps operate on their own block chain. Block chains such as Bitcoin and Ethereum can be classified as Type I DApps.
Type II DApps are protocols that operate on the block chain of a Type I DApp. These protocols themselves have tokens that are required for their function.
Type III DApps are protocols that operate using the protocols of a Type II DApp. Similar to Type II DApps, Type III DApps also have tokens that are required for their function.
Smart contracts
Smart contracts are used by developers to maintain data on the block chain and to execute operations.
Multiple smart contracts can be developed for a single DApp to handle more complex operations.
Over 75% of DApps are supported by a single smart contract, with the remainder using multiple smart contracts.
DApps incur gas, that is fees paid to the validators of the block chain, due to the cost of deploying and executing the DApp's smart contracts.
The amount of gas required of a DApp's functions is dependent on the complexity of its smart contracts.
A complex smart contract of a DApp that operates on the
Ethereum
Ethereum is a decentralized, open-source blockchain with smart contract functionality. Ether (Abbreviation: ETH; sign: Ξ) is the native cryptocurrency of the platform. Among cryptocurrencies, ether is second only to bitcoin in market capita ...
blockchain may fail to be deployed if it costs too much gas, leading to lower throughput and longer wait times for execution.
Operation
Consensus mechanisms are used by DApps to establish consensus on the network. The two most common mechanisms to establish consensus are
proof-of-work
Proof of work (PoW) is a form of cryptographic proof in which one party (the ''prover'') proves to others (the ''verifiers'') that a certain amount of a specific computational effort has been expended. Verifiers can subsequently confirm this expe ...
(POW) and
proof-of-stake
Proof-of-stake (PoS) protocols are a class of consensus mechanisms for blockchains that work by selecting validators in proportion to their quantity of holdings in the associated cryptocurrency. This is done to avoid the computational cost of p ...
(POS).
Proof-of-work utilises computational power to establish consensus through the process of
mining
Mining is the extraction of valuable minerals or other geological materials from the Earth, usually from an ore body, lode, vein, seam, reef, or placer deposit. The exploitation of these deposits for raw material is based on the economic ...
.
Bitcoin uses the proof-of-work mechanism.
Proof-of-stake is a consensus mechanism that supports DApps through validators that secure the network by having a stake and percent ownership over the application.
![Icarus Bitcoin Mining rig](https://upload.wikimedia.org/wikipedia/commons/f/f4/Icarus_Bitcoin_Mining_rig.jpg)
DApps distribute their tokens through three main mechanisms:
mining
Mining is the extraction of valuable minerals or other geological materials from the Earth, usually from an ore body, lode, vein, seam, reef, or placer deposit. The exploitation of these deposits for raw material is based on the economic ...
, fund-raising and development.
In mining, tokens are distributed as per a predetermined algorithm as rewards to miners that secure the network through transaction verification.
Tokens can also be distributed through fundraising, whereby tokens are distributed in exchange for funding in the initial development phase of the DApp, as in an
initial coin offering
An initial coin offering (ICO) or initial currency offering is a type of funding using cryptocurrencies. It is often a form of crowdfunding, although a private ICO which does not seek public investment is also possible. In an ICO, a quantity of cr ...
.
Lastly, the development mechanism distributes tokens that are set aside for the purpose of developing the DApp through a pre-determined schedule.
There are three main steps that always occur in the formation and development of any DApp: the publishing of the DApp’s
whitepaper
A white paper is a report or guide that informs readers concisely about a complex issue and presents the issuing body's philosophy on the matter. It is meant to help readers understand an issue, solve a problem, or make a decision. A white pape ...
, the distribution of initial tokens, and the distribution of ownership.
Firstly, the whitepaper is published, describing the DApp’s protocols, features and implementation.
Then, required software and scripts are made available to the miners and stakeholders that support the validation and fundraising of the network.
In exchange, they are rewarded with the initial tokens distributed by the system.
Lastly, as greater numbers of participants join the network, either through utilisation of the DApp or through contributions to the DApp’s development, token ownership dilutes, and the system becomes less centralised.
Characteristics
DApps have their backend code running on a decentralized
peer-to-peer network
Peer-to-peer (P2P) computing or networking is a distributed application architecture that partitions tasks or workloads between peers. Peers are equally privileged, equipotent participants in the network. They are said to form a peer-to-peer n ...
, as opposed to typical applications where the backend code is running on centralized servers. A DApp can have frontend code and user interfaces written in any language that can make calls to its backend.
DApps have been utilized in
decentralized finance
Decentralized finance (often stylized as DeFi) offers financial instruments without relying on intermediaries such as brokerages, exchanges, or banks by using smart contracts on a blockchain. DeFi platforms allow people to lend or borrow funds ...
(DeFi), in which dapps perform financial functions on
blockchains
A blockchain is a type of distributed ledger technology (DLT) that consists of growing lists of records, called ''blocks'', that are securely linked together using cryptography. Each block contains a cryptographic hash of the previous block, ...
.
Decentralized finance validating peer-to-peer transactions to disrupt centralized finance and lower the cost.
All the DApps have an identifying code that may only work on a specific platform. Not all DApps work on standard
web browser
A web browser is application software for accessing websites. When a user requests a web page from a particular website, the browser retrieves its files from a web server and then displays the page on the user's screen. Browsers are used o ...
s. Some of them only work on special websites with a customized code, adjusted to open certain DApps.
The performance of a DApp is tied to its latency, throughput, and sequential performance.
Bitcoin's system for transaction validation is designed so that the average time for a Bitcoin to be mined is 10 minutes.
Ethereum offers a reduced latency of one transaction every 15 seconds. For comparison,
Visa
Visa most commonly refers to:
*Visa Inc., a US multinational financial and payment cards company
** Visa Debit card issued by the above company
** Visa Electron, a debit card
** Visa Plus, an interbank network
*Travel visa, a document that allows ...
handles approximately 10,000 transactions per second.
More recent DApp projects, such as
Solana, have attempted to exceed that rate.
Internet connectivity is a core dependency of blockchain systems, which includes DApps.
High monetary costs also act as a barrier. Transactions of small monetary values can comprises a large proportion of the transferred amount.
Greater demand for the service also leads to increased fees due to increased network traffic.
This is an issue for
Ethereum
Ethereum is a decentralized, open-source blockchain with smart contract functionality. Ether (Abbreviation: ETH; sign: Ξ) is the native cryptocurrency of the platform. Among cryptocurrencies, ether is second only to bitcoin in market capita ...
, which is attributed to increased network traffic caused by DApps built on the
Ethereum
Ethereum is a decentralized, open-source blockchain with smart contract functionality. Ether (Abbreviation: ETH; sign: Ξ) is the native cryptocurrency of the platform. Among cryptocurrencies, ether is second only to bitcoin in market capita ...
blockchain, such as those used by
Non-fungible token
A non-fungible token (NFT) is a unique digital identifier that cannot be copied, substituted, or subdivided, that is recorded in a blockchain, and that is used to certify authenticity and ownership. The ownership of an NFT is recorded in the b ...
s (NFTs).
Transaction fees are affected by the complexity of a DApp's smart contracts, and by the particular blockchain.
Trends
Ethereum
Ethereum is a decentralized, open-source blockchain with smart contract functionality. Ether (Abbreviation: ETH; sign: Ξ) is the native cryptocurrency of the platform. Among cryptocurrencies, ether is second only to bitcoin in market capita ...
is the distributed ledger technology (DLT) that has the largest DApp market.
The first DApp on the Ethereum blockchain was published on April 22, 2016.
From May 2017, the number of DApps being developed have grown at a higher rate.
After February 2018, DApps have been published every day.
Less than one fifth of DApps capture almost all the DApp users on the Ethereum blockchain.
About 5% of DApps capture 80% of Ethereum transactions.
80% of DApps on Ethereum are used by less than 1000 users.
On Ethereum, DApps that are exchanges capture 61.5% of transaction volume, finance DApps capture 25.6%, gambling DApps capture 5%, high-risk DApps capture 4.1%, and games capture 2.5%.
DApps have not achieved wide adoption. Potential users may not have the skill or knowledge to be able to effectively analyse the differences between DApps and traditional applications, and also may not value those differences. This skill and information can be difficult to access for mainstream users. Additionally, the user experience for DApps is often poor, as they are often developed to prioritize functionality, maintenance and stability.
Many DApps struggle to attract users, particularly in their founding stages, and even those that attract widespread initial popularity struggle to retain it.
A notable example was the DApp
CryptoKitties
''CryptoKitties'' is a blockchain game on Ethereum developed by Canadian studio Dapper Labs, a company spun-off from Axiom Zen, that allows players to purchase, collect, breed and sell virtual cats. It is one of the earliest attempts to deploy bloc ...
, which heavily slowed down the Ethereum network at the height of its popularity. CryptoKitties and another similar gaming-based DApp Dice Games have failed to attract similar traction since.
Examples
*
Augur -
prediction market
Prediction markets (also known as betting markets, information markets, decision markets, idea futures or event derivatives) are open markets where specific outcomes can be predicted using financial incentives. Essentially, they are exchange-trad ...
platform
*
Cryptokitties
''CryptoKitties'' is a blockchain game on Ethereum developed by Canadian studio Dapper Labs, a company spun-off from Axiom Zen, that allows players to purchase, collect, breed and sell virtual cats. It is one of the earliest attempts to deploy bloc ...
- game built on Ethereum.
It slowed Ethereum down due to insufficient transaction processing and exposed the scaling limitations of public blockchains.
*
Stacks project The Stacks Project is an open source collaborative mathematics textbook writing project with the aim to cover "algebraic stacks and the algebraic geometry
Algebraic geometry is a branch of mathematics, classically studying zeros of multivari ...
- a platform for developing decentralized applications.
*
Freelance - platform on smart contract.
*
Steemit - blogging and social media
*
Uniswap
Uniswap is a decentralized cryptocurrency exchange that uses a set of smart contracts (liquidity pools) to execute trades on its exchange. It's an open source project and falls into the category of a DeFi product (Decentralized finance) because i ...
- a decentralized cryptocurrency exchange
References
{{Cryptocurrencies
Blockchains
Cryptocurrencies
Decentralization
Distributed computing