Everyone seems to have an opinion on which blockchain project is the best. On the Telegram channels I admin for I will hear statements such as:
Whichever way you lean, I think it's critical you understand the tradeoffs each of these projects have had to make and why each protocol may have a place in the new world. To understand what each blockchain is trying to do, we need to define what a blockchain is, what its goals are, and the underlying properties they maximize for. Let's first define what a blockchain is and why it may be needed."Ethereum is the best because the highest number of dapp projects launching ICOs"
"Neo is the best because it allows programmers to use their existing knowledge of programming language"
"Bitcoin is the best because it is the most secure"
Blockchain attempts to create scalable trustless computing. Bitcoin in its current state is merely a trustless database. It does not provide any higher level running computation capability to run other applications. Ethereum then came along and innovated atop Bitcoin's learnings to enable smart contracts. With smart contracts, the blockchain moved from becoming a trustless database to a trustless computing network. But how to scale this computer to become the world's computer is the question. This is a modern day question of computer science in which the crypto projects you hear about every day are trying to solve.A blockchain is an incorruptible distributed ledger of transactions.
In a true trustless system, we would not need a third party to identify a transaction as valid. Today's financial, legal, and judicial institutions require third parties to provide trust. The most common example mentioned in crypto conversations is the payments process. In traditional finance, a trusted third party payment processor validates a transaction between a retailer and purchaser. The third party verifies the buyer has sufficient funds to purchase an item. In a trustless system, the retailer would simply wait for purchase verification from the entire blockchain network and the buyer could walk out the door with their goods. No third party needed.
While this trustless nirvana sounds great on paper, we must be prepared that it may never fully happen. Crypto projects around the world are actively working on solutions for trustless computing. Before blockchain, cryptography was modern computing's greatest asset in approaching true trustlessness. But even here, modern cryptographic techniques do not fully guarantee security. The best they can do is afford insanely high probabilities of protection against malicious actors. Case in point, numerous high profile attacks successfully penetrated security systems against well funded companies such as Target, Sony, EquiFax. We need to develop stronger cryptography or other solution approaches such as blockchain.
"It is a profoundly erroneous truism, repeated by all copy-books and by eminent people when they are making speeches, that we should cultivate the habit of thinking what we are doing. The precise opposite is the case. Civilization advances by extending the number of important operations which we can perform without thinking about them." ~Alfred North Whitehead, philosopher and mathematician
1/ Blockchain is the slow-ass database you use when you don't trust anyone
— Miko Matsumura ㋡ (@mikojava) November 3, 2017
Decentralized, where no single entity controls the network. Big “D” means server-free (fully) decentralized; anyone can join the network as a validating node. Little “d” means server-based decentralized. If not D or d, the system is centralized.
Consistent, where the network aims to keep data in sync. Big “C” means all nodes see the same data at the same time. Being big-C consistent is a prerequisite to preventing double-spends, and therefore storing tokens of value. There are many models of consistency; we mean “consistent” in the same way that the CAP theorem does, except a little bit more loosely (for pragmatism). Little “c” means strong eventual consistency, such that when data gets merged there are no conflicts, but not consistent enough to prevent double spends. If not C or c, the system is not consistent.
Scale. Big “S” is planetary scale. This means sufficient performance characteristics to serve planet-scale or enterprise-scale needs, as typically seen in “big data” distributed databases. This includes throughput of 100,000 tx/s, 1M tx/s or more; capacity in the hundreds of TB, or PB, or more; and latency of <1 s (takes into account speed of light delays in a WAN setting). For reference, typical stock exchanges and ad networks run 100,000–500,000 tx/s. If not S, the system is not planetary scale.
In this post I'll examine Proof-of-Work in the context of these three dimensions. In other posts I'll examine other consensus algorithms such as Proof-of-Stake (PoS), Byzantine Fault Tolerance (BFT), and delegated Proof-of-Stake (dPoS). Keep in mind that not all Proof-of-Work schemas are the same. Bitcoin was the first, and Ethereum leveraged the PoW model but modified it to achieve different goals.
Ethereum, another blockchain project, also features a PoW consensus algorithm but it is much faster than Bitcoin. To achieve this speed, Ethereum enabled its GHOST protocol where block times were reduced (less than Bitcoin's 10 minutes) and uses a weighted chain (instead of longest chain) approach.
Based on the triangle above you can see that each of the nodes on Bitcoin and Ethereum practically see the same copy of the ledger at all times. Therefore Bitcoin and Ethereum lean heavily on the Consistency corner of the framework.
No third party is needed in Bitcoin. A company or government would not be able to rewrite the history of transactions. Therefore Bitcoin can be called censorship resistant. It is also a permissionless system. You do not need to sign up with a bank or a company to participate in the Bitcoin network. It's permissionless. I do not need to show my ID to a bank and I feel secure no bank is going to come back to me and say my balance is zero. I feel safe and free. So this all sounds great. Where's the catch?
Solving the Proof-of-Work puzzle becomes increasingly and exponentially difficult. Over time, solving the puzzle to create new blocks requires an increasing level of computational resources. Every day computers just won't cut it. This arms race for sophisticated hardware leads to centralized groups pooling their computing, or hashpower, together to continue validating blocks and securing the network. See the problem here? PoW schemes such as Bitcoin and Monero pursue maximum censorship resistance but at the risk of centralization.Prior to pooling, the Bitcoin and Monero networks were highly decentralized. Therefore let's say that Bitcoin, Ethereum and Monero lean into the Decentralized corner of the triangle. If you want to be nit picky about it you can use a lower cased "d" since it is decentralized but only to those who run a pool or a data center.
In order to create fraudulent transactions (forgery, counterfeiting, double spending - whatever you want to call it), a malicious actor would have to rewrite the history of not just one block but many other blocks. As mentioned above, the probability of this happening with modern hardware and computing is infinitesimal. Bitcoin is easily the most secure blockchain project to date.
Bitcoin is the most secure financial network on the planet. But its centralized peripheral companies are among the most insecure. pic.twitter.com/0rxLtXscNJ
— Nick Szabo⚡️ (@NickSzabo4) 18 юни 2017 г.
Over the next few weeks I will start tackling popular, mainstream blockchains using this framework. Hope you enjoyed the read and continue learning about this space with me.
If you like my content: