During Taraxa's first world tour in May-June of 2019, we had the pleasure of meeting many hardcore engineers, die-hard supporters, and large contingents of curious onlookers who wanted to learn more about what this newfangled thing called blockchain actually is. Anticipating this need, we developed a simple presentation to help elucidate the concept.
What was unanticipated, however, was the overwhelmingly positive feedback we received. So, here we share our presentation in long-form, and hope that some may find it helpful.
Disclaimer: please note that this is meant to describe high-level concepts of blockchain technology in general, as any specific blockchain technology would exhibit differing characteristics.
What is a "blockchain"?
Blockchain technology generally provides a mechanism for entities to commit statements, agree on reality, and replicate records. But that's still rather abstruse, so let's explore these three mechanisms one by one.
1. Commit statements
Entities (called nodes) in a network need to exchange information. These bits of information usually involve statements such as "I am Bob" or "Alice gives Bob 1 coin". To validate these statements, nodes rely on cryptography to prove if the author is who it claims to be.
For example, a node receives the following: "Alice gives Bob 1 coin". This statement is valid only if Alice is the author, since only Alice is permitted to spend Alice's money. In blockchain networks, each statement comes with a cryptographic signature that is nearly impossible (expensive) to fake and easy (cheap) to validate, allowing nodes to validate the authors' identities for every statement.
TLDR: blockchain allows entities to commit hard-to-fake, easy-to-validate statements.
2. Agree on reality
Nodes on the blockchain network are meant to be trustless. This means that every node is fully capable of making up its own mind, and they do not need to trust or rely on anyone else for assistance.
In an ideal world, what is true for one node is true for all nodes. Sadly, we live in the real world, one that's full of perils and miscreants. Nodes could malfunction, become disconnected, get hacked, or are outright dishonest. These create discrepancies that result in many versions of reality.
For example, node A believes that it has 10 coins, but the rest of the network thinks it only has 5. When it tries to spend the 10 coins to pay node B, node B and the rest of the network will deem the transaction invalid and reject it. Node B will say to node A, "I never got the 10 coins you owe me."
To ensure smooth operations, blockchain nodes need to agree on a specific version of reality. Blockchain networks rely on sets of rules that make up a consensus algorithm to help nodes reach agreement. Some rules are implicit, such as the longest-chain rule in Bitcoin; some are explicit, such as committee-based voting in Taraxa.
TLDR: entities on the blockchain network follow a set of rules to agree on statements.
3. Replicate records
Every node on a blockchain network keeps a copy of the network's current and often historical records. Storing current records enables nodes to independently validate all statements - e.g., if you have no records of node A, you cannot validate any statements related to node A. Storing historical records can help to bootstrap new nodes, enabling them to independently validate how current records came about.
TLDR: every entity keeps a copy of the network's records.
Blockchain exhibits many properties that, while not unique to blockchain each on their own, is unique in their combination in blockchain.
- Immutable: since every node has a copy of the records and are constantly coming to agreement on its updates, it's very difficult to hack or alter these records without having to compromise a very large portion of the network, simultaneously. This makes the records on blockchain very resistant to being tampered with, giving it a seemingly immutable property.
- Ordered: the records stored are in a specific order, which is a critical attribute to agree upon between the nodes on the network. An immutable order means you cannot store conflicting statements (e.g., spend the same coin twice), a critically important feature for any self-respecting record system.
- Commitments: entities making verifiably (via cryptography) signed statements that become a set of chronological (ordered) commitments that cannot be retracted (immutable). Agreements of all kinds, such as financial contracts, could be implemented and safely executed without counterparty risk.
This combination of properties makes it possible to create a network where you don't need third parties to guarantee the integrity of transactions, making it possible to create a direct peer to peer decentralized ecosystem.
In the end, enabling decentralization is what truly makes blockchain a revolutionary technology, and is central to our mission here at Taraxa. For more on decentralization, please read this article in the series.