TLDR: a Blockchain is a trusted coordination mechanism;
Of course, the answer depends on who you ask :-)
My 7-word answer: a blockchain is a trusted coordination mechanism.
What is your definition of a blockchain? Reply with your 7-word answer on Twitter.
My answer to this question evolved over the years: from a more trust oriented “a computer with trust” (inspired by Ben Horowitz) to adding an economic angle “trusted coordination mechanism” (inspired by Yuval Noah Harari).
Other very similar answers: Dan Boneh’s “a blockchain provides coordination between many parties, when there is no single trusted party”. Chris Dixons’s “Blockchains are Computers That Can Make Commitments”, Albert Wagner’s a blockchain is a database not controlled by a single entity, and Tim Roughgarden’s “a programmable computer that lives in the sky, that is not owned by anyone and that anyone can use” – which is a great metaphor! but slightly more than 7 words :-).
All these answers have a common theme, but let’s start with the origin of the word “Blockchain”
Origin of the word “Blockchain”
Emails from Satoshi in 2009 mention “the block chain”. However, Satoshi’s emails and the Bitcoin whitepaper do not use the word “Blockchain”. There was some initial debate between using “block chain” vs “blockchain”, but by 2014, the official Bitcoin forums seem to have converged on using “blockchain”.
So what does this “chain of blocks” do? The answer seems clear in Satoshi Nakamoto’s 2008 groundbreaking insight:
The proof-of-work chain is a solution to the Byzantine Generals’ Problem. I’ll try to rephrase it in that context. – Satoshi Nakamoto
Similarly, Hal Finney, 2008 explained that Bitcoin is solving a very hard problem of building a global, massively decentralized database:
… bitcoin is two independent ideas: a way of … creating a globally consistent but decentralized database; and then using it for a system similar to Wei Dai’s b-money … Solving the global, massively decentralized database problem is arguably the harder part… – Hal Finney
So how should we call this part of Bitcoins innovation? Vitalik Buterin’s 2013 Ethereum whitepaper teases out blockchain as a generic term:
another - arguably more important - part of the Bitcoin experiment is the underlying blockchain technology as a tool of distributed consensus, and attention is rapidly starting to shift to this other aspect of Bitcoin
What is a Blockchain, in more than seven words?
How can a Blockchain be a trusted coordination mechanism?
Viewed through the lens of computer science and distributed computing my answer is: a Blockchain is a trusted coordination mechanism via:
- Byzantine Fault Tolerant State Machine Replication (“trusted”); with
- Openness and Auditability (“coordination”), and;
- Incentives to provide guarantees (“mechanism”).
1. Byzantine Fault Tolerant State Machine Replication (“trusted”)
A trusted coordination mechanism is a shorthand for the more academic definition of Byzantine Fault Tolerant State Machine Replication (BFT SMR). The State Machine paradigm is covered by Fred Schneider’s 1990 tutorial and goes back to Lamport’s seminal 1978 paper on Time, Clocks, and the Ordering of Events in a Distributed System (see page 562). The adaptation of the State Machine paradigm to Byzantine Fault tolerance and the emphasis on a generic service was pioneered by Barbra Liskov and her group at MIT with PBFT and BASE. BASE advocates using abstraction and generality which is the conceptual precursor to the idea of a Blockchain computer.
The idea of replacing any ideal functionality (state machine) with a replicated service built on mathematical protocols to obtain trust (which includes security and privacy) is at the core of Cryptography. Boaz Barak says it best: “Cryptography is about replacing trust with mathematics”. This foundational idea is at the center of Secure Multi Party Computation.
2. Openness and Auditability (“coordination”)
As Yuval Noah Harari writes in Sapiens 2014:
Fiction has enabled us not merely to imagine things, but to do so collectively. We can weave common myths …(which) give Sapiens the unprecedented ability to cooperate flexibly in large numbers
In these lens, trust in Blockchains can be viewed as a common fiction that allows untrusting parties to coordinate on a common source of truth. How can such a system provide trusted system for coordinatation? Technically, a Byzantine faulty tolerant state machine provides this trusted coordination. But how can parties trust the state machine? and how can they guarantee access to such a system?
Two properties of permissionless blockchains that allow such untrusted coordination are openness and auditability. These properties are not captured explicitly by traditional BFT SMR and aim at allowing untrusting parties to trust the system and hence enable them to coordiante.
Conceptually, Openness can be viewed as the blockchain equivalent of the US First Amendment. Technically it can be split in two parts. The first is that the set of validators (or block producers) is not fixed, but dynamic and open for participation. Often, a certain type of resource is required to become a validator, but minimal discrimination beyond this resource requirement. In Bitcoin to become a block producer (validator) all that is needed is the ability to compute proof-of-work puzzles. In several proof-of-stake systems, to become a block producer (validator) all that is needed is to stake some amount.
The second part of Openness is about the execution engine (the state machine), which can again be split in two: (1) openness in writing: there is often minimal inherent discrimination as to who can submit a transaction; (2) openness in reading: there is minimal inherent discrimination in the ability to read the state of the ledger and verify the transitions of the state machine;
Openness is not an absolute property, there are often various requirements to limit it or balance it with other values. Regulator pressure could in the future require a more limited form of openness. A recent example is the US treasury sanctions imposed on the tornado cash mixer, and the resulting debate on First Amendment rights and Forth Amendment rights.
Another important historical example of the limits of openness is that to update themselves, Blockchains sometime need to hard fork. As an example, an early Bitcoin hard fork inadvertently discriminated against some transactions and caused a perceived double spend. Another famous example is the Ethereum DAO hard fork that caused a form of discrimination against a presumed attacker.
Auditability can be viewed as a strengthening of the ability of external parties to read and in particular to audit the system: (1) verify there is no double spend (audit for consensus violations); (2) verify that the execution is valid (audit for execution violations); (3) verify that the data is available (audit for data availability violations). Buterin argues about the importance of allowing low resource users to be able to audit a Blockchain.
3. Incentives to provide guarantees (“mechanism”)
Finally, traditional cryptographic models in computer science assume a binary: good guys / bad guys view of the world. These models assume some fraction of parties are inherently honest and the remaining parties are controlled by a malicious adversary whose sole goal is to break the protocol guarntees.
Arguably, the breakthrough in blockchain systems is going beyond this model and focus on a Cryptoeconomic model where most parties are presume to be motivated by rational preferences and incentives.
As Buterin says in his 2019 talk on Cryptoeconomics:
What did Satoshi really invent? Satoshi invented Cryptoeconomics, the use of incentives to provide guarantees about applications.
To provide a means for trusted coordination, Blockchains need to provide incentives: (1) for the validators to operate the system (over the alternatives of doing other things, free riding, or misbehaving); (2) and for users to choose to use the system (over other alternatives of using other systems).
Taking into account incentives and modeling parties as rational agents is a non-trivial difference between Blockchains and the traditional Cryptographic model of assuming honest parties and a malicious adversary.
Instead of assuming most parties are honest and will follow the consensus protocol to maintain safety and liveness, some blockchains explicitly offer incentives to maintain safety and maintain liveness.
The use of punishment strategies to disincentive unwanted behavior is particularly effective when the blockchain system has a native means to force parties to commit economic resources and suffer slashing events in case of misbehavior. This is the bases of optimistic rollups and the usability of fraud proofs.
Another key aspect of blockchains is that as a limited resource, they need some way to decide which transactions to include. This is a classic resource allocation problem with limited supply. The cryptoeconomic solution is to have a mechanism that selects the transactions whose users are willing to pay the most. For example the Ethereum 1559 transaction pricing mechanism whose goal is to incentivize participation from users. As a side effect, these mechanisms also allocate revenue to validators.
What is a Blockchain? Notable responses
@artofkot: collusion resistant coordination tool. Also checkout the excellent full blog post.
@JoshaTobkin: a shared immutable ledger
@dfren_eth are states: digital and political
@yossi_sheriff: a machine version of cultural trust capital
Many thanks to Tim Roughgarden for insightful comments and suggestions.
Your thoughts on Twitter