We’re getting very, very close to the first complete, production-ready release of Spacemesh. So close I can taste it. This of course marks a huge transition for Spacemesh as a project and as a team: from something conceptual and primarily theory-based to something living and tangible.
While this “genesis moment” feels like the end of a long, long journey, in fact as the name suggests it’s just the beginning. The question I’m now asking, and the question many on the Spacemesh team and in the community are asking is, what’s it the beginning of? In other words, what comes next? What does Spacemesh want to be when it grows up?
It’s difficult to say at this early stage. For now, Spacemesh is sort of like Bitcoin, but better. It’s like Bitcoin in the sense that the only thing the network will do at genesis is money. You can mine coins, send them to others (i.e., spend them), and use a small number of basic on-chain, smart contract-based applications like a multisig wallet. It’s better in the sense that its security properties all come with formal proofs, the protocol is truly incentive compatible, and the long-term economics are better, in particular by being friendlier to home miners and because we’ve both lengthened and smoothed Bitcoin’s issuance curve. (Of course these properties are only theoretical until proven in the wild, which is why it’s so important to launch and so exciting that we’re about to.)
Where does Spacemesh go from here? This is a topic I expect to explore at some length in this space in the coming weeks. Before answering that question, however, I need to zoom out a little and talk about the role of a blockchain in the first place.
Thing #1: Truth
Every group of humans, every society and every subculture, needs first and foremost to agree on ground truth. Literally everything that a society builds—every social structure, every construct, every institution—is built on the bedrock of shared understanding of truth. Some of these shared truths are fairly complex and multifaceted: e.g., Who’s an insider and who’s an outsider?, What’s the shape of the social hierarchy, who’s on top and who’s on the bottom?, What’s the definition of fairness and how should justice be administered?, etc. These more complex truths are in turn built on a foundation of simpler, more objective truths.
As a simple case study let’s consider property rights. This institution is a foundational, essential component of most human societies now and far back into the past, at least as far back as Plato. If a society cannot reach a consensus on property ownership, including details such as location, duration, the fundamental rights of the property holder, and the methods for defending, asserting, and adjudicating those rights, that society will inevitably descend into anarchy and chaos. A clear delineation of ownership is essential.
The simple, irreducible, primitive fact, the simplest possible social construct that enables this entire social hierarchy to be built, is the transaction. A transaction can be reduced to a set of three items: giver, receiver, and good being transacted. Alice gives three coins to Bob. Bob gives six strawberries to Alice. That sort of thing.
Of course, we’re still missing one piece of the puzzle. These transactions also need to be globally and totally ordered. We need to know that Alice gave her coins to Bob before she gave them to Charlie. In other words we need to prevent double spending.
A set of ordered transactions is literally all you need to build a minimum viable property rights system. Yes, the system can be significantly more complex than this. This is a reductionist, toy version of such a system. And, yes, real world systems of property rights are much more complex, but this simplified model contains everything we need to reason about property rights in the most basic and purest sense.
A blockchain provides precisely this set of tools. It allows actors to assert ownership over cryptographic assets (which may or may not be tied to real world assets like fiat currency, strawberries, or plots of land) and it allows them to verifiably and irreversibly transfer those assets to someone else. In particular, it strictly orders the transactions and ensures that everyone who participates in the system and everyone who observes it ultimately sees exactly the same thing: the same list of canonical transactions in the same order.
This simple primitive—consensus—is more powerful than it seems at first blush. This is because it allows far larger, more complex social systems to be built on top. (Incidentally, this is also why blockchain and cryptocurrency represent such a fundamental and important paradigm shift for humanity, but I’ll leave deeper exploration of this point to another issue.) It allows a group of people to agree on the state of the world. More importantly, it allows them to do so in a way that’s efficient and trustworthy. Rather than having everyone weigh in on every transaction, or resolving transactions through appeal, force, or some other, less efficient dispute resolution mechanism, it allows every single transaction to be settled in a simple, straightforward, credibly neutral way. This is a powerful tool of social scalability.
It’s critically important to note here that the important thing is not whether a particular truth is objectively true or not. What matter is that everyone (or almost everyone) agrees about it, i.e., that it’s in consensus, and that there’s an efficient mechanism for reaching this agreement.
This is a particularly important point and it’s one that takes some time to understand so I’m going to repeat it. When it comes to arriving at social truth, what matters is not whether that truth is true in some absolute, objective sense. What matters is that enough people believe it to be true.
For instance, when an election takes place and the results are extremely close, the crucial aspect is not so much who is ultimately declared the winner or who assumes office. Rather, what is essential is that society has a method for reaching this decision efficiently and peacefully. In other words, the objective is to ensure a smooth transfer of power, avert civil war, and prevent the government and society from grinding to a halt or completely collapsing due to a stuck process.
By the same token, in distributed systems, if Alice attempts to spend her coins twice, it doesn’t matter that much whether Bob or Charlie ultimately receives those coins. Indeed, objective truth is sometimes difficult or even impossible to determine! It often depends upon one’s vantage point. To an observer close to Bob it may seem like Bob received the coins first; to someone nearer Charlie, it may seem that Charlie received them first. What matters is that the system has a way of assigning those coins to either Bob or Charlie but not both; that it has a way to validate one of the conflicting transactions and invalidate the other one. And it needs to do so quickly (so all three parties aren’t standing around, scratching their heads, wondering what happened to the coins), and to do so in a way that’s credibly neutral and therefore considered trustworthy by all of the parties.
This is what I mean by “truth” in this context. Blockchain is a truth machine in that it produces consensus truths that everyone or almost everyone agrees on.
If this notion of truth sounds odd, consider: the goal of science is not to arrive at objective truth. I always thought the goal of science was objective truth and my head exploded a little but when I finally understood that this is not the case. Rather, the goal of science is to produce useful explanations for things. In other words, science is about constructing useful systems of knowledge and understanding to describe, predict, and explain. In particular, in science there is never a single, once-and-for-all, hard truth since true science involves revisiting assumptions and falsifying hypotheses that were previously believed to be true. Relativity vs. Newtonian physics is one such example of many.
In the same fashion, the goal of a truth machine like a blockchain is not to arrive at some ideal, perfect, objective truth. It’s to produce useful truths in a trustworthy fashion that can be relied upon to do socially useful things.
Thing #2: Trust
Let’s delve deeper into the concept of trustworthiness. Truth serves as a fundamental building block for society, upon which numerous other layers must be constructed. Trust is positioned just above truth. Even if we reach consensus on the truth—for example, agreeing on property ownership under a system of property rights—if we lack sufficient trust in the system to believe that our property rights will be respected, then we have not made much progress. A society in which people do not trust one another or social institutions, systems, and structures is neither healthy nor prosperous. One need only visit a low trust society to see this in action in day to day life.
One such society where I’ve personally spent time is China. I suspect that new technologies are helping somewhat, but when I lived in China a few years ago I felt that no one trusted anyone other than family and close friends. As a result, people are constantly trying to rip each other off and take advantage of one another. Cars drive very aggressively because they know that no one will make way for them, leading to impossible situations (I recall seeing this sort of absurd traffic jam on a daily basis) and traffic jams that last for days. No one takes credit and no one buys things on credit as a result, because people assume they’ll never be paid back. People are generally very hesitant to do business with someone that isn’t family or a close friend, or has been vouched for by someone who is. As a result, entire classes of transactions simply don’t happen, everyone is worse off and society is poorer as a result.
Of course blockchains can’t immediately solve every social failure, but they do promote trust in several ways. Firstly, they provide consensus on truth, which as described is required for trust. Secondly, they provide additional guarantees including liveness and safety. Liveness means that the system will always reach a decision in a reasonable amount of time (the efficiency factor I described above). Safety means that the system will never agree on a “bad” state of the world, such as allowing violation of the consensus rules (e.g., double spending) or otherwise allowing contradictory transactions to occur. Safety rules guarantee things like the fact that only someone who holds the private key corresponding to a coin can move that coin (seizure resistance), that all valid fee-paying transactions will eventually be processed by the system (censorship resistance), and that transactions that have been included in a block will never be reverted (irreversibility, immutability). In a nutshell safety means that the truths the system outputs are always consistent. If we can be sure that a system will always reach a consistent state and that the rules will never be violated, that goes a long way towards promoting trust in that system!
To bring things back to the traffic analogy for a moment (always a useful one!), consensus means the system decides on who should move first, liveness means the system never gets stuck in deadlock, and safety means accidents don’t occur.
These conditions are necessary but not sufficient for trust, however. It turns out that there’s one additional required condition: credible neutrality. This property means that the system provably treats everyone the same way. Everyone can see the rules, everyone plays by the same rules, and everyone can see clearly that everyone is playing by the same rules.
With these properties together—credible neutrality, liveness, and consistency around a set of useful guarantees—we have a more or less ideal institution that should be trusted by almost everyone! The key insight here is that, unlike every form of human institution that came before, no aspect of blockchain requires trusting another fallible human or group of people. This is why blockchains are often called trustless (or, more accurately, trust-minimized): the only things one needs to trust in order to transact on Bitcoin or Ethereum are the system itself (as described), that both parties have Internet and power, and the code of the transaction or smart contract. In this respect, a blockchain is not only a truth machine but also a trust machine!
Incidentally, blockchains like Bitcoin and Ethereum get close but don’t quite perfectly achieve credibly neutrality. In Bitcoin for instance miners can take advantage of the system by engaging in selfish mining, where the honest behavior and the most profitable behavior don’t align. They can also insert arbitrary transactions into blocks they mine for free, and may sometimes be bribed to do so. In Ethereum, block producers and other actors in the MEV ecosystem regularly take advantage of less sophisticated users through economic attacks like sandwich attacks. Reducing the scope for this sort of attack is an area of extremely active research in these and other blockchain communities, and with the understanding of how important credible neutrality is for establishing trust, we’re designing Spacemesh to be the most credibly neutral blockchain that’s ever existed (more on this later!).
Thing #3: Life
Compared to the previous two things, this one is less obvious and maybe even a bit controversial. It’s something I’ve been considering as I observe the recent, rapid developments in AI technology and ponder the risks and opportunities.
Let me make one thing clear upfront: we don’t have clear consensus on what it means to be alive. It’s not something I ever thought deeply about before, but once I did begin pondering the question I very quickly got confused and realized how nuanced it is. There are as many as 123 different definitions of life. We cannot even agree when human life begins, much less whether things like viruses are alive in a meaningful sense, to say nothing of the possibility of alien life.
Instead, definitions of life tend to be descriptive. Things that are alive exhibit certain properties including homeostasis, organization, metabolism, growth, adaptation, response to stimuli, and reproduction. The question whether artificial intelligence systems might be considered alive today or at any point in the future has become a hot topic recently, one that will soon become hotter and more important. I actually don’t find this question terribly interesting or useful, and I think there are man-made systems today that exhibit most or even all of the descriptive characteristics of life and might therefore be called life. The best example is perhaps the corporation. One doesn’t have to think too hard or get too absurdly creative to think of ways in which a large, long-lived corporation exhibits all seven of the characteristics described above, after a fashion.
The same could be said of blockchain. Bitcoin or Ethereum has a claim to be the first true artificially-created, intelligent, conscious form of life, and I think that real intelligence is much more likely to emerge from such a system than it is from, say, a chat bot. I don’t know how general AI begins or how intelligence begins more generally, but one thing I am certain of is that it doesn’t begin when someone sits down with the intention of creating intelligence. Intelligence and consciousness are emergent properties of complex systems, and they are closely tied to the question of life: what it means for a system to be alive, and to know it’s alive and desire to remain alive.
Blockchains exhibit these seven properties as well. They achieve homeostasis (e.g., stable fees), they have a very clear organizational structure, they have “metabolism” in that they consume gas and output truth and trust, they grow with every new transaction and block, they adapt via upgrades, they respond to stimuli in the form of new transactions, and they reproduce by forking.
They exhibit other life-like properties as well. One property of life is that it has autonomy. Living organisms are able on their own to make decisions, act on those decisions, and marshal resources in support of those decisions. Blockchains do this too. Outside actors—users, miners, infrastructure providers, regulators, etc.—interact with the system and exchange data with it, but the protocol itself decides what to do with the stimulus it receives in a highly autonomous fashion. No one person, no one institution, and no one group of people can make these decisions for the blockchain. In this respect the blockchain is like a force of nature, and it also runs applications that, if certain conditions are met (e.g., the application is not controlled by any key), are also autonomous in their own right. This is in contrast to a simple application running on a single device and controlled by a user: the user can terminate the application or modify its logic single handedly.
Another property of life is that it’s distributed. The “life force” of an organism doesn’t reside in any particular part of its anatomy. You can remove or replace just about any part of an organism and make a claim that it’s still the same organism. You can remove part of a person’s brain or replace their heart and they’re still basically the same person. Someday, heart and brain transplants may even become commonplace. Rather, a person’s “personhood”, their “life force”, their “soul” and their consciousness is an emergent property of the system. The same is true of a distributed system like a blockchain. You can remove any one node or any arbitrary set of nodes from the system, but as long as enough honest nodes remain the system will keep functioning, and it hasn’t lost anything fundamental to its “self.” This is again in contrast to a simple application running on a single device, which can be “killed” with a single button. Blockchains don’t die so easily!
If you give a blockchain application control of resources (like a smart contract), the ability to communicate with people and other applications (already possible), and the ability to change its own code (already possible), then I think there are no fundamental obstacles to that application being considered alive in the sense of being an effective, autonomous actor in the world. Questions naturally arise around things like consciousness, feeling, etc., but to me these questions are largely metaphysical and not terribly interesting or useful. I prefer a more pragmatic definition of life.
As I wrote previously, I expect one of the core questions of our time is going to be whether and to what extent we choose to recognize autonomous systems, applications, and actors as alive and as deserving of rights and legal protections. This debate is pretty clearly starting today. And there is precedent: we’ve been giving corporations (a legal fiction) and even rivers and certain animals the rights of legal personhood for many years. The idea that we’d extend similar status to autonomous applications isn’t that far-fetched in my mind, and those of us building such systems today would do well to consider the implications.