A DApp is an abbreviation of “Decentralized Application”. It is a kind of internet application which runs on a decentralized peer-to-peer network and its source code is open source. No single code in the network has complete control over the DApp.
A peer in a DApp can be any computer in the network. Since there is no central intelligence in the network which makes decisions, The network peers need to deal with each other in some sort of consensus. This consensus is to prevent invalid changes to the application data. They have to use protocols named Consensus Protocols to know whether the data published by a peer in the network is right or wrong. So, the consensus is the heart of a Decentralized Application.
Examples of Consensus Protocols
- Proof of work
- Proof of stake
- Proof of authority
- Proof of existence
Decentralized Application Data
The most famous DApp data structure is the blockchain, which is used by Bitcoin. The blockchain data structure is an ordered, back-linked list of blocks of transactions. Blocks are linked “back,” each referring to the previous block in the chain. A block contains a set of transactions, a hash of the previous block, timestamp (indicating when the block was created), block reward, block number, and so on. Every block contains a hash of the previous block, thus creating a chain of blocks linked with each other.
The following list contains popular DApps categorized by purpose