Strange, interesting, and wildly ambitious things are afoot in the world of Bitcoin and blockchains. I give you Zerocash, a completely anonymous currency; Ethereum, a blockchain platform designed to decentralize much of the Internet; and sidechains, a proposal to accelerate the evolution of Bitcoin itself. Any one of these could conceivably become a very big deal. All three? Prick up your ears.
Of Bitcoins And Blockchains
If you’re not au fait with blockchains, your head may already be swimming. Some background: Bitcoin, the infamous cryptocurrency, is built on a new kind of distributed-consensus technology called a blockchain, which allows transactions to be securely stored and verified without any centralized authority at all, because (to oversimplify) they are validated by the entire network.
Its success has spawned scores of variant cryptocurrencies, known as “altcoins,” the most famous of which is Dogecoin. But Bitcoin remains, by far, the big dog.
If you control more than half of the computations that power any cryptocurrency, then you can spend the same money more than once: a “51% attack.” Altcoins are especially vulnerable. But the stunning amount of computing power being poured into the Bitcoin network renders it (probably) effectively immune to such an attack, as per this mindboggling graph from blockchain.info–
The Bitcoin mining network is currently performing some three hundred quadrillion hash computations per second to secure and verify Bitcoin transactions. (If you think that’s environmentally wasteful, compare it to gold mining.) Meanwhile, despite its much-publicized decline of late, Bitcoin still has a collective market capitalization of nearly $5 billion, twice what it was a year ago.
Why You Should Care
Bitcoin is only mildly interesting as a store of value; there are many good alternatives. It’s more interesting as a means to transfer money to anywhere and anyone, with greater speed and lower transaction fees than most alternatives, with no ID requirements.
But it’s really interesting because it’s the world’s first form of programmable money.
Many people don’t appreciate that Bitcoin supports a simple scripting language which can orchestrate transactions. (In fact all transactions actually run as scripts.) This language already supports cases such as: deposits that automatically revert after a period of time, escrow transactions, transactions which rely on some external condition (albeit in a complex way that requires a third-party “oracle”), and more.
What are all of the potential applications of fully programmable money? Especially if the capabilities of that scripting language are expanded? I don’t know, and neither do you. It’s the proverbial whole new ball game.
But progress is tricky. Bitcoin is the only cryptocurrency powered and secured by a truly gargantuan mining network, but because it’s worth so much, and its network is so widespread, changes to Bitcoin itself are necessarily promulgated very slowly, and experimentation is done with extreme tentative caution. So we can try out new kinds of blockchains and cryptocurrencies (like Ethereum and Zerocash), or we can rely on the value, scarcity and (technical) stability of Bitcoin, but we can’t do both. Right?
…Wrong, says Adam Back.
Sidechains: Back, Hill, and Blockstream
The “three hundred quadrillion hashes” mentioned up above refer to attempts to satisfy the Hashcash proof-of-work function that Adam Back invented way back in 1997, used today to verify Bitcoin transactions. Now Back is back with a new proposal: sidechains, which would allow Bitcoins (and other blockchain assets) to be transferred between blockchains.
Back and co. are not acting purely out of technical benevolence. He and a group of co-founders, including several core Bitcoin developers, headed by former Zero-Knowledge Systems CEO Austin Hill, have a launched a startup called Blockstream. According to Coindesk, they have already raised $15 million in an ongoing funding round, and added Reid Hoffman to their board. Their exact business remains mysterious, but is built around sidechains. (The sidechain code itself will apparently be open-source. See Blockstream’s recent Reddit AMA.)
To quote the sidechains white paper (PDF):
The creation of independent but essentially similar systems is problematic … the most visible projects may be the least technically sound … discourages technical innovation while at the same time encouraging market games … We desire a world in which interoperable altchains can be easily created and used, but without unnecessarily fragmenting markets and development. In this paper, we argue that it is possible to simultaneously achieve these seemingly contradictory goals … participants do not need to be as concerned that their holdings are locked in a single experimental altchain, since sidechain coins can be redeemed
To quote, er, myself: “You could in principle have thousands of sidechains “pegged” to Bitcoin, all with different characteristics and purposes … and all of them taking advantage of the scarcity and resilience guaranteed by the main Bitcoin blockchain, which in turn could iterate to implement experimental sidechain features once they have been tried and tested.”
Blockstream has many other influential fans, including Vinod Khosla and Gavin Andresen, chief scientist of the Bitcoin Foundation (who also recently did an AMA):
There are critics, although the most visible, from Peter Todd, still stresses that “90% of the ideas in sidechains are good ideas.” His chief complaint is that either sidechains will still be vulnerable to 51% attacks, or Bitcoin miners will become more centralized, more powerful, and more dangerous. (There is also some rather more histrionic criticism.)
It’s worth noting that while one form of sidechain — a so-called “federated peg” — can be created today, for sidechains which require no external trust beyond the blockchain, some form of change to the core Bitcoin protocol will be required. At this point, though, such a change seems (to me) an inevitability.
Ethereum and Zerocash
Sidechains are far from the only “Bitcoin 2.0” project, although they do have the unusual feature that, as far as I know, all other such projects could be built atop sidechains. The two which interest me most are Ethereum and Zerocash. (And not just me: to quote Back in the AMA, “i’m waiting for the zerocash sidechain :)“.)
Bitcoin is not anonymous. Every transaction’s sender, receiver, and amount are recorded in the blockchain’s public record. The “sender” and “receiver” are Bitcoin addresses, not names, but if anyone connects your identity to an address, its entire Bitcoin history will be apparent to everyone. (There are workarounds, but they’re flawed.) Zerocash, authored by a group of cryptographic academics, is a blockchain protocol wherein senders, receivers, and amounts are all kept entirely anonymous. In a world where privacy is withering away like ice in summer, a little more anonymity would be a welcome development.
Ethereum is another separate project scheduled to launch its “genesis block” this winter. You have to admire its creators’ ambition: its blockchain supports a full Turing-compete programming language intended to power not just programmable money but also financial derivatives, voting systems, identity registries, reputation systems, decentralized file storage, decentralized autonomous operations(!), and more. They recently raised 30,000 bitcoins, or some $14 million at current prices, by selling their own currency, “ether,” and its blockchain’s “genesis block” is due to launch this winter.
Ethereum already supports sidechains, too, out of the box. But also–you could take a Bitcoin sidechain and clone Ethereum on it! Sorry if this all hurts your head.
Warnings and Conclusions
If you’re thinking: wait, the Ethereum people sold their own made-up digital currency for someone else’s made-up digital currency, which will now be pegged against more new made-up currencies? And people trade cold hard US dollars for these? This is snake-oil nonsense! let me assure you: it’s possible that you may ultimately be proved right. But I don’t think so. Blockchains, and the new monetary applications that blockchains make possible, seem to me to be a sufficiently powerful and interesting innovation that cryptocurrencies–as a class–do in fact have inherent value, not least because you can do things with them that you can’t with traditional fiat currency.
This is highly anecdotal, but at a Blockstream event this week, I spoke to multiple people working at startups with transaction-based business models, whose companies are already up and running using traditional currency … who are now beginning to move towards Bitcoin’s blockchain as a substrate for their transactions. Not because they’re True Bitcoin Believers, but because it just makes practical and technical sense. I strongly suspect that the number of such people will begin to grow rather large as we move through the next iterations of blockchain technology.