A Ledger and a Network

Bitcoin, Money, and Datalove, Part Two

Money is a way of remembering.

In all of its forms, from accounting to coinage, money is indelibly linked with time and memory. The internet, as many have noted, is terrible for both. So when a friend from a distant country I know only from the internet asked to have a chat about Bitcoin, it is unsurprising that we kept missing each other, so I wrote him a letter instead. Here is my explanation — for my friend, and for posterity.

Dear Rageh,

You've asked me how Bitcoin works. It's called a decentralized cryptocurrency, a term that helps no one understand anything. Bitcoin clones and successors are currently flooding the internet, with names like Litecoin, Zerocoin, Dogecoin, Namecoin. They are collectively called cyptocurrencies, altcoins, altcurrencies, etc. I’m going to try and explain what these things are by focusing on Bitcoin, which was the first. What they all have in common is that they are ledgers. What they are and what they do is tied to memory, to that which can be remembered and counted on.

Like all money, Bitcoin is something which a group of people are choosing to interpret as currency. Before I explain the interpretation, I think it might help to explain the underlying thing. To do so, I will start with what Bitcoin is in general, and later get down to how it works. One caveat: this is about the idea of Bitcoin. The reality of how it plays out in the wider world is something I'll talk about in later writing.

In a way, Bitcoin is simple: it's a ledger. Like all ledgers, it keeps numbers associated with people correlated with numbers associated with amounts.

It's only a ledger, but one designed specifically to live on a network. The fact that making a ledger live on a network is so complex and difficult says more about networks, and perhaps the ways we don't understand them, than ledgers.

In the world that we're used to, the world where we are born, money, like everything, uses the universe's way of remembering -- one atom in every atom's place, and every atom affecting other atoms, often in ways we can see and understand. When we transfer those atoms, be they coins or bits of candy or a bookshelf, to another place, they no longer exist where we used to have them.

The very physical form of the world entraps the memory of what happened. This is over here, so it no longer is over there. Though I can see from the fade of the carpet that it used to be over there.

Now we live in two worlds, the one overlaid on the other. In the world of the network, there is no past or future, there is only a constant and omnipresent now. This thing we call the internet is nothing more than a near-infinitely long string of numbers, senseless and meaningless in and of itself, with no physical differentiation. On the internet atoms don't move with meaning or memory. They contain states, and our perception assigns those states numbers, and eventually meaning. Our perceptions alter and move that meaning around, often without moving the atoms at all. The internet spans hard drives and RAM, it passes through copper and fiber and satellites, it waves as radio and light, but things don’t have to move. The net has a physical layer, but the physicality is a container of the information, not the information itself. Through all these forms and apparent motions the net is little more than a series of states of the electromagnetic spectrum.

The net is ultimately ephemeral, lost and recreated moment to moment like an echoless song telling all of our stories, again and again, all at once.

From the perspective of a network nothing is ever lost, and nothing is ever found. The thing that contains our hopes and fears, our knowledge, our history, our shared conversation, love affairs and quarterly reports is a miraculous and strange way we've invented of reading a long number which has no intrinsic meaning.

This atemporality has consequences. When I give you a book in the world of atoms, I no longer have the book. When I give you a book on the network, we can be thought of both having the book, though in fact it is more true to say I never gave you anything, and I never had anything in the first place. It is better to say I have changed a pattern of numbers you are looking at than given you anything. I can change them again, and again, and again -- I can change the book, and make it different every time I "give" it. My potential ability to rewrite any patterns of numbers in any way I like is endless, until the atoms that contain the states fall away, and everything is calm and unchanging and cold.

For the most part, we don't have to think of the network this way, even though it's true. We live in abstractions that make this insensible state-song legible to the kinds of creatures that grew up with bookcases and coins, eating candy. But the true nature of the network asserts itself when we try to make it act physical. No matter how hard we try to make it look like the world of atoms, it never is a world of atoms. The people who made Bitcoin were trying to solve a difficult problem.

On a system of infinitely re-writable number-states, how do I "give" you something, and not "have" it anymore? How do I lose things, how can I look forward to gaining them, in the omnipresent now without any things to speak of?

This is the fundamental problem of Bitcoin. How does one make a ledger, a sequence of numbers, that no matter how many times it is copied, cannot be arbitrarily changed? A ledger is a written memory, a sequence of events, in order, meant to balance to zero. It is a perfect and frozen moment of inaction. It is hard to imagine something more antithetical to the strange unbalance and infinite malleability of the internet. It's not a new problem. Since the first time someone tried to sell anything or revoke a message, people have been trying to make the network behave like atoms, and to a large degree they have failed fantastically.

The How of Bitcoin

