Visualmente, as aplicações descentralizadas (dapps) são como as aplicações normais; oferecem funções semelhantes e têm o mesmo aspeto. No entanto, os dapps são aplicações ou programas que funcionam numa blockchain ou numa rede peer-to-peer(P2P): Em vez de serem executados num único computador, os dapps são mantidos por uma rede distribuída que utiliza contratos inteligentes.
As Dapps são definidas pelas seguintes características:
- Descentralizado – As Dapps não devem estar sob o controlo de uma pessoa ou de uma autoridade central.
- Código aberto – As Dapps devem poder funcionar sem terceiros e o código é público, podendo ser copiado ou auditado por qualquer pessoa.
- Determinístico – Um dapp deve executar as mesmas funções independentemente do ambiente em que o contrato inteligente é executado.
- Sem ponto central de falha – Todas as informações do dapp devem ser mantidas em uma rede blockchain pública para evitar um ponto central de ataque.
Exemplos de dapps baseados no Ethereum: Golem(GLM), Augur(REP), Aragon(ANT), Uniswap(UNI)