By Adam Krellenstein
Trustless tokens are still the best use for a public blockchain. Ten years after the anniversary of the publication of the Bitcoin whitepaper---inarguably one of the most significant technical achievements in recent history---the community that it created, and that has rallied around its grand vision, is in a crisis. Having worked for the past decade to produce protocols that go far beyond Satoshi’s original efforts in scale and ambition, we are still struggling to answer fundamental questions about the nature of the technology and the role it should play in our society---fundamental questions such as “What is a blockchain?” and “What is a blockchain good for?” We struggle to understand the relationship between Bitcoin and blockchain technology, between token systems and smart contracts, and between public blockchains and permissioned ones.
There is one camp that sees blockchain technology as being best suited for creating digital currencies (“tokens”) like Bitcoin itself, and there is another that sees the technology as promising for creating new kinds of decentralized computer applications (“smart contracts”). Simultaneously, another fight is going on about the value of different types of blockchain networks---specifically, whether blockchains should be “public”, so that anyone can join the networks, or “permissioned”, where the membership of the network is more or less fixed. In fact, these two arguments are tightly linked: it turns out that token systems are more useful than smart contracts when layered on a public blockchain consensus protocol.
Looking back to the Bitcoin whitepaper today, it is striking that Satoshi was exactly right about the best use for a public blockchain: a digital currency and payment system. The white paper only talks about token systems and public blockchains, so we are left on our own to figure out how best to take his seminal invention and extend it to additional use cases in new domains. And many have tried to do just that. For my part, I’ve spent a lot of time thinking about these issues, having had the rare experience of working closely with both sides of both debates. First, as one of the creators of the cryptocurrency Counterparty, and then as one of the founders of Symbiont. Counterparty is a public blockchain smart contracts platform, albeit one focused on token issuance and trading, while Symbiont is a fintech company that develops and licenses its permissioned blockchain-based smart contracts system to improve the infrastructure of traditional financial markets.
What I noticed in my time working on Counterparty, and in watching Ethereum closely since its inception, was that even though both systems were built primarily to support powerful smart contracts applications, their primary uses have been in the creation and transfer of the simplest possible digital instruments---tokens. With Counterparty, our vision was to create a trustless network for decentralized finance with no middlemen. We implemented smart contracts for token balances, the world’s first decentralized and trustless asset exchange, a platform for prediction markets using contracts for difference, a protocol for transparent elections, and a system for provably fair gaming. And we did it all as an extension of the Bitcoin blockchain itself, rather than as a separate network. Nevertheless, Counterparty’s adoption was always centered around its token issuance and trading functionality, rather than on the more advanced and more exciting applications that it enabled.
Similarly, it’s been three years since Ethereum launched and pretty much the only thing anyone is using it for could be easily managed by colored coins (another way of adding support for simple tokens on top of Bitcoin). Ethereum has received a lot of attention and produced a lot of excitement for its theoretically limitless capabilities, but to date people are actually using it only for the simplest possible decentralized applications. Part of the reason that Ethereum’s adoption has been lackluster is that it’s quite hard to build real applications safely in their smart contract language, Solidity. Still, it’s surprising that the most advanced Ethereum smart contract with any adoption is a cat-themed trading card game, not dissimilar to Spells of Genesis or Rare Pepes, which were launched on Counterparty long before. Ethereum, like Counterparty before it, has been used almost exclusively for tracking tokens despite its potential for doing much more.
The reason, I think, is that a smart contract system for the general public isn’t actually such a great idea. The value in taking a given application and putting it on a blockchain platform is chiefly found in making that application more broadly accessible and trustless. This is of enormous value for a simple instrument like digital cash, which benefits directly from wider adoption and purity of form. That is, Bitcoin, as a payment system and store of value without (easy) confiscation, debasement, etc., is a better currency than fiat insofar as it lacks the central points of control and interference. But for more complicated interactions among end users, where efficiency is more important than universality, it’s not too difficult or painful to rely on a “higher authority” to act in the role of a trusted intermediary. The interactions of individuals are not complex enough to justify being turned into decentralized computer programs, not yet.
In the realm of permissioned blockchains, on the other hand, smart contracts hold more promise. The target users aren’t individuals, they are large institutions, e.g. governments and corporations. The greatest benefit of permissioned blockchains is not more inclusiveness or transparency, but rather greater consistency and correctness than existing infrastructure, which is incapable of a providing single source of truth for multiple parties in a decentralized fashion. “Enterprise DLT” aims to take existing business logic managed by faxes and phones, then codify that logic as a shared computer application which automates workflows and reduces operational overhead. Large institutions tend to engage with their peers in intricate and complex ways, and, insofar as they are large institutions, there’s no natural third-party qua “higher authority” that they could rely on for global coordination. Ideally, this coordination would be managed by a blockchain and smart contract acting as a shared system of record and single source of truth, without giving a single party ‘superuser’ access to a central, canonical repository for mission-critical market data.
A blockchain is a way for multiple parties in a decentralized computer network to see a consistent view of the world, so blockchain technology can primarily be valuable either when replacing a consistent centralized system with a consistent decentralized one (the way Bitcoin replaces fiat currency), or when turning an inconsistent decentralized system into a consistent decentralized system (the way a smart contract would replace fragmented financial markets infrastructure). In the former case, the value created is in disintermediation of a central party; in the latter, it’s in the increased efficiency of a coherent, authoritative source of truth in a decentralized system. It’s fitting, then, that token systems---the simplest possible smart contracts---should be as widely accessible as possible, whereas smart contracts are most useful in permissioned settings, where they are faster, cheaper, and easier to use, and where they can solve a particular business problem in a deliberate and controlled manner.
The conclusion that I’ve come to is that, just as was originally envisioned by Satoshi Nakamoto, the greatest use of a public blockchain is in fact as a digital currency and payment system. Generalizations of Satoshi’s innovations in the time since he launched Bitcoin, manifest partly in the growing enterprise DLT space, are not competitive with Bitcoin itself. Instead of replacing fiat currency with digital gold, they may be used to build new kinds of databases that can support workflows that are completely un-amenable to management within the context of a traditional client-server framework. Efforts to build complex smart contracts on public blockchain networks aren’t tackling problems inherent in the design of existing decentralized systems (the way Bitcoin did); but rather are striving to become more usable versions of centralized systems. They are, of course, anything but.
This piece was also featured on Coindesk as a part of their "Bitcoin at 10: The Satoshi White Paper" series.