A decentralized application (DApp, dApp, Dapp, or dapp) are applications that run on a distributed computing system. Most of the current DApps now are utilizing distributed ledger technology (DLT) such as the Ethereum Blockchain. DApps are often referred to as smart contracts. In essence, a DApp has the following characteristics:
Open Source – The source code is intentionally made available to the public, meaning that anyone is able to verify, use, copy, and modify the code.
Decentralized – Since DApps run on blockchain networks, they are not controlled by a single entity or authority.
Cryptographically secure – The application is protected by cryptography, meaning that all the data is recorded and maintained in a public blockchain.