Decentralized Application (dApp)
Decentralized applications (dApps) run on a P2P network composed of multiple computer network nodes, rather than a single computer network center. Since the emergence of the P2P network, decentralized applications (dApps) have actually existed. This software application Programs are designed to exist on a network that is not controlled by a single centralized node.
- First of all, decentralized applications do not necessarily have to run on the blockchain network (a special P2P network), such as: BitTorrent, Popcorn Time, BitMessage, Tor These traditional dApps all run on the P2P network. on the blockchain, DApps Development Services not the blockchain network;
- Compared to simple smart contracts such as the Bitcoin network (sending coins from address A to address B), dApps have unlimited participants in all aspects of the current market;
dApps vs smart contracts
The easiest way to understand dApps are “blockchain enabled” applications, where smart contracts link them to the blockchain, and the easiest way to understand this is to first understand how traditional websites work.
- traditional web application
It is rendered using HTML, CSS and javascript. It needs to access the database through API to obtain data. When you log in to Facebook, the page will call the API to capture your personal information and display it on the page;
- dApps
dApps are similar to traditional website applications. The front-end uses completely similar technology to display pages. The only difference is that instead of accessing the database through the API interface, smart contracts that can connect to the blockchain are used;
Compared with traditional centralized applications (whose back-end code runs on a centralized server), dApps run their back-end code on a decentralized P2P network, DApps development company forming a decentralized application from the front end to the back end. And smart contracts are just one part of a dApp:
- Front-end (that is, what the front-end sees and displays)
- Backend (i.e. the application logic behind it)
On the other hand, a smart contract is usually only a small part of the whole dApp, which means that if you want to create a decentralized application on top of a smart contract system, you need to combine several smart contracts and need a third-party system to provide front end.
Requirements for dApps
For an application to be considered a dApp in the context of a blockchain, it must meet the following conditions:
- Applications must be fully open source
It must be open source and autonomous, and no one subject fully controls the application’s token. The application must be upgraded according to proposed improvements and user feedback, and all changes and upgrades must reach the consensus of most users before proceeding.
- Encrypted storage of application data and operational records
Application data and operational records must be encrypted and stored on a public decentralized blockchain to avoid any centralization risk.
- Encrypted storage of application data and operational records
It is necessary to use general-purpose tokens based on the underlying public chain such as bitcoin or to issue new tokens by themselves, so that all contributors in the ecosystem (including miners or application maintenance nodes) can receive corresponding token rewards
- Generation of application tokens
The contribution of the node to the application must be based on the standard encryption algorithm as the proof of contribution value, and the corresponding token reward must be obtained (Bitcoin uses POW proof of work)
dApp development process
- Generation of application tokens
A white paper is required to publish and describe the dApp and its characteristics, and outline the future development ideas of the dApp and detail the path model of the work.
- Token pre-sale
Designing an Initial Token Pre-sale
- ICO (Initial Coin Offering)
ICO Public Crowdfunding
- start up
Invested funds are used to build and deploy dApps
Case: Ethereum (Ethereum)
Ethereum is committed to building a platform for decentralized applications, providing developers with a Turing-complete blockchain one-stop development platform, allowing anyone to write smart contracts and decentralized applications through it, create their own Rules, functional mechanisms and ecology. Generally speaking, there are 3 types of applications on Ethereum:
- Financial applications: Provide more powerful management methods for the use of their users’ funds, which can be carried out in smart contracts.
- Semi-financial applications: involving funds, but there are also a lot of non-financial factors involved.
- Administrative management (Governance) applications: such as online elections, and other administrative management that does not involve finance
Here are some examples of decentralized applications (dApps):
- Token systems: There are already many applications in blockchain token systems, including currencies representing assets such as US dollars or gold, company stocks, personal tokens that tokenize smart assets, secure and unforgeable coupons, DApps development and even The traditional value has nothing to do with just the point system used as an incentive.
- Financial Derivatives and Stable Value Currencies: For example, a highly desirable application would be a smart contract that hedges against the volatility of the U.S. dollar by using data feeds from, for example, Nasdaq.
- Identity and reputation system: For example, a smart contract indicating the name of land ownership can be added to the Ethereum ETH network and cannot be modified or deleted. Anyone can make a similar registration record for some value, so that it cannot be tampered with forever. record on file.
- Decentralized file storage: a dropbox-like dApp in which a smart contract splits the required data into blocks, encrypts each block for privacy, builds a Merkle tree in it, and then converts the entire Data is distributed to various computer nodes in the P2P network, however private data is not stored in the blockchain.
- Decentralized Autonomous Organizations (DAOs): A virtual entity (possibly with a 67% majority) with specific members or shareholders has the right to use this virtual entity’s funds and modify its code, and the members will collectively decide how the organization allocates its resources .
dApp licensing
Under an open source license, dApps can be open to innovation without copyright and patent restrictions. In addition, by being fully open source, decentralized applications can operate under a legal open source software model, such as: Bitcoin uses MIT The Academy’s Open Source Software License.
0