A Semi-Basic Breakdown of an Ethereum DApp
Over the last few years cryptocurrency has seen an influx of adopters that have found themselves in a new space with a new technology. Satoshi Nakomoto created Bitcoin with the goal of decentralizing money. For some people, crypto is viewed strictly as a speculative sport that is labeled with great risk, warnings and rewards. For others, its the first time in human history that we are able to control our own wealth in a decentralized manner.
A Few Examples of DApp Use Cases:
1. Legal contracts
2. Property deeds
5. Digital Collectibles
The term cryptocurrency describes digital currency or tokens issued on a distributed public ledger, known as the blockchain. The blockchain in short is a network of computers that verify funds and transactions independent from any government, entity or centralized bank system. Hence the term ‘Decentralization’ which means not controlled by any one person or authority.
Although the concept came to light attached to a cryptocurrency, Bitcoin to be specific, the blockchain technology can be applied as far as innovation permits. In 2013 The Theory of Decentralized Applications was published as a README.md document on Github that broke down exactly what a Dapp is and how to identify the different types.
There are three classification of DApps
Type 1 — A Decentralized Application that has its own blockchain (eg: Bitcoin)
Type 2 — A Decentralized Application or protocol, that allows you to use the blockchain of Type 1 to create tokens (eg: Omni Protocol, Waves)
Type 3 — A Decentralized Application that uses the protocol of Type 2 but allows developers to build an application that interacts with Type 1 and uses the tokens from Type 2 in order to function. (eg: MaidSafe, Ethereum)
For the purpose of this article — I will be discussing ‘Type 3’ DApps. At the moment the Ethereum blockchain provides the most seamless integrations of DApps and users. In 2014 Vitalik Buterin posted a blog entitled DAOs, DACs, DAs and More: An Incomplete Terminology Guide. The article touched on how Type 2 and Type 3 DApps fit within the Ethereum ecosystem.
Despite using the same technology as a cryptocurrency, a DApp (pronounced Dee-App) or Decentralized Application is NOT a cryptocurrency. For starters, a key differentiation between a cryptocurrency and a DApp is that a DApp does not have to be financial. It is up to the developers what to put inside this shell. I use the word shell to describe Ethereum’s DApps because you are able to store information within the application on the back end which users can interact with on the front end.
A basic DApp is made up of a few parts:
1. A Smart Contract — The smart contract is your ERC-721 or a similarly structured code. Smart contracts allow you to exchange value (money, property, etc) in a direct way excluding the need for a middle man.
2. A UI & Server — The User Interface or UI is the medium a DApp uses that will allow people to interact with your smart contract and its contents. You can even host your website on a decentralized server called an IPFS
After coming across the ERC-721 and the ERC-821 open source code on Github, I found myself again, becoming slightly obsessed with the blockchain space. For me DApps expanded some of the limits that I though most cryptocurrencies had. They allow you to utilize blockchain databases with real life situations.
Although ERC-721 Tokens are heavily based on the ERC-20 Token standard, a ERC-721 Token was created to be a non-fungible token backed asset (which means it cannot be divided into fractions like money or bitcoin can because it represents something 1 of 1.) The ERC-821 token standard came later and was named the ‘Distinguishable Assets Registry’ or DAR for short. Since NFTs are capable of storing instructions within their smart contracts that are executed once the requirements written by the developer are met, many have started experimenting with DApps.
StateOfTheDapps is a great site to find a ton of DApp based projects.
One of the most popular DApps that uses Ethereum blockchain and the ERC-721 code is a collectible styled game called “Crypto Kitties.” The basic idea of the Crypto Kitties is they are digital collectibles whose smart contracts can interact with one another in the form of “breeding”. According to the DApps “White Papurrr” the creators receive 3.75% of all sales made from the Kitties. The creators have managed to pull in over 300,000 sales with well over $25 million in revenue. One of the most expensive kitties created on this DApp sold for $110,707 USD in December 2017.
Crypto Kitties was a novelty approach to a new technology that can eliminate massive fees, intermediaries and the lack of trust that tons of people and companies face. When the term ‘Smart Contract’ was coined by Nick Szabomore than 20 years ago, he described the contracts as being “a set of promises agreed to in a meeting of the minds.” He also predicted it would change the way we view traditional contracts as technology advanced.
DApps are a way that we can digitize promises in a free market economy.