“Blockchain” technology is one of the biggest buzzwords in the technology industry right now. Others include artificial intelligence, virtual reality and CRISPR. However, blockchain has stood out because of how much money amateur investors have been able to make. Companies without products have gained valuations in the hundreds of millions and even billions of dollars.
This irrational exuberance based on vaporware has rightfully caused many onlookers in the traditional finance industry to doubt the legitimacy of the industry. This is particularly true since the largest asset in the space (bitcoin) has been pitched as a currency that is going to replace the US dollar. In spite of these exorbitant claims, technology focused investment firms like Peter Thiel’s “Founders Fund” and Andreessen Horowitz “AZ16” (300+M crypto fund) have begun steadily investing in companies in the space. Taking the long view, these investment firms imagine a radically different world in 10+ years as the technology matures and pervade every aspect of B2B transactions and consumer interactions with the internet.
Extremely bullish technology investors and very skeptical finance investors. Why the disconnect? To begin to wrestle with this problem, we must explore what blockchain technology is.
Throughout history, transformational technologies have reduced, transformed or eliminated the role middlemen. Before the printing press, monks copied letters and books, and it took months and years for some materials to be published. This meant not many books were available to the public, therefore knowledge was limited to those who could afford for a book to be hand copied. It also meant everyone was going to the Catholic Church for answers. During the Renaissance, Johannes Gutenburg invented the printing press, and it changed how people interacted with information forever (including a progression from Christianity → deism → atheism/spiritual but not religious/metaphorical religious context in some cases). There are many examples of this (the internet for communication). However, the pattern has remained consistent. The elimination of middlemen due to optimization of critical services has consistently changed how humans interact with each other.
Blockchain technology follows in the footstep of this human tradition. On the most fundamental level, blockchain technology allows users to efficiently confirm that an event happened (information transfer (digital or physical)) in a decentralized fashion. No singular middle men. As we will see through the examination of different companies in the nascent industry, this capacity enables the kind of creativity that will allow things like a social networking site that pays users to use the platform without any investment by the creators of the network (Steemit). Optimizations of these systems with artificial intelligence are even more promising.
For early stage investors, blockchain technology has changed the exit model. Thanks to an innovation called smart contracts by ethereum, different projects have their own liquid currencies available to the public at all stages of development. In this context, the 7 year exit model is obsolete in many cases. Companies meeting their development plans who execute on marketing can lead to manyfold returns for investors in months or 2-3 years.
Key Concepts and Terms
Encryption and Decryption
In cryptography, encryption is encoding a message that only allows authorized parties to access it. Authorized parties accessing the message decrypt it. There are many ways to encrypt information. For our purpose, let’s consider a simple example. Imagine a message sent over a network along with a random set of 16 numbers in a specific sequence. In order to access that message, parties have to guess what that number is. A sequence made of 16 numbers has up to 9,999 quadrillion possible configurations. The possibility of guessing the number is trivial. Because the odds of guessing the proper sequence of numbers is so miniscule, only parties with access to some information or capabilities that others do not will have access to this information. In some cases, the parameters for decrypting the message can be altered such that only parties whose guesses are close enough to the original sequence can access the message. Fundamentally, encryption is about accessing information by solving a puzzle required to access a message. In the context of the blockchain, decrypting a transaction that happens on the network can be seen as network participants.
Decentralized broadcasting/Public ledger
One of the major innovations of the blockchain technology is how information is recorded on a network. First, all transactions occurring on the network are publicly recorded on a public ledger available for inspection to the public. While individual computers on the network decrypt the information generated by transactions, that information is only recorded on the network if all (or the vast majority) of the computers in the network generate the same record. So the transactions are broadcasted to the network in a decentralized fashion and recorded on a public ledger available to all. Through this process, computers on the network are not capable of generating false transactions.
Because it would be inefficient for a network to record each transaction on a public ledger, the network periodically records groups of transactions at once. Each group of transactions (once decrypted) is recorded on the ledger in groups that are called blocks. Moreover, every time a new block is recorded to a public ledger, the computers responsible for recording information on the blockchain also include every transaction that has previously been recorded on the public ledger. Hence, the public ledger can be thought of as a chain of blocks. Each block contains a group of transactions previously recorded on the network.
Blockchain networks require incentives for participants to provide the necessary computing power required to decrypt transactions (also known as verifying transactions). Blockchains provide this incentive by paying verifiers of the network in coins. The verifiers are called miners. While these coins hold no inherent value, they gain value as the network is more widely adopted. In most cases, this is because people who actually use the network have to buy coins to participate. Additionally, speculators betting on the network’s growth will buy coins under the assumption that they will increase in value due to increased adoption of the network.
Verification mechanisms (or consensus mechanisms)
Verification of transactions on a blockchain is done by miners. There are many ways to verify transactions happening on a blockchain. For our purposes, we will only be discussing 4 as they are the major mechanisms deployed by blockchains thus far.
Proof of Work (POW)
Proof of work is the first verification mechanism used by blockchains. It is the mechanism of verification of the bitcoin network. Nodes in the network have to solve a computationally costly puzzle to verify transactions on the network. Miners do this by running the block’s unique header metadata (including timestamp and software version) through a hash function, which returns a fixed-length, scrambled string of numbers and letters that looks random. If the miner finds a hash that matches the current target (the puzzle generated by the system), the miner will be awarded coin specific to a given network. When miner B finds the hash, miner A will stop work on the current block and repeat the process for the next block. It’s difficult for miners to cheat at this game. There’s no way to fake this work and come away with the correct puzzle answer. That’s why the puzzle-solving method is called ‘proof-of-work’. After finding the right hash, the transaction is then broadcast the block across the network for each node to validate and add to their own copy of the ledger
This mechanism (among others) disincentivizes malicious miners from generating false transactions. It also increases the value of verifying transactions on the bitcoin network. The high cost of verifying transactions is a barrier that ensures the supply of verifiers of the network remains relatively scarce thereby making it profitable for miners to participate in the network. This is one of many steps that makes it impossible for nodes in the network to generate false transactions.
Proof of work is a robust verification method. However, it has many limitations. The first serious issue is that there are a limited number of transactions that can be confirmed by the network per block. The second is that verification is very resource intensive. For example, bitcoin miners use 54 terawatt hours per year to verify transactions on the network. This is enough electricity to power 5 million homes in the US. Finally, the fact that verification is so resource intensive benefits miners with more computation hardware. This means that smaller players in the network have to pool resources with other parties to have any realistic chance of verifying any transaction. This is called joining a mining pool. Having to join a mining pool means that network verification is centralized, thereby violating one of the fundamental value propositions of blockchains. Proof of work is also used by ethereum.
Proof of Stake (POS)
Proof of stake is the second generation verification mechanism in the blockchain ecosystem. Instead of having miners compete to verify transactions, validators (not miners since they don’t have to solve puzzles) are randomly chosen to validate transactions on the network. To be a validator, a party has to hold a certain amount of tokens. The amount of tokens held by a validator increases the chances that they will be chosen to validate the network. This requirement serves as a mechanism to deter validators from approving fraudulent transactions because the value of the tokens held by the validators are higher than the value of the transaction they are verifying. Thus, if they generate false transactions, the network can seize their tokens. As long as the network is capable of seizing tokens from malicious validators, there is a solid economic disincentive for validators to be malicious actors.
Once validators decide to stop validating transactions, their tokens are held for a while to ascertain that did not validate any fraudulent transactions. After this process, their tokens are released to their wallet. Proof of stake rewards the rich. However, it is an improvement to proof of work as it i not resource intensive and can validate transactions faster than proof of work. Major users of proof of stake include PIVX, NEO Dash and Stratis.
Delegated Proof of Stake (DPoS)
In the Proof of Stake consensus mechanism, a user can put their coins at stake, thereby earning the right to validate transactions, forge blocks, and earn associated rewards. DPoS, a variation of the Proof of Stake consensus, seeks to reach consensus more efficiently. In DPoS systems, users ‘vote’ to select ‘witnesses’ (other users they trust to validate transactions), and the top tier of witnesses (who have collected the most votes) earn the right to validate transactions. Users can even delegate their voting power to other users, whom they trust to vote for witnesses on their behalf. While votes are weighted according to the size of each voter’s stake, a user need not have a large stake to enter the top tier of witnesses. Rather, votes from users with large stakes can result in users with relatively small stakes being elevated to the top tier of witnesses.
The number of witnesses in the top tier is capped at a certain number. These witnesses are responsible for validating transactions and creating blocks, and are in return awarded the associated fees. For a witness in the top tier, threat of loss of income and reputation is the primary incentive against malicious behavior. Users in DPoS systems also vote for a group of ‘delegates’ (trusted parties responsible for maintaining the network). The delegates oversee the governance and performance of the entire blockchain protocol, but do not play a role in transaction validation and block production. For example, the delegates can propose changing the size of a block, or the amount a witness should be paid in return for validating a block. Once the delegates propose such changes, the blockchain’s users vote on whether to adopt them.
DPOS is much faster than the traditional Proof of Work and Proof of Stake systems. It also provides several advantages. 1) Their incentives and structures enhance the security and integrity of the blockchain, and each user has an incentive to perform their role honestly. 2) No specialized equipment is required to become a user, witness, or delegate. 3) A normal computer is enough. 4) They are energy efficient compared to Proof of Work. EOS, the first major smart contract platform to deploy delegated proof of stake promises to be able to verify 100,000 transactions per second. This will allow for wide adoption as a the blockchain for delegated proof of stake.
Proof of Authority (POA)
Proof of authority is similar to proof of stake with one main distinction. Everyone cannot act as a validator in the network. Becoming a validator is difficult and requires a potential validator to go through a very stringent process. There are three requirements to become a validator. 1) The validator’s Identity must be true: meaning there needs to be a standard and robust process of verifying that validators are indeed who they claim they are. 2) Eligibility for staking identity should be difficult to obtain: so that the right to be a validator becomes earned, valued, and unpleasant to lose. 3) The procedure of establishing the authority needs to be the same for all validators: to ensure that the network understands the process and can trust its integrity. The net result of the proof of authority system is that malicious actors are deterred from becoming validators.
There are other verification mechanisms (existing or being developed). This section will be continually updated.
Decentralized applications (dapps) are applications executed on the blockchain. Being executed on the blockchain means the functions of these applications do not require trust between the users and the developers as the code is self-executing and immutable. This allows developers to build a whole new set of functionalities into their applications. These functions are called smart contracts.
A smart contract is self executing code on a blockchain (typically as a part of a dapp). The main advantage to this is that parties can agree to different parameters of an interaction and need not trust a third party that the contract will be executed as agreed to. This is a big deal as it cuts down the costs of middle men and allows for creativity for the kinds of contracts that can be created. Arbitration parameters can also be designed into the smart contract. Examples include creating tokens for a specific application that appreciates in value with adoption of the application, escrow, automated verification of identity and many other services that would normally require trust in third parties.
Smart Contract Platforms
Smart Contract platforms are blockchains that allow developers to build their smart contract on. Smart contracts need to be built on blockchains so that the execution of the contract is immutable and verifiable by all interested parties. The first smart contract platform was Ethereum. Once online, ethereum allowed developers all around the world to build useful smart contracts and raise funds via its Initial coin offering (ICO) mechanism (to be discussed later). Since then, other smart contract platforms have been built improving on the limitations of Ethereum.
Smart contract platforms allow dapp developers to create currencies associated with a given dapp. These currencies are typically the cost of carrying out whatever value add function the dapp is designed for. For example, if a dapp is meant to connect a consultant with someone who needs their service, the consultant will be paid in the currency of a given dapp. The currency can be trusted because they are secured by a blockchain and therefore cannot be arbitrarily inflated or disappear. As more parties buy tokens to pay consultants on this hypothetical dapp, the value of the token increases. This incentivizes investors to buy early tokens and hold anticipating an increase in network adoption. These currencies are called tokens.
Because bitcoin is the first and main currency in cryptocurrency ecosystem, ever other blockchain backed coin is called an alternative coin (or altcoin).
Blockchains can get congested when there are too many transactions that need to be confirmed. This problem is compounded as the number of dapps are built on a blockchain increase. Moreover, vulnerabilities in a dapp built on a blockchain can lead to vulnerabilities of an entire blockchain. This can allow hackers to steal coins of a blockchain as well as tokens of smart contract built on that blockchain. Side chains are blockchains connected to the main blockchain (mother chain). Transactions on smart contracts run on side chains are periodically recorded on the blockchain (typically not with the same frequency to assure the blockchain is clogged up). This makes sure that if there are any security issues, it does not affect the rest of the chain. The network will then be able to to address the issues with a side chain without affecting the overall platform.
The protocol for validation of a blockchain network is not static. Members of the network (miners or validators) in most blockchain systems can vote to update the validation mechanisms of a network. This can include updates like how many transactions can be stored on a block etc. Forks primarily apply to proof of work blockchain systems.
There are two kinds of forks. A hard fork and a soft fork. A soft fork is an upgrade of the network validation protocol that is compatible with the previous validation protocol (ex: increasing the amount of transactions that can be fit on a block). As long as a majority of miners in the network agree to a soft fork, the process happens. In the case of a soft fork, members of the network who do not agree to implement the new software can still be a part of confirming transactions verified by other parties. However, they cannot be a part of validating individual transactions to record on blocks. This creates an incentive for the parties who did not vote in favor of the soft fork to upgrade their software anyway.
A hard fork is an update of the validation protocol that is not compatible with the previous validation protocol. Hard forks can happen if members of the network all agreed to an update in the future (planned hard fork) or can be based on fundamental disagreements among the network validators. When a hard fork happens, members who do not upgrade their software simply cannot participate in the network. Moreover, the new software leads to the creation of a new currency. The new currency has as many coins as the older one, and the coins are distributed based on how many of the old coins any party holds. So if you hold one bitcoin and there is a bitcoin hard fork, you get one of whatever coin that results from the hard fork. However, the new network can do things like increase the overall coin supply. A good example is litecoin (a hard fork of bitcoin). Litecoin updated their software such that there will be 84 million litecoin instead of 21 million coins as with bitcoin. The assumption is that the new coin will gain value as people buy it based on whatever value is added by the new features of the new coin.