As a child I was fascinated with money. Not spendable cash as such, but the fancy designs, funny-smelling paper, milled edges, gold plating, watermarks, and the endless array of national animals, heroes, myths, and mottos. One of my favorite mementos is a tiny solid gold coin given to me by my grandmother.

A story about computer science

and other improbable things.



Recently a reader asked to buy a few copies of Lauren Ipsum with a kind of digital cash called Bitcoin. I'd never played with it, but have followed its ups and downs in a vicarious way. Bitcoin is partly a currency, partly an international money exchange, and partly a rather peculiar point of view about the way the world should work [0]. I set up the software, waited hours for my local node to catch up with the global transaction log, and... there it was.

A huge disappointment. Looking at those numbers on a screen didn't move me. That's it? What does it really look like? What can I show to my children?

It turns out that Bitcoins (more precisely, a "wallet") can be represented in less than a hundred bytes. Everything else is contained in a giant shared database, a chain of signed blocks of data, on computers all over the internet. But there's no reason why that representation can't be printed and exchanged just like physical money. All you need is a standard format. So I designed one.

A "paper Bitcoin" measures 2.75 inches by 5.1 inches [1], which conveniently fits 6 to a sheet of paper. On the front is a portrait of Alan Turing, the denomination, the public Bitcoin address, and half of the private key represented as a QR code. The background is a non-repeating Penrose tile. Around the edges is a pretty Julia Set. Along with the QR code, this bill contains three interesting kinds of art generated by computer.

On the reverse is the other half of the private key as well as a copy of the Python code I used to generate the keypairs. The back is intentionally boring. To redeem the amount on the face of the bill you scan both sides with a QR reader and reconstruct the private key. Many Bitcoin applications and services allow you to import a private key directly. Obviously, it's not a good idea to take a photo of both sides of the same paper Bitcoin. [2]

The key-generating and layout software, called bitcoin-printer, is also freely available on GitHub. Enjoy!

PS -- I had been searching for something interesting to give people who find mistakes in Lauren Ipsum. For every new error you find in the book, I'll snail-mail you a 0.1BTC 1BTC paper Bitcoin.

Notes

[0] It's also, worryingly, an opportunity to make floating point math errors.

[1] Actually 7cm x 13cm, which fits A4 paper as well.

[2] I'm not sure that the keypair can't be derived, and the balance stolen, given half of an elliptic curve private key. This whole idea might be laughably insecure, at least at higher denominations. The way to find out is to get people who are smarter than I to kick it around.

Related work

Mike Caldwell mints physical Bitcoins: https://www.casascius.com/

A Bitcoin vending machine: http://blog.maschinenraum.tk/2012/07/15/bitcoin-vending-machine-exchange-euro-coins-for-bitcoin-wallets/