Bitcoin deals with making something permanent on the impermanent net through a clever combination of social conventions and math. By social convention, Bitcoin users want all copies of the ledger to be identical, to be the Great Ledger, simultaneously many copies but one inviolable pattern. And by math, they can verify that all their copies of this Great Ledger are identical. The problem of keeping account on an infinitely malleable network was referred to by Bitcoin's creators unpoetically as the double spending problem.

This is how the protocol the creators made solved the double spending problem.

Bitcoin's Great Ledger is called the blockchain. The blockchain is Bitcoin's artifact in the world. There isn't anything more to Bitcoin than the blockchain, which lives its multiple and identical existence in wallet and miner software all over the world.

The blockchain contains the record of every bitcoin generated by those running the Bitcoin protocol on their computers, called “miners,” and every transaction the Bitcoin wallets initiate. This recording of Bitcoin speaks Bitcoin into existence. Until an action, be it the creation of a bitcoin or a transfer of a bitcoin, is recorded in the blockchain by the miners, it doesn't exist.

There is no single instance of the ledger or agency empowered to certify the ledger. Instead, miners and wallets, the machines running the protocol, seek to sync up new transactions and creations on the internet. Getting everyone to agree without a centralized reference requires a motivated group of syncing computers, and muscular and vigorous math tricks. The computers are motivated by receiving bitcoins for their efforts. The work gets harder over time, and eventually at 21 million bitcoins, somewhere around 2140, there will be no more new coins generated. That's the broad outlines of how Bitcoin works, and for most people all they need to know. But there is a lot more, and it tells the story of more than Bitcoin or "decentralized cryptocurrencies." It tells the story of how the internet works, and how atomic and fleshy humans work with it.

Stepping through the Bitcoin process

IEEE Infographic of how a transaction works. Large version: http://spectrum.ieee.org/img/06Bitcoin-1338412974774.jpg

When you decide to add to the blockchain, and extend the memory of Bitcoin, you send the message, with instructions about how the blockchain should be modified, to a set of computers running the Bitcoin protocol. This is a transaction, and it has to be checked against the Great Ledger (the blockchain) to make sure it is valid. Any instance of the blockchain, being identical, is suitable for checking, and many can and will check your instructions against their copy of the blockchain. You digitally sign this command with a unique identity that's already noted in the blockchain associated with a tally of Bitcoin. This unique identity is always what's in the blockchain, rather than the name of any "owner" of bitcoins. This fact is what makes people think that Bitcoin is anonymous, despite every action being part of an immutable public record, but more on this, and its troubles, in part three. From here, the computers running the protocol, the miners, begin an arcane race to add your transaction to their blockchain without violating the sanctity of the great blockchain.

Hashing the World

This next part, Rageh, is very important. While I’m explaining it in terms of Bitcoin, hashing is one of the fundamental mathematical tools for making the long, meaningless number of the internet mean something to humanity. Hashing is the magic that lets us see change over time on a timeless network.

In more prosaic terms, it is a mathematical operation one can perform over a number of any size that gives exactly the same output with the same input, but wildly different output with any change in the input. A hash is a bit like applying a math puzzle to something. Imagine this: take any number n, multiply by 12345, cross off the last three numbers, add 1, multiple by 4, dance a jig, subtract 543, drop any sign, square it, and print the first 5 numbers. Doing all that to the humble 1 gives you 24108. Doing all of that to 2 gives you 19624. You get these figures every time reliably if you put in 1 or 2, but it's hard to figure out what number anyone started with just by looking at the final number. It is much easier for either a human or a computer to do all those things to a number than to look at the output number and figure out what number was originally used. This means that by keeping a record of hashes, we can always check if something matches what we expect, or if it's changed. This is used all over the network, to find things, to encrypt things and keep them safe, to create much of the veritas of our network experience.

Bitcoin uses hashes as part of what's called proof-of-work. And boy, it is a lot of work.

Going back to our hash, if I give you a number, say, 72, and I say “find a number you can add to 72 that when put through these steps gives me 54321.” I have just given you a fucking nightmare of a job. All you can do is guess a number, check if it's right, and if it isn't, guess again and check again, a thousand or a hundred thousand or a million times -- however long it takes. When you come back gaunt and miserable, crying about how you lost months, it only takes me a few seconds with a calculator to check if your answer is right. Computers can do all this at mindboggling scale and speed, but the proof-of-work is the same: guess, check, guess again. Billions of guesses all over the planet have gone by as you read this, using a hashing algorithm, far more complex than my mathematical jig, called SHA-256.

Little specialized processors designed for this task only have guessed, checked and guessed again, from every corner of the electrified world, guessing numbers to add to a hash for every transaction seeking to be added to the blockchain. When a lucky computer gets the number right (called a nonce) it bundles that transaction with other little transactions, with the hashes of previous notes, and makes another hash to add to the lineage . These become a block, and when the block is blessed by the miner's peers, it goes into the blockchain with the previous transactions. This makes a math-puzzle chain that goes back to the beginning of Bitcoin time. This ritual, repeated ad faux-infinitum, creates the chain of events that is the network's best version of information carved in stone.

