What is a Decentralized Application or Dapp?

0
11
Decentralized Application

A Decentralized Application or DApp is an open-source application based on the blockchain, which uses cryptographic tokens for transactions.

Unlike proprietary enterprise-owned applications managed on centralized servers, DApps use a resilient peer-to-peer network. DApps are expected to play a central role in the development of a decentralized blockchain-based Web3 Internet.

What are DApps?

The term DApp is the abbreviation of “Decentralised Application”. DApps are therefore standalone applications that operate in a decentralized manner. They are therefore not dependent on corporate servers, but use a distributed peer-to-peer network.

The storage of data, communications and transactions is based on a blockchain. In addition, DApps use transparent open source code, which is usually visible to users and can be used for free.

The specificity of DApps is divided into 4 essential criteria

Four basic criteria are involved in the definition of DApps. The following conditions must be met in order for a software to be considered as a decentralized application:

  • uses open source code
  • is based on a blockchain
  • uses cryptographic tokens
  • allows you to create tokens

Let’s take a closer look at the four main features of decentralized applications:

Open-source code

DApps are based on the open-source principle. The software uses open-source code formulated in a specific programming language, which can be viewed, freely used and modified by third parties.

The open-source code of a DApp should be self-contained and not dependent on companies or administrators who decide on changes to the application.

One example is the arbitrary changes to the layout and operating methods of the Instagram application, which regularly receive protests from users. DApps thus operate on a more democratic principle and adapt to community change proposals, market developments and developer consensus.

On the other hand, it has been observed that current decentralized applications do not in turn use fully open-source code, but only fully or partially proprietary code, in the wake of the success of cryptocurrencies. In 2019, only 15% of available DApps applications were found to be open source, while a quarter of all DApps used proprietary source code.

Blockchain

The storage of source code, transaction data and logs must take place in the blockchain when it comes to decentralized applications. The latter is based on a decentralized peer-to-peer network of different computers around the world.

Unlike centrally managed apps like WhatsApp or Telegram, these apps are less prone to hacks and failures because user data is not stored on dedicated corporate servers.

DApps offer a higher level of security because attacks on distributed blockchain networks are directed against each isolated machine and must resolve cryptographic encryption. This is practically not possible with a DApp, as its source code is stored in a blockchain and therefore on many different networked computers. The source code of the DApps is thus decentralized in the blockchain, distributed and executable in the network.

Cryptographic tokens

The cryptographic tokens used in DApps applications are permanently anchored in the decentralized and encrypted blockchain. Tokens are encrypted digital copies of data stored in the blockchain. Tokens can match cryptocurrencies like bitcoin in the Bitcoin blockchain. They can be used for commercial transactions or to reward the production and verification of new tokens by mining.

Tokens issued or exchanged are accompanied by transaction data in the form of a digital copy or counterfeit-protected transaction certificate when they are mined in the blockchain. This prevents scams and hacks on one hand and eliminates the need for centralized administration on the other. Verification is done in a decentralized peer-to-peer network of miners, not through centralized hierarchical management.

Token generation

In order to use a DApp and trade, buy, or sell tokens, DApps must generate cryptographic tokens. A proof-of-work algorithm is used for this purpose in the Bitcoin or Ethereum blockchain. Bitcoin uses for example a SHA-256 algorithm. By combining an algorithm, cryptomining and hashing, i.e. the creation and verification of tokens by solving a hash function, DApps meet the token generation criterion.

How are DApps different from common applications?

The major differences between a decentralized application and a centralized application are:

  • Unlike most applications, DApps are not managed as proprietary software by a central instance such as an enterprise or system administrator.
  • The source code of DApps is generally open source, publicly visible, freely usable and modifiable.
  • System and user data is not stored on company servers, but distributed and processed on peer-to-peer networks on a global scale.
  • DApps rely on a decentralized backend in a blockchain network, which is also managed by users.
  • With DApps, communication does not take place between end users via the provider’s servers, but via a decentralized and globally distributed network of devices and servers.
  • Transactions are encrypted in a blockchain and verified and documented using smart contracts.

Smart contracts and DApps

DApps are also based on Smart Contracts, which belong to the backend code of the blockchain. Smart contracts are codes that function as a contract and enable verified official token transactions between DApp users. As soon as users fulfill the conditions of the smart contract, the program code of a transaction is executed and stored in the blockchain.

Since smart contracts cannot be modified or manipulated, they enable transparent and tamper-proof transactions.

Among other things, the terms of the smart contract stipulate the fees that blockchain miners receive for executing and verifying transactions. Smart contracts are often written in the contract-oriented programming language Solidity.

Although multiple smart contracts can be used for DApps, more than 75% of current DApps applications use only one smart contract at a time.

What are the advantages and disadvantages of DApps?

BenefitsDisadvantages
✔ Operate independently of individual businesses or corporate servers via a distributed, decentralized blockchain network✘ The performance and scalability of a DApp depends on the performance, scalability and hashing power of the blockchain
✔ Are fault-proof, tamper-proof, transparent and difficult to hack✘ Large companies such as Meta or Microsoft offer better performance and usability with their proprietary applications
✔ Are protected from government interference, censorship and subsequent manipulation✘ Only works online through their decentralized peer-to-peer approach and require a connection to the blockchain
✔ Allow users to participate in the backend and influence development
✔ Financial transactions via DApps do not require intermediaries such as banks or other financial institutions
✔ Increased anonymity and privacy because user data is not sent to commercial companies with non-transparent data processing
✔ Various fields of application and active participation in user development

What is a Decentralized Application suitable for?

DApps are considered a pillar of Web3.

Web3 is a new generation of the Internet based on blockchains and distributed networks. However, DApps already play an important role in transactions within decentralized networks. The development and application of DApps is aided by the fact that they can be programmed by users with blockchain and programming skills.

Examples of possible applications include:

  • Finance: DApps encourage financial transactions and decentralized business operations that do not require the intermediary of financial institutions. For example, monetary protocols are used for financial transactions for this purpose. Applicability includes loans, bonds, investments, barter transactions and auctions.
  • Games and NFTs: Various game DApps allow you to trade and “play” with an NFT. You can earn money with NFTs through their creation, collection, exchange or by making bets.
  • Browser: Dapp browsers establish connections between decentralized applications, allow surfing in DApps on blockchain networks, and provide an integrated wallet for cryptographic payments.
  • Social networks: Decentralized social networks like Leeroy can be used as an alternative to centralized social media companies like Meta or Twitter, which are lax on data protection.

Practical example for DApps

The well-known DApps that are already surrounded by a large community today are:

  • Rarible: Rarible is a distributed application that acts as an NFT marketplace. NFTs can be created, sold and purchased through Rarible. Other ways to make a profit include the art trade and the collectibles trade.
  • TraceDonate: The DApp service uses crypto wallets to funnel donations to charities.
  • Minds: As a social media DApp, Minds uses open source code and reliable encryption of user data.
  • 1inch: Serves as a stock exchange DApp, which can be used to split stock exchange trades and to stimulate trading on multiple DEXs at optimal conditions.
  • Ipse: The Dapp browser is a decentralized search engine based on the interplanetary file system and the EOS blockchain. Ipse promises more anonymity and confidentiality with asymmetric encryption.
  • Pancakeswap: This decentralized exchange is one of the most important for cryptocurrencies and is used as a DApp. It serves as an exchange platform for BEP-20 tokens.