Paper notes and metal coins are annoying and inconvenient, and we have the Internet now. So digital money sounds like a useful idea.
The solution the developed world has mostly come to is just using our banks – you have an account, and you can move money to other people’s accounts, via debit card, credit card, PayPal or whatever. The central authority means it’s sensibly regulated, errors and thefts can be reversed and so on. It’s also a smooth transition from paper money – the same thing, but you can do new things with it.
But this isn’t a complete solution; a shop’s card reader could be down, your payment gateway might charge fees, you may want to send money to someone not on the same banking network, you value your privacy, checking in with your bank every time gets annoying. So a form of digital cash would be nice too.
Bitcoin is a cryptocurrency: a thing on the Internet which lets you exchange unique digital objects. The objects would take approximately forever to fake; so if we assign the objects a value, we can exchange them in a manner something like we do money. It’s decentralised, so you can send money without having to go through a central clearing house.
Bitcoin’s transaction ledger, the blockchain, is touted as immutable: nobody can alter it without it being obvious that it was tampered with. The idea is that there’s no central control, anyone can run a Bitcoin node and be part of the network, nobody can block or reverse your transactions and you don’t have to take anyone’s word for the state of the system.
You know what feels like “money” to you. You can earn it, you can spend it on all manner of things, you can save it for the future, you can invest it. It might be
in a bank account with a card, or notes and coins in your pocket – it still feels like a pound or a dollar to you.
In practice, bitcoins are a bit like money in a bank account with a debit card, except without any sort of safety net – it’s all unregulated and uninsured, there’s no way to reverse a transaction, and there’s no customer service.
If you “have” bitcoins, you don’t actually have them as things on your computer. What you’ve got is a Bitcoin address (like a bank account number) and the key to that address (another number, which works like the PIN to the first number).2 The Bitcoin address is mentioned in transactions on the blockchain; the key is the unique thing you have that makes your bitcoins yours.
To send bitcoins from your address to another address (a bit like sending money over PayPal), you generate a transaction that is sent out into the network and added to the next block of transactions. Once it’s in a block, that transaction is publicly visible on the blockchain forever.
A wallet is where you keep your keys. Usually it’s a program which generates and manages addresses, and presents you with the balances. You can generate a new address, and its matching key, any time you like.
You can keep your bitcoins’ keys in a hot wallet (like a current account), running on a computer attached to the Internet, or in a cold wallet (like keeping money in a sock under your bed), which might be on a computer not attached to the Internet, or could just be the keys themselves stored on a USB stick or even printed out on paper.
If you lose the key, your bitcoins are lost forever. If someone else gets the key, they can take your bitcoins. If you send bitcoins to a nonexistent address, they’re lost forever. If you send bitcoins to the wrong address, you can’t reverse it. Bitcoin security can be very technical, difficult and unforgiving; most people just keep their bitcoins on an exchange. These have their own problems, as we’ll see later.
Bitcoin transactions are grouped into blocks. Each block has a cryptographic hash, a number which is quickly calculated and serves as a check value – like the last digit of a book’s ISBN, or the last digit of your credit card, but longer – to verify that a chunk of data is the chunk you think it is.
The hash will be completely different if there’s even the slightest change in the data; as such, two things with the same hash are routinely assumed to be identical.
Advocates describe Bitcoin as “secured by math.” This is because cryptography works on arithmetic that is fast going forward and impossibly slow to reverse – to make another data chunk with the same hash, you would have to go through a stupendous number of possible values. (Bitcoin mining relies on this – see below.)
Each block is also hashed with the chain of previous blocks, so the entire chain of blocks is tamper-evident. This is called a Merkle tree, invented in 1979 and widely used since.3 What Bitcoin does is make possible a tamper-evident public ledger of transactions, without any central authority declaring whose ledger is the official one.
The Bitcoin blockchain contains every confirmed transaction back to January 2009. In June 2017 it passed 120 gigabytes and is growing at 4GB a month.