When several smart contracts are working in harmony, they can produce complex outcomes in a strict and exact way as programmed by the creator. When this happens, the group of smart contracts can be referred to as a decentralized application, or dApp.
To find out what the blockchain can enable us to do, it is important to note that the Ethereum blockchain gives us three types of dApps.
- Money based applications allow us to trade in money, transferring it from wallet to wallet, peer to peer, at a fraction of traditional costs.
- Applications that involve money allow for the transfer of other types of data, including records, licenses, certificates, etc. in exchange for that money.
- Other applications that do not necessarily involve the transfer of money but can give absolute provenance and security of other types of assets are also possible — for example, government systems like voting, opinion polls, and surveys.
The main strength of the decentralized applications is that they are on a blockchain, and therefore do not need a third party verification which is expensive, time-consuming and can be corrupted.
To succeed, dApps must also be open source, reward contributors, and be operated on a distributed network to assure continued use.
Several use cases show how smart contracts can be effective in a variety of use cases:
Built to optimize payments while bypassing the entire blockchain consensus, the network promises to provide a building block for micro payments, peer to peer transactions and instant Ethereum based token swaps.
Crowdfunding is common in the Ethereum world. This is largely because of the ICO (Initial Coin Offering) rush that has emerged as a by-product of blockchain technology. Weifund provides a smarter way of accessing public funding using a decentralized browser that will allow the donors to turn the donations into complex agreements and allow increased donor power into how crowdfunds are used.
Prediction markets like betting can be run in an open source application like Augur. Inside them, anyone can start a betting market by funding it and inviting people to try and win a prediction.
Several use cases in government can be developed to make vices like state capture and corruption either impossible or transparent.
Governments could load up the current state of each piece of land under their control to the blockchain and allow for operation of smart contracts for the transfer of ownership.
Once the contract is activated by any two parties, details of the transaction and the new owner could be immutably stored by the blockchain awaiting another valid contract to change the ownership.
This technology is being tested by the Swedish Government. Bequeathed real estate could be inalterably executed according to the distributed will of the original owner.
It can be possible to build an electoral dApp that has smart ballots that collect signatures from authorized users, prevents double voting, and counts aspirant ‘transactions’ as votes, providing an instantly verified vote tally that is secure (immutability guarantees data can't be modified) and verifiable (complete transaction history in the blockchain).
Decentralized apps would make real-life, time-consuming activities such as public surveys, political elections, and referendums simple and efficient events. All the creators of the smart voting contract would have to do is create and assign the authorization to vote, obtain a voting consensus (e.g. a presidential election) and timeline, give the blockchain addresses of the competing interests (to act as ballot boxes) and probably fuel the voters' addresses to facilitate an instantaneous voting process!