paint-brush
Scaling Bitcoin to Mars!by@dandisagrees
332 reads
332 reads

Scaling Bitcoin to Mars!

by Daniel StaudigelNovember 17th, 2017
Read on Terminal Reader
Read this story w/o Javascript
tldt arrow

Too Long; Didn't Read

My favorite question for bitcoin supremacy is: “how will Mars colonists send <a href="https://hackernoon.com/tagged/bitcoin" target="_blank">Bitcoin</a> home to their families?” It’s a great thought experiment, because nobody on Mars could run a Full Node, no matter how small the blocks are: the 8–40 light-minute round-trip makes it physically impossible to transact between Earth and Mars at all. You could shim SPV to work, but trying to be a real participant in the <a href="https://hackernoon.com/tagged/network" target="_blank">network</a>? No way!

Coins Mentioned

Mention Thumbnail
Mention Thumbnail
featured image - Scaling Bitcoin to Mars!
Daniel Staudigel HackerNoon profile picture

We’ve hard about “to da moon”, what about beyond?

The Red Planet, public domain image by JPL/NASA

My favorite question for bitcoin supremacy is: “how will Mars colonists send Bitcoin home to their families?” It’s a great thought experiment, because nobody on Mars could run a Full Node, no matter how small the blocks are: the 8–40 light-minute round-trip makes it physically impossible to transact between Earth and Mars at all. You could shim SPV to work, but trying to be a real participant in the network? No way!

I like this fantasy because it’s totally impossible to imagine without some really groundbreaking changes. It’s also just a hard-mode version of the problems that face us now. Any blockchain/consensus system is fundamentally limited by how much data you can force through it, and how long it takes to talk to all the involved parties. Things get really expensive as they get better and bigger, which shuts out smaller parties and use cases. Trying to get everybody to agree on 1MB per 10 minutes is pretty easy, 10MB is a bit harder, but 1TB every 10 minutes? In the end, Maxwell’s laws trump Moore’s law every time; you’ll never beat the speed of light.

Block size is a not the real problem at all, and the Earth/Mars problem demonstrates that really quickly.

So what do you do? Nature tells us that the only data structure that scales is the graph. The solution in the Earth/Mars problem is to have Bitcoin-Earth and Bitcoin-Mars, and brokers in between. We’d need a few protocols & tools to eliminate counter-party risk (you don’t want the brokers to run away with your hard-earned Marscoin!), but in Blockchain-land, that’s probably a simple matter of atomic swaps and a few concepts built on top of payment channels. Nothing prevents martians from holding earth-coin or earthlings from holding mars-coin, but they are necessarily limited in the ways they can manipulate it.

But, you say… we don’t even have a Moon colony, yet, why bother thinking about the Mars colony? Fair enough… to a degree. The strength of the mars example is to point out a reasonable “future scenario” that you can’t even hope to solve by increasing transaction volume. The solution isn’t on that level, we’ve got to go deeper.

The basic question at the heart of any consensus system is: who needs to agree?

If a merchant in Tanzania is trying to sell a widget to their neighbor, do they need to make sure everybody in the world agrees? Markets are set up to answer this question — transaction costs tell you how much people are willing to pay for certification. If transaction costs on the Bitcoin blockchain cost $100, that tells you that it is worth at least that much to someone to have their transaction certified globally. The only problem is that now, they don’t have a competent alternative. They can’t certify their transaction on “Tanzania-coin”, or “their-neighborhood-coin”, even if that’s the level of security they need and want.

Competition will come.

My hope is that people will come together around a high-quality distributed exchange protocol. If it’s easy to boot up a new coin with monetary policy and technological choices that match your use case, and they’re easy to trade and transact with, the problem is solved. What we need is a hierarchical cryptocurrency, where the protocol is based around the idea of compatible-but-separate blockchains. We want to encode the exchange very close to the network itself. “Internet money” needs a little bit more inspiration from the internet — we need the TCP/IP of money. Basically, we need a peer-to-peer atomic swap negotiation layer.

Current blockchain technology is cool, but it’s not the whole story. It’s the equivalent of a single mainframe, great for a small community, but not ready to tackle the whole world. We need to be able to split things up, with neighborhood-scale, city-scale, nation-scale and planet-scale blockchains, with easily-understood methods for exchanging between any of them. Transacting directly on the planet-scale blockchain isn’t going to be cheap… if you’re not willing to pay planet-scale transaction costs, your transaction probably doesn’t belong on the planet-scale blockchain!

Put in the context of “earth-scale cryptocurrency”, the artificially high fee situation on the current bitcoin chain would be funny if it weren’t so idiotic. Bitcoin is on track to be the planet-scale blockchain, but imagine the planet-scale blockchain of 10 years from now… what size will the blocks be? My guess is “larger than 1MB”. That said, it almost doesn’t matter, because there isn’t a block size that can accomodate all users and all use cases. We need to have a system that scales fractally, not linearly.

Is the name “fractalcoin” taken?