A decentralized application is an open-source software application that runs through several computer nodes, as opposed to running off of a centralized server or singular node. By definition, a decentralized application (or dApp, pronounced "DEE-app," for short) must be open-sourced, meaning its source code is available to everyone by its copyright license, so anyone can view, modify, or distribute it - making it totally free to the public with few, if any, restrictions. They must also be stored on a public distributed ledger (such as a blockchain), and they must use a token system (such as bitcoin or Ether) in order to reward contributions to the dApp, and incentivize mining to keep the distributed ledger running.
There is sometimes confusion surrounding the use of the words "distributed" and "decentralized", as in "distributed application" vs. "decentralized" application. Although they are often used interchangeably when describing this technology, Vitalik Buterin, creator of the first dApp platform Ethereum, has definitively stated that the correct usage is "decentralized."
- What is a Decentralized Application?. Coindesk.
- The General Theory of Decentralized Applications, Dapps. Decentralized Applications White Paper.
- open-source. Oxford Dictionaries.
- The Meaning of Decentralization. Medium.