Development of decentralized applications and some examples

The way by which decentralized applications are developed is different from that of traditional applications. Let us first try to understand how traditional applications or web services work. I’ll be using the terms normal applications and traditional applications interchangeably.

Any normal application has two parts — a client and a server. The web server is centralized and is hosted by a company that hosts all the web services. So whenever we want to use any services provided by the company then a request is sent from the client-side to their servers and in response, we get the desired service. The central server has two things — API and Data. API is mostly all the services and endpoints served by the hosting service. The data is the most important part for us as users. All of the user-generated data is stored on a central server hosted by the company and although they may advertise user’s privacy protocols that they will never use any of the user’s data but they actually do that. Facebook says that it does not use our data but we still get personalized ads by default, if you show some interest in clothing then you will definitely get ads related to clothing. In this manner, they are using user-generated content for their own purpose. However, the main problem is not the privacy terms of these companies but a central point of functionality. If a hacker wants to penetrate through their system, he only needs to focus on a single point that is the main server. Big companies have extremely high-security standards but there are innumerable web applications out there with less secure servers. In that case, all of your data and API endpoints can be easily compromised which is a great shortcoming of traditional applications.

The invention of decentralized applications dealt with almost all the problems that come with centralized architecture. Now let’s understand how a decentralized application actually works. In a decentralized application, the user first invokes a smart contract. The smart contract contains all the rules abiding for the service that is being provided and also contains state information that has all the data for the smart contract. In a centralized architecture hosting and other peripherals are taken care of by the hosting company. We do not actually pay for any computation because the company does that already. But what happens is that the companies generally take some part of your data and convert it into profit but that never really happens in a decentralized network. The question that arises here now is — how are computations being paid for in a decentralized network? It is actually paid in ‘gas’ which is the unit that is used in a decentralized network. Other than that you also need to pay a small amount of fee called transaction fee. It is collected by the miners who are validating these blocks. The miner who validates a block also gets paid by the network in ‘ethers’. That is how currencies are generated in the network. The money that is required for a transaction is being fetched from user’s wallet like the Ethereum wallet. After all, invocations have been done, state changes have been saved and the miner has validated the block then this information is sent to the network and the network then updates the new balance in the wallet.

Technology stack of Decentralized Apps

Advantages of DAAPS

[2] Trust → All the documents are encrypted using modern technologies that are distributed on the network run by a shared ledger. So there is no way anyone can break into and get access to your information.

[3] Backup → On a blockchain your documents are duplicated many times over and they can be seen by everyone but in an encrypted fashion. In case if you lose some data there are always multiple copies available and only you can see the actual information because of the encryption.

[4] Accuracy → Smart contracts are not only faster and cheaper but they also avoid the errors that arise from tedious manual work. There is no chance of errors because everything is done by the code and unless there is a bug, everything is error-free.

Some Decentralized Applications

BLOCKVERIFY

One of the most significant problems that the business community faces globally is counterfeit products which lead to millions of dollars of losses every year. However, blockchain could offer a solution to these issues. Blockverify is a project that seeks to harness the blockchain to fight the counterfeit industry. With the help of blockchain, Blockverify can monitor the entire supply chain with complete ease. They use a highly scalable blockchain that is transparent and tamper-proof. Every product will be given a unique identification number that is then stored on the blockchain. Therefore, Blockverify can help in identifying counterfeits, nonduplicatables, and company verifiable. So anyone can verify whether a product is genuine or not. Blockverify can verify the following:

  • Counterfeit goods
  • Diverted Products
  • Stolen Merchandise
  • Fraudulent Transactions

RIPPLE

RippleNet is a network of institutional payment providers such as banks and money service businesses. Imagine there is Ms. Jane Doe who lives in Boston has a box of chocolates that she doesn't really need but she is interested in attending a Musical concert but does not have money to buy the tickets. Secondly, there is Mr. O’ Malley who lives in New York and has a rare stamp which he would like to trade for a box of chocolates. Lastly, suppose there is Mr. Sloan who lives in Los Angeles and he likes to collect rare stamps. he also has tickets for a musical concert in Boston which Ms. Jane is very much looking for. In the current system, these people would never find each other but in the Ripple world, they can say that they have a box of chocolates and they want tickets for a musical concert. The system will then look for the shortest and cheapest combination to make it happen. Moreover, the platform allows us to make payments in any currency including bitcoin and has minimal internal transaction commission. Ripple makes transactions very accessible, it is very fast, it is reliable because it runs on the blockchain and it has insanely low costs (0.000001 $).

STORJ

Storj is an open-source decentralized file storage solution. It uses encryption, file shredding, and a blockchain-based hash table to store files on a peer to peer network. The goal is to make cloud storage faster, cheaper, and private. The traditional cloud storage solutions like dropbox and google drive have limitations. The files are backed up redundantly so bandwidth from the datacentre or unexpected outrages can restrict access to the files. Theses companies have all controls over your files including the ability to access them. Storj can solve all these problems. It distributes the files so redundancy is well established and only the user to which the files belong has access to those files because of the encryption. It has end to end encryption which takes data privacy to the next level. Any file on Storj is broken into a huge number of pieces and it is distributed on the network which also makes it faster to access those files because all the pieces can be retrieved in parallel just like a torrent.

Augur

Augur is a decentralized prediction market that can forecast the outcome of an event based on the wisdom of the crowd principle. So, basically its a prediction market protocol owned and operated by the people that use it. With this method, the information collected from the crowd is average into the most realistic possibility and therefore the most probable outcome. The correct predictions are rewarded by the network whereas incorrect predictions are reported and penalized. This incentivizes the truthful reporting of events. The main idea of Augur can be understood as making more accurate predictions by large groups of people rather than a small team of experts. Decentralization ensures that Augur can not be censored by governments that consider prediction markets as gambling and it ensures the sustainability of the application. It cancels out individual frauds.

Ethlance

Ethlance allows people to create employ or employee profiles and list and apply for open positions. It also allows to provide feedback for employers and employees and send and receive invoices. It works on Ethereum so it has 0% service charge, decentralized, has no restriction, and has a free membership. You can get the best contacts as a freelancer on Ethlance without any fee. Ethlane is first of its kind which connects free -lancers and developers with the employers. Its database runs completely on the Ethereum public blockchain.