On October 31, 2008, a message arrived on a mailing list for cryptographers. Its author, who signed as Satoshi Nakamoto, described "a new electronic cash system that's fully peer-to-peer, with no trusted third party." Below a link to a nine-page paper came a short list of the system's main properties. The first one read: "Double-spending is prevented with a peer-to-peer network."1
Of everything Satoshi could have led with, that seems an odd choice. Most people today have never heard the phrase "double spending." But to anyone who had tried to build digital money before 2008, it was the whole problem, the reason every earlier attempt had needed a company in the middle. And it is the answer to a question many newcomers quietly wonder about: if bitcoin is digital, why can't someone just copy it?
The Trouble With Copies
Anything digital can be copied. A photo, a song, a whole film: perfect copies, in a second, for free. That is wonderful for photos and terrible for money.
Paper cash avoids the problem by being a physical thing. Hand someone a ten-dollar bill and it is gone from your hand; you cannot pay with it again. Send someone a digital file and you still have the original. If digital money were just a file, its owner could send it to one person, then send the same file to another, and another. Paying with the same money more than once is called double spending, and it is the oldest problem in digital money.
Decades of Referees
For decades the only fix was a referee: someone who keeps the list of who owns what and marks money as spent. That is what your bank does. The dollars in your bank account are not files you hold. They are entries in the bank's books, and the bank simply will not let you spend the same entry twice.
Early digital cash worked the same way. In the 1980s the cryptographer David Chaum designed a system of electronic cash, which his company DigiCash later offered, and it relied on the issuer keeping a record of every coin already spent and checking each new payment against it.2 It worked, but only because one company's server stood in the middle of every payment. Satoshi's white paper names the catch with that arrangement: "the fate of the entire money system depends on the company running the mint," and every transaction has to go through them, just like a bank.3
Nothing to Copy
Bitcoin's answer starts with a surprise. There is no bitcoin file to copy. Bitcoin is a shared ledger, a record of amounts, and each entry on it is locked so that only one key can spend it.4
You can copy your wallet's keys, and you should, because that copy is your backup. But both copies unlock the same entries, so no new bitcoin appears. You can even copy the entire ledger. Thousands of computers called nodes do exactly that, each keeping its own up-to-date copy. But copying a list of who owns what does not make anyone own more. Every honest copy shows the same entries.
The Real Cheat
So the real trick a cheat would need is not copying. It is spending the same entry twice. When you pay someone, your wallet uses up one or more of your entries and creates new ones for the person you are paying. A cheat could sign two different transactions that use up the same entry: one paying a seller, and one sending the money back to himself. Both signatures would be genuine. Each transaction, looked at on its own, would be perfectly valid.
Here is the rule every node enforces: an entry can be spent only once. Both transactions reach the network, and a miner includes one of them in the next block. From that moment, every node's copy of the ledger shows that entry as spent, and any other transaction that tries to spend it is rejected. The software's own error message for it is blunt: inputs "missing or spent."5
No referee is needed. Every node checks the same history and reaches the same answer on its own. That is what the last line of Satoshi's list in 2008 meant: the proof of work that creates new coins "also powers the network to prevent double-spending."1 Mining settles which transaction came first, and every node holds everyone to it.
The Gap Before a Block
Notice which transaction was rejected, though. If the cheat's transaction to himself had made it into the block first, the seller's would have been the one thrown out. Until a transaction is in a block, it is only waiting, and a second transaction spending the same entry can still take its place. Since Bitcoin Core 28.0, released in October 2024, nodes by default will swap a waiting transaction for a conflicting one that pays miners a higher fee.6
That is why someone handing over something valuable waits until the payment is in a block, and often for a few blocks more, since each new block on top makes it harder to undo. How many to wait for, and why, is the subject of why Bitcoin transactions need confirmations.
So why can't you copy a bitcoin? Because there is nothing to copy. There is one shared ledger that every node checks for itself, and once a payment is recorded in it, that money is spent everywhere at once. Before Bitcoin, no one had made digital money work that way without a company in the middle.
Lesson 2 of the course explains what that made possible: digital scarcity, and money that moves from person to person with no middleman. What gives any money its value in the first place is where the free first lesson begins.
Sources
- Satoshi Nakamoto, "Bitcoin P2P e-cash paper," Cryptography Mailing List, October 31, 2008 (Satoshi Nakamoto Institute).
- Arvind Narayanan, Joseph Bonneau, Edward Felten, Andrew Miller and Steven Goldfeder, Bitcoin and Cryptocurrency Technologies, Princeton University Press, 2016, preface by Jeremy Clark, "The Long Road to Bitcoin."
- Satoshi Nakamoto, "Bitcoin: A Peer-to-Peer Electronic Cash System," 2008, abstract and section 2 (Transactions).
- Bitcoin developer guide, "Transactions," on outputs, inputs and spending.
- Bitcoin Core 31.0 source, tx_verify.cpp, which rejects a transaction whose inputs are missing or already spent.
- Bitcoin Core, version 28.0 release notes, October 2024, on full replace-by-fee becoming the default.