Introduction to Decentralized Application (dApp)
With the ever-growing number of digital applications, users are becoming more concerned about data security. This is why developers are looking to improve centralized software apps.
Blockchain technology offers security features and a “decentralized” manner of transactions. It enables two parties to transact without the need to go to an intermediary institution or a bank.
According to Investopedia, “decentralized applications (dApps) are digital applications or programs that exist and run on a blockchain or peer-to-peer (P2P) network of computers instead of a single computer.”
A Deep Dive into dApps
The burgeoning number of dApps in the market can be attributed to the invention of Bitcoin by someone under the pseudonym Satoshi Nakamoto. Arguably, Bitcoin is the first dApp with open-source code built on blockchain. Nobody owns or controls it, which is what decentralization is about.
However, not all decentralized applications run on blockchain. An example is the P2P file-sharing app BitTorrent which enables users to share music, movies, and files. The P2P network has already been in existence even before blockchain was developed.
The introduction of Blockchain protocols cultivates the development of other protocols, such as the Ethereum blockchain. These dApps use blockchain to process data through computer networks and execute transactions with smart contracts.
Smart contracts are independent programs that are automated, resulting in a self-executing agreement that makes transactions between two entities seamless, fast, and instant. A combination of dApps and smart contracts can create powerful software that can be used across different industries.
Advantages and Disadvantages of dApps
In website applications or web apps, you are required to submit personal information and documents to use the application. Meanwhile, the advantages of dApps revolve around the software’s ability to defend user privacy and resist censorship. Combined with a smart contract, no central authority will be involved in any transaction you deal with.
On the other hand, there are also disadvantages of dApps. The technology is still in its early stage, thus it’s prone to problems such as bugs and scalability issues. Also, you can’t modify the existing codes and data in a blockchain because the blockchain is immutable. Hence, once transactions are recorded, they cannot be altered.
Web Apps vs. dApps
Web apps are software that follows a centralized server-client model. This means that these servers are controlled by an entity or host better known as “the cloud.” As a user, you open a web browser or mobile app that enables a page or website to display on the front end and draw data held on the host’s web server ( back end). Currently, this is the widely used software application for email, web browsers, social media platforms, and e-commerce websites.
dApps, on the other hand, use the same technology as web apps in rendering the front end via the internet. However, on the back end, dApps communicate with their respective blockchain networks or nodes through a crypto wallet, which serves as the link to the blockchain ecosystem. These nodes are a network of computers that serve as storage of data or copies of encrypted blocks that validate and confirm the dApp data. This process eliminates the need for a centralized network to manage data, thus making dApp “decentralized”.
General Characteristics of dApps
The consensus surrounding dApp varies as the technology continues to evolve. Though that may be the case, the main criteria are as follows:
- dApp is an open-source code that is accessible by anyone who can build from it. That said, any changes to the protocol must be decided by the agreement of its network users.
- dApp’s data must be stored in decentralized blocks and executed on a blockchain system.
- dApp needs to generate cryptographic tokens or digital assets as proof of value.
- A dApp’s assets are distributed as rewards to the network.
Bitcoin, for example, is a dApp because it possesses the four criteria that were listed.
Like any new technology, there are pain points that arise with it. Decentralized applications share a number of pros and cons, especially for a technology that is still relatively new.
The steady increase of dApps users is proof that it will not be long until a wider audience sees the advantages of using decentralized applications.
As blockchain continues to develop at a rapid pace, it is safe to say that the use of blockchain technology in almost any industry is inevitable.
Author: Gabriel Silang