Understanding Blockchain and Cryptocurrencies
June 04 2018 - Understanding Blockchain Technology: Consensus Protocols Part 1 and 2 By Dr. Van Tharp Trading Education Institute
I personally think that the blockchain, and some cryptocurrencies, represent the opportunity of a lifetime. Consequently, I plan to do monthly updates on the cryptocurrency world. These will include some education so you can begin to take advantage of this opportunity as well as an overview of what is happening in the cryptocurrency world for the last month. We are also developing special programs for those in the Super Trader program to take advantage of this unique opportunity and we are encouraging each Super Trader to have some stake in the world of cryptocurrencies. Why? Because the opportunities are staggering and cryptocurrencies are not highly correlated with other types of investments. These updates will come out the 3rd Wednesday of each month and will cover developments over the prior month. And the format, of course, will evolve over time. The last update went out on the 16th.
This week I’m following up with fairly extensive information on my continuing series on Blockchain Technology.
During the 2007-2009 Global Financial Crisis, we saw the dangers of lots of power in big banks and in central governments. Big banks had invented products that were insane and sold them to unwary parties. The result was a market collapse and a major change of the world’s wealth. Big government and big banks had to work together to salvage everything and those institutions that didn’t play the game well were allowed to fail — think Lehman Brothers and Bear Sterns. The crash really pointed out the dangers of everything being centralized. Furthermore, the Internet once held great promise of decentralization but it had just furthered the centralization. A few companies started to dominate the Internet and they became the dominant force for concentrated power online. Here I’m referring to names like Apple, Amazon, Google — all of which now have artificial intelligence devices (i.e., Siri, Alexa, and Hey Google, respectively).
As the dangers of centralized money and power became more obvious, someone named Satoshi Nakamoto (who has never been identified and was possibly a number of people) released a whitepaper about a concept for decentralized money, namely Bitcoin. The idea was open sourced and soon the first Bitcoin (BTC) appeared. Rather than concentrate money in one power such as a central bank, the idea behind Bitcoin was to make it everywhere by anonymous individuals and useable by everyone.
In the first of these articles, we covered blockchain technology as a decentralized ledger and its advantages. We also made the following statements:
We talked about Internet protocols (which are very few) versus blockchain protocols which are many.
We talked about the blockchain as a decentralized (distributed) ledger.
We also talked about how blockchain technology makes it expensive to cheat and profitable to cooperate and how it might eliminate the major concerns of the Internet today — hacking and stolen secrets. A website can be hacked. A cryptocurrency exchange can be hacked, but a cryptoasset’s blockchain is very, very difficult to hack.
We described what blocks of transactions were and how they are chained together — hence the blockchain.
In this two part article, I’m going to explain the glue that holds cryptoassets together — the block consensus protocols or the verification process. There are several verification processes and these make the differences between certain classes of tokens or cryptoassets.
Consensus Mechanisms: How Decisions Are Made in the Blockchain
We have explored how the blockchain is a decentralized peer-to-peer system with no central authority figure. That means there is no corruption from a single source but it also creates problems in how decisions are made and how anything gets accomplished. In the types of organizations we are accustomed to, decisions are made by the leader (CEO, President, etc.) or by a group of leaders (i.e., the board of directors). But without a leader, organizations must make decisions by some sort of consensus mechanism. Consensus is a dynamic way of making an agreement that could benefit the entire group as a whole. The method whereby this is achieved is called the consensus mechanism.
According to Wikipedia, some of the objectives of consensus include:
Agreement seeking: it should bring about as much agreement as possible.
Collaborative: All the participants should work together to achieve the results that put the best interest of the group first.
Cooperative: Participants should work as a team, not putting their own interests first.
Egalitarian: Each vote should have an equal weight.
Inclusive: As many people as possible should be involved in the process. People normally don’t vote because they feel their vote doesn’t have enough weight to matter and this must be avoided.
Participatory: The consensus mechanism should be such that everyone should actively participate in the overall process.
Before Bitcoin, many decentralized currency systems failed because they faced what’s called The Byzantine Generals Problem and they couldn’t solve it.
Imagine a group of generals who must attack a city. The generals are scattered so a central authority is impossible. If they all attack together, victory is assured. But if some attack and others don’t, then defeat is probably likely. So the solution might be to send a messenger to the other generals to co-ordinate the attack. But all sorts of things could go wrong: 1) who sends the messenger and decides and what if each group each sends a messenger with different instructions; 2) what if the messenger comes and says attack on Wednesday and the next general says “No, we aren’t ready until Thursday.” 3) What if the messenger gets killed or captured? What’s missing is a consensus mechanism.
Imagine how this would apply to a blockchain. Say you want to send 30 NEO from your wallet to another address. How do you know someone isn’t going to mess with the transaction and send 3 to your requested address and 27 to another address? Again, what’s needed is a consensus mechanism.
Proof of Work Consensus: Satoshi Nakamoto, Bitcoin’s inventor, solved the problem by inventing the proof of work consensus protocol. It works in the following manner:
Bitcoin miners must solve a complex crytpographic puzzle in order to “mine” a block of transactions and add them to Bitcoin’s blockchain. These problems are difficult, taxing on the system, and require an immense amount of energy and computational usage.
When a miner solves the problem, the miner presents it to the network for verification. It requires about 30 verifications to pass and the verification process is very simple.
So Proof of Work was one method of consensus — but with some serious drawbacks. First, POW eats up a lot of power, a huge amount of electricity. Second, people with faster and more powerful computers have a better chance of mining blocks than others. Right now about five Bitcoin mining pools account for 65% of the hashrate (i.e., the speed at which a compute is completed in the Bitcoin code). Ethereum currently relies on a proof of work process but is planning a move to proof of stake in 2018. Let’s look at that method next.
Proof of Work Consensus is the first method invented. However now there are eight other consensuses emerging, each with their own strengths and weaknesses.
Consensus Protocols are methods and measures which make cryptoassests trustworthy. The crypto asset world holds a lot of uncertainty for people. At the forefront is security. How can we trust this non centralized market in which there are no clear regulators?
Consensus Protocols are the essential glue that could offer security for the entire crypto market
Proof of Stake Consensus (POS): Proof of stake replaces miners with validators. Note the term validator. That's because no coin creation (mining) exists in proof of stake. Instead, all the coins exist from day one, and validators (also called stakeholders, because they hold a stake in the system) are paid strictly in transaction fees.
Validators have to lock up some of their coins as a stake in the process and after that, they can start validating blocks. When they discover a block they think can be added to the chain, they will validate it by placing a bet on it. If a block gets appended to the blockchain, then the validators get rewarded in proportion to their bet or stake. Here the validators get rewarded by transaction fees.
Because POS is a lower energy-intensive consensus process than POW, it is suited for platforms with static coin supply. Most crowdsale-funded platforms leverage this approach to distribute tokens based on an investment. In this type of consensus algorithm, instead of investing in expensive computer equipment in a race to mine blocks, validators invest in the coins of the system.
The more a validator invests, the better off they are in the process. In proof of stake, your chance of being picked to create the next block depends on the fraction of coins in the system you own (or set aside for staking). A validator with 300 coins will be three times as likely to be chosen as someone with 100 coins.
Once a validator creates a block, that block still needs to be committed to the blockchain. Different proof-of-stake systems vary in how they handle this process. In some systems, every system node has to sign off on a block until a majority vote is reached. In other POS systems, a random group of signers is chosen to commit the block to the blockchain.
Here’s where we run into an issue called the “nothing at stake” problem. Namely, what is to discourage a validator from creating two blocks and claiming two sets of transaction fees? And what is to discourage a signer from signing both of those blocks? A participant who has nothing to lose has no reason not to behave badly.
One answer to the “nothing at stake” problem is to require a validator to lock their currency in a type of virtual vault. If the validator tries to double sign or fork the system, those coins are slashed.
Peercoin was the first coin to implement proof of stake, followed by blackcoin and NXT. As mentioned, Ethereum is planning to move to a proof of stake method this year.
Delegated Proof of Stake (DPOS): Delegated Proof of Stake is an alternative method of using POS. POS is more like winning a lottery, while DPOS gives all coin holders more influence and ownership in the network. Coin holders in a DPOS System can use their balance to elect a list of nodes to be possibly allowed to add new blocks of transactions to the blockchain. Coin holders can also vote on changing the network parameters.
EOS is an example of a token that is utilizing this mechanism to scale up to a large number of exchanges every second. Initially, any individual who holds tokens on a blockchain coordinated within the EOS programming network can choose the block makers through a constant approval voting network. Anybody can partake in the block generator election and they will be provided a chance to create blocks proportionate to the aggregate votes they get with respect to every single other generator.
You have to be aware of what is going on, however, and you have to know how the process works. For example, I own EOS and have no idea how to cast my votes.
Proof of Activity (POA): Most cryptoassets are deflationary, meaning there is a fixed number of coins. Fiat currencies experience inflation when too many units of the currency are created and flood the system. For example, there are currently 17 million bitcoins (of which about 5 million have been lost forever in cyberspace) and the maximum number that will ever be produced is 21 million. For BTC this means that at some point, the miners will stop earning new coins and will only receive transaction fees. Some have speculated this eventual lack of reward might cause security issues because people will act in their own self-interest and could spoil the system. As a result, POA was created as an alternative incentive structure for Bitcoin.
Proof of activity is a hybrid approach that combines both proof of work and proof of stake. In proof of activity, mining kicks off in a traditional proof-of-work fashion with miners racing to solve a cryptographic puzzle. Depending on the type of implementation, the blocks mined do not contain any transactions (they are more like templates), so the winning block will only contain a header and the miner's reward address. At this point, the system switches to proof of stake. Based on information in the header, a random group of validators is chosen to sign the new block. The more coins in the system a validator owns, the more likely he or she is to be chosen. The template becomes a full-fledged block as soon as all of the validators sign it.
If some of the selected validators are not available to complete the block, then the next winning block is selected, a new group of validators is chosen, and so on until a block receives the necessary amount of signatures. Fees are split between the miner and the validators who signed off on the block.
Criticisms of proof of activity are the same as for both proof of work (too much energy is required to mine blocks) and proof of stake (there is little to deter a validator from double signing). To the best of my knowledge, Decred is the only coin right now using a variation of proof of activity.
Proof of Authority (POA): There’s an assumption behind Proof of Stake which Proof of Authority addresses. Proof of stake assumes the following: those who hold a stake in a network are incentivized to act in its interests. All else equal, the more stake one has, the higher his or her interest should be in preserving the system. The flaw in this assumption, however, emerges because different stakeholders may value the same-sized stake differently. For example, Bill may have been an early adopter of blockchain technology and own a massive portfolio of digital assets. Barb, however, is a newby who has just started exploring the token economy. Let’s say they both hold 1,000 EXZ tokens. Would Bill really value his 1000 tokens (say 1% of his digital assets) the same that Barb values her 1,000 tokens (100% of her digital assets)? Probably not. Barb’s interest in the network is probably much stronger than Bill’s.
Proof of Authority (PoA) is one solution to the problem. Here, a validator’s identity performs the role of the stake. Here, there is certainty that a validator is exactly who that person represents himself to be. Staking identity means voluntarily disclosing who you are in exchange for the right to validate the blocks. This means that the benefits you derive from it are public and so are the nefarious actions you might undertake. Identity placed at stake can serve as a great equalizer, understood and valued the same by all actors. Individuals whose identity (and reputation by extension) is at stake for the securing of a network are incentivized to preserve the network.
For the concept to work in real, live settings, a few conditions need to be satisfied:
First, identities must be true: Standards and robust processes of verifying that validators are indeed who they claim they are.
Second, eligibility for staking identity should be difficult to obtain: The right to be a validator becomes earned, valued, and unpleasant to lose.
And third, the procedure of establishing the authority needs to be the same for all validators: Ensure that the network understands the process and can trust its integrity.
Proof of Burn (PoB): Proof of Burn (PoB) requires someone to burn value (use up coin value) in order to partake in a lottery to choose the status of the next block on a chain. The node must transfer some digital currency to an address where it is not retrievable. In return, the node gets a reward (or the opportunity to get a reward) in the local assets of that blockchain.
Depending on how proof of burn is implemented, miners may burn the native currency or the currency of an alternative chain, like bitcoin. The more coins you burn, the better chance you have of being selected to mine the next block. Over time, your stake in the system decays, so you will need to burn more coins to increase your odds of being selected. Like BTC, this method wastes resources and mining power simply goes to those who are willing to burn more resources. Right now, only slimcoin (a semi-active coin) uses this consensus mechanism.
Proof of Capacity (PoC): As we've seen, most consensus protocols employ some type of pay-to-play scheme. In proof of capacity you 'pay' with hard drive space. The more hard drive space you have, the better your chance of mining the next block and earning the block reward.
Prior to mining in a proof-of-capacity system, the algorithm generates large data sets known as 'plots' which are stored on vacant hard drive space. The more terabytes of hard drive space you have, the more plots you will have, and thus the better your chances will be of finding the next block in the chain. But with proof of capacity, we still have the nothing at stake problem to deter bad actors.
Burstcoin is the only cryptocurrency to use a form of proof of capacity.
Proof of Elapsed Time (PoET): Proof of Elapsed Time (PoET) endeavors to direct the issue of PoS which arbitrary determination of members proposing blocks is expected to guarantee that each member has a reasonable opportunity to offer a block and, in this manner, produce prevalent advantages. In this, every member asks for a hold-up time from its local reliable enclave. The member with the briefest hold-up time is next to offer a block after it holds-up for the allotted waiting time. Each privately trusted enclave signs the potential and the result so other members can confirm that none has deceived the waiting time.
Further, instead of having participants solve a cryptographic puzzle, the algorithm uses a trusted execution environment (TEE) — such as Intel’s SGX — to ensure blocks get produced in a random lottery fashion, but without the required work. Intel, which developed PoET, says that this algorithm scales to thousands of nodes and will run efficiently on any Intel processor that supports SGX.
The primary problem with this protocol is it requires you to put your trust in Intel. Isn't putting trust in large, third parties what we were trying to get away from with public blockchains?
Proof of Importance (PoI): Proof of Importance assumes that a consensus mechanism should not depend upon just the number of coins (as in PoS) but on productive action. NEM uses this mechanism to only reward productive system action. The more productive action seen in the blockchain the more the reward.
In the NEM system, the chances of staking a block are a function of various factors, including: notoriety (controlled by a different purpose-designed framework), balance, and the number of transactions made to and from that position. This gives a more all-encompassing image of a 'helpful' system member.
These inclusion factors are chosen utilizing a specific algorithm, not just by probability and size of their shares. Likewise, the position’s significance for the system and the significance that the system clearly has for that position stream into the algorithm. There is even a recognition of fake use and manipulative models in order to eliminate false attempts at significance.
Coins in the NEM wallet are not considered as wealth until they reach a point that they are considered to be vested. 10% of the un-vested coins for every 24 hours will be charged to this vested wallet. Accordingly, members get an incentive to make just vital transactions and can just increment the importance score gradually by demonstrating their association with the system.
There is a lot to learn in this fast changing and potentially very rewarding new financial market. I understand both the potential profits and the tremendous pitfalls. You can win big, yes, but the potential for losses is very high.