New to Blockchain? Read this blockchain guide to understand the basic concepts.
What is blockchain?
A blockchain is a distributed database. It consists of blocks that are filled up with data, which are then one by one connected to each other to form a chain. Once a block is formed and added to the chain, it can never be altered again due to high levels of encryption. As such, the data that is stored in the block can never be altered again and will be a part of the blockchain forever.
Let’s say ‘transaction A’ is executed on the blockchain and is included in a newly added block. To verify that this transaction has happened, one can examine the data in that block and find ‘transaction A’ in it. However, the blockchain has to be publicly available and secure to trust this data. To this end, a complete and up-to-date copy of the whole blockchain is kept on a large number of computers (nodes) worldwide. These same nodes provide for the security of the network by working together in a peer-to-peer network. Working together, they verify which transactions are valid and add verified blocks to the chain. For their work in maintaining the security of the blockchain, they are rewarded in cryptocurrency.
Advantages of blockchain:
- low transaction costs
Click here for a more in-depth overview of blockchain technologies.
What is cryptocurrency?
Cryptocurrencies are digital currencies that are created on and governed by distributed ledgers. They function as a medium of exchange or store of value, even though they have no intrinsic value and no physical form. The data of all accounts, balances and transactions is permanently stored in a decentralized blockchain supported by a P2P-network.
- Sensorship resistant
- Low transaction costs
- Higher transaction speed for international payments
- Immutable & no central point of failure
- No inflation or money printing by central banks
- Bitcoin – First and currently the biggest in market cap. Consensus by Proof of Work.
- Litecoin – Like Bitcoin, with different hashing algorithm and less governance issues
- Zcash & Monero – Cryptocurrencies with private transactions.
What is Bitcoin?
Bitcoin is the largest cryptocurrency by market capitalisation. It is a digital payment system invented by an unknown programmer under the name of Satoshi Nakamoto in 2009. The system is peer-to-peer and transactions take place between between users directly. Only 21 million Bitcoins will ever be created, with about 16.5 million currently in circulation.
Transactions in Bitcoin are verified by a network of nodes that are to reach consensus on the validity of new blocks before they are added to the blockchain. In Bitcoin, this happens through a consensus algorithm called Proof of Work (PoW), in which all the nodes use computational power to try to brute-force a cryptographic ‘puzzle’ in a process called ‘mining’. If a node solves the puzzle and mines the block, it is added to the blockchain. This only happens if consensus is reached by more than 50% of the network’s nodes on the validity of the newly mined block. Once this happens, all nodes start trying to mine the next block. This process ensures that only blocks with valid transactions can be added to the blockchain. The work done by the nodes is therefore vital for the security of the network, which is why the node that mines the block gets a reward which consists of 12.5 bitcoins and the transaction costs for all the transactions in the block.
Some believe Bitcoin is the currency of the future. Others think it’s the new gold. To fully understand why Bitcoin exists in the first place, its strengths and its weaknesses see Bitcoin: The New Gold Or Money Of The Future?
What is Ethereum?
Ethereum is an open-source distributed computing platform based on the blockchain with as Ether as it’s ‘currency’. Although this might sound similar to Bitcoin, there are huge differences between the two.
While Bitcoin aims to be a form of digital cash, Ethereum is made for a completely different purpose. Bitcoin only uses its network to run basic code that defines the parameters or rules to execute transactions in Bitcoin. The Ethereum network on the other hand aims to be a global supercomputer, existing out of a large network of nodes, that is capable of running highly customizable code.
Smart Contracts, DApps and DAO’s
Anyone can run programs on this supercomputer through what is commonly referred to as smart contracts. These smart contracts, or Executable Distributed Code Contracts, are highly customizable pieces of code written a turing-complete programming language called Solidity. The Ethereum network (or actually the Ethereum Virtual Machine) charges a very small transaction fee in exchange for the computational power used to execute this code. This is called ‘gas’ and it is paid in Ether, which is why Ether should not be seen as a cryptocurrency but rather as the the oil to run the network.
Moreover, Ethereum allows developers to build and deploy decentralized applications (DApps) on its blockchain. A DApp can have its own token with its own valuation, while using the Ethereum Blockchain for security. These ‘ERC-20’-tokens used by DApps are often referred to as Ethereum tokens.
Finally, Ethereum can also be used to build Decentralized Autonomous Organizations (DAO’s). DAO’s are bundles of smart contracts that together autonomously make up what can be seen as an organization of sorts, made for a specific purpose.
The security, transparency and immutability of the blockchain provides complete trust in the execution of the code that runs on the Ethereum Virtual Machine. Our economy consists for a large part of intermediaries that are necessary to minimize counter party risk. Sectors like insurance, banking, the law and notary sector and companies like Uber and Airbnb provide the trust needed to minimize counterparty risks in transactions. Some argue that – since trust can now be embedded in the blockchain forever – these sectors could eventually become redundant and replaced by decentralized systems as one could theoretically write a bundle of smart contracts on the Ethereum network for each.
What are DApps?
A decentralized application (DApp) is an application that uses distributed computing through blockchain-technology. In contrast, most software applications as we know them today are centralized as they are operated and stored on a server, either locally or hosted by cloud service providers.
To qualify as a DApp, an application should should meet the following set of criteria:
- The application must be completely open-source, operate autonomously, and with no entity controlling the token majority. Changes to the application must be adopted by consensus.
- Data must be cryptographically stored in a distributed blockchain to avoid central failure points.
- The application must use a cryptographic token for access to the application and as reward to network supporters.
- The application must generate tokens according to an algorithm that values contributions to the system.
One might say that bitcoin fulfills all these criteria and is therefore a decentralized application. While this is correct, bitcoin can be better classified as cryptocurrency. In fact, a cryptocurrency is a subset of decentralized applications that solely acts like a store of value and a medium of exchange.
A DAO is another subset of DApps, with the difference being one of governance and autonomy. A DApp’s source code and future road map is governed by a group of developers or an organisation, while a DAO is truly autonomous in the sense that it is no longer governed by its developers.
- Popcorn Time: An early DApp not based on blockchain to watch movies.
- Ethereum: DApp that can run smart contracts, other DApp’s and DAO’s
- Steem: social network
- Golem: worldwide supercomputer
- Gnosis: crowdsourced prediction market
What are smart contracts?
A smart contract is a self-executing piece of code, defining and executing agreements between multiple parties.
The term ‘smart contract’ was first proposed by Nick Szabo in 1994. He reasoned that code is perfectly able to define a series of relations, parameters and actions. To execute, the code has to rely on so-called ‘oracles’ to get trustworthy up-to-date information from the outside world in order to. An oracle is a trusted third-party that can provide information needed for the contract.
Certain legal agreements can be made in code instead of on paper, with the advantage being that a smart contract executes itself. Counter-party risk and moral hazards are essentially eliminated from the equation, as the contract enforces its own provisions.
By securing a smart contract code on the blockchain, it can be trusted to be both immutable and properly executed. As such, some argue that this means that self-enforcing contracts eliminate the need for a central authority or enforcement by a legal system. Although this might be true for simple transactions of goods or financial derivatives, it is an overly optimistic view with respect to the complexity of many contractual clauses and the guidance, interpretation and enforcement provided by contract law.
A very basic example of a smart contract would be:
- Parameter: when the date 2020 is reached,
- Action: then Y amount of Ethereum will be transferred by party A to party B.
What are DAO’s?
A Decentralized Autonomous Organisation (DAO) is an organisation that is completely governed and managed by the rules encoded in its underlying bundle of smart contracts. A DAO is truly a sui generis entity, as it has no employees and exists solely on the internet.
A DAO can be seen as the most complex form of smart contract. What the organisation does and what it can do is all previously determined in its code. In fact, the code is the organisation.
Possible examples are DAO’s coded to act as a p2p insurance company, a decentralized investment vehicle or a foundation to distribute funds to charities. A DAO’s underlying code (or maybe better said it’s bylaws) often provide for ways to interact between the DAO and people. This can be through transactions (for example I put money in the investment fund) or through governance mechanisms (I vote on which community proposals the DAO should invest in). For these functions, a new crypto-asset is often created alongside the DAO.
Some argue that the first true DAO was Bitcoin. Without going into discussion on what the exact difference is between DAO’s, DO’s, DAC’s and more, it is important to realize the term DAO most commonly refers to decentralized autonomous organisations that run on top of other blockchains.
The difference between DApps and DAO’s is that off governance and autonomy. A DApp’s source code and future road map is governed by a group of developers or an organisation, while a DAO is truly autonomous in the sense that it is no longer governed by its developers.
- The DAO: crowd-sourced investment fund.
- MakerDAO: a DAO that aims to minimize price volatility of its own token.
- DigixDAO: a DAO that administers a gold-backed token on the blockchain.
What are ICO’s?
Initional Coin Offerings are a new way of raising money online for cryptocurrencies, DApps or DAO’s. They are also known as token sales; a term that is less of a red rag to securities regulators.
In an initial coin offering, a cryptocurrency or blockchain token is sold by the developing company to the general public for the first time, often in exchange for Bitcoin and/or Ethereum. This lets project developers raise money for their project, while early adopters and opportunistic investors speculate on the future value of the project’s tokens.
The ICO could be seen as a form of crowdfunding, where the investor gets a token in return for his money instead of a reward or equity. The exact nature of the token can differ in usage. It can provide access to the service a DApp provides, a cryptocurrency and anything in between. The blockchain token is ‘sui generis’ in the sense that it is difficult to categorize it under an existing class of assets.
Currently, there is a large amount of market exuberance around ICO’s and blockchain projects. This leads to irrational amounts of money flowing into projects that do not even have a working product. It also leads to simple scams and ponzi schemes. Logically, securities regulators are currently examining possible paths to regulate ICO’s.
What are tokens?
A token is a new sort of digital property, the value of which is determined by supply and demand. A token grants a set of rights to its owner, in relation to the decentralized application it was created for. A token can for example be used for governance of the project, distribution of equity rights or access to the decentralized application it was created for. The widely varying characteristics of a token makes its legal nature a very interesting topic to examine.
Possible characteristics of tokens include (but are not limited to):
- a right to equity
- a right to profits by the issuing DApp or DAO
- voting rights
- discounts on the service of the DApp or ADO
To make a my own cryptographic token, I used to be required to make my own blockchain. Building a whole blockchain is a time-consuming process as I would have to design its protocol, consensus mechanism and set up nodes. If I don’t have enough nodes it could easily be subject to a sibyl or a 51% attack. As a hypothetical developer, I don’t want to have to worry about security or designing a whole blockchain. Projects like Ethereum solve this problem by allowing developers to issue tokens and deploy smart contracts on its blockchain.