Graphic by Matthäus Wander
To modify any transaction along the way would modify all the hashes that came after it, wildly and out of control, like a little mathematical butterfly causing a hurricane.

It would be as if changing a single number on the page of a ledger would scramble every number or even note in the rest of the book after that number.

The protocol has not only built in syncing, but ways to calibrate the difficulty and therefore the speed at which Bitcoin blocks can be added to the blockchain — meant to be one every ten minutes, no matter how much or how little computing power is thrown at the task. That ten minutes is also how fast new bitcoins can be generated for the miners. The nodes can look at how fast work is getting done from the speed that they incorporate new blocks into the blockchain. From this they determine how hard the next nonce should be to find, a calibration that is done every week.

Right now the social convention that keeps everyone talking and hashing and cooperating is that the Bitcoin protocol gives miners bitcoins for doing all this work. As more power gets brought into the network, the proof-of-work guessing gets harder. In terms of my example hash, it's the difference of asking for only any number that begins with 543--, or if that's too hard, maybe in just 54---, instead of the full 54321. For Bitcoin, this is a set of leading zeros gotten by combining the hash of the last block (and so every block back to the beginning of Bitcoin) and that lucky number, the nonce.

In the younger days of Bitcoin, all the way back in 2010, a valid block hash could look like this:


Inscrutable as this is, the leading 10 zeros are what's important - they were what determined how much work it took to commit this block to the blockchain, which got the miner 50 bitcoins at that time. This long string was the combination of the hash of the block before it, (which was 29d482430be2c7fe73627195cdcb70945ea6a56a5df104e491b329ab9d2c9083) and the lucky number this miner discovered, the nonce (which was 436235862.) In 2010, those 50 bitcoins were probably worth about $3.50.

Now, four year later, the protocol has halved the output of mining and adjusted to the much larger pool of mining computers. A valid block's proof-of-work hash looks like this:


with 17 leading zeros instead of 10, much harder to guess. The historical hash for this block, the one that chains all the way back to the 2010 block we just looked at and further, is 27c0c68f0dd1ac936882179bcbcc661373fe2303abc826b37f42c64793888370, and its lucky number was 433723834. For all this work the miner only got 25 bitcoins, which are today worth about $15,500

The way one hash leads on to another means all of these transactions are verifiable back to the very beginning, and any copy of the blockchain can be used to verify the story of any transaction.

Each node syncs to whoever has a blockchain with the most work in it -- the longest chain. And then, on an endlessly mutating and strange network, anyone can see exactly what has happened. All the numbers line up, each amount to each identity though thousands and thousands of blocks telling a story that travels through time and can't be changed.

The precariousness of Bitcoin is that all these math tricks stop working if people don't care about Bitcoin anymore. Bitcoin, before anything else, relies on the interest and attention of humans to work as an unchanging documentation of time. It is only through cooperation, a massively networked unanimity of human desire, that these math tricks can make anything on the net anywhere near as inviolable as things made of atoms. The people involved in the Bitcoin economy are participating in a massive act of desire, a passionate creation of a truth through time, true even for those who feel nothing but greed, or nothing at all.

The community around Bitcoin calls the blockchain money, and their willingness to treat it like money is what makes it money. The more important people believe Bitcoin to be, the more impervious its record of the memory becomes. The desire to make Bitcoin money concentrates people and their processing power on fixing memory, and fixed it is.

I hope that helps, Rageh. Of course, I haven’t had the chance to explain anything about how Bitcoin interacts with the rest of the world, but just in and of itself, it is an amazing achievement of math and human organizing. I doubt I have much more of an idea of where it’s all going that you, but hopefully now you have a sense of what “decentralized cryptocurrency” means.

See you around the net,

In many ways, Bitcoin has worked well, but in the messy world where we implement things, nothing ever goes quite as expected. The Bitcoin economy is a strange place, because money is a strange thing. Money is remembering in more ways than just accounting. It always expresses an identity, a past, a shared cultural aspiration, and Bitcoin is no different. Money always imposes the politics of its architecture on the useful lives of people. It is always ornamented and carefully covered in that which a culture want universally remembered. All of these qualities are as true of Bitcoin as they are of roman coins, Chinese paper money, stock certificates, credit cards, or wampum.

In the next part of this series, I’ll looks that culture, politics, and artifacts of Bitcoin, and the coins that have come since the birth of Bitcoin. In the mean time, I now have not only a Bitcoin address (1JBLPTkopLR6Q5HcQFw1JvLVtgk9YACc1D) but a Dogecoin address as well, (DE68NfqCucGxuEt19ifSzNZRkezgFkVeis) (Wow)

This is Part Two of a series, here is Part One.