Bitcoin Part 1 – Byzantine Generals and Pseudonyms or: What is Bitcoin?
In preparation for my upcoming presentation at the American Translators Association’s 56th conference in Miami with the title “Bitcoin and Other Cryptocurrencies – Illegal Money or a New Global Payment Option?”, I am going to write a series of blog posts on the topic. To anticipate the answer to the question in the title of the presentation: Bitcoin is both, or neither, depending on how you look at it.
Now, that’s not a very satisfying answer, so let’s start at the beginning:
What IS Bitcoin?
Actually, let’s go back even further: What is the IDEA behind Bitcoin?
The idea behind the Bitcoin protocol is to facilitate virtual transactions without a trusted intermediary.
When you send somebody money via traditional virtual channels (ACH, EFT, wire transfer, Paypal, etc.), there is always at least one trusted central party — your bank and the recipient’s bank, Paypal, etc. If you go somewhere in person and hand over cash, you don’t need an intermediary, assuming that both parties agree on the value of the printed paper called cash, because something actually changes hands verifiably and visibly. Bitcoin enables the electronic equivalent of such a transaction, it kind of makes virtual transactions verifiable and visible.
Why do you need a trusted intermediary in traditional transactions?
Assume I have a virtual “monetary bill” (some sort of file) that is the equivalent of, say, 1000 Dollars. Now I can copy that virtual bill and send it to multiple somebodies to pay for something essentially simultaneously (because virtually), and by the time anybody notices that I initially only had 1000 Dollars, but sent out these 1000 Dollar bills to 1000 or 10000 or 100000 different people, I am long gone and sipping Pina Coladas in my private mansion on my own personal tropical island without extradition treaty.
In other words, in order to facilitate a virtual transaction without a trusted central party, one needs to find a way to make sure that
- the sender really has the initial amount of money he or she claims to have,
- the sender really sends that amount of money, that is, the amount is actually removed from the sender’s possession,
- the sender sends the amount exactly once to exactly one other person in one transaction,
- the amount is really credited to the recipient, in the right amount, and only once.
If you hand over a printed bill, the above is obvious. In traditional virtual transactions, the trusted central party performs precisely the above steps. The question now is: How can the same be achieved without a central party and without all sorts of mayhem breaking loose thanks to crooks, hackers, and thieves? The Bitcoin protocol proposes to achieve just that.
What do Byzantine generals have to do with anything?
Nothing, really. It’s just that mathematicians and computer scientists love to illustrate their thought experiments with byzantine stories (pun intended). Physicists, on the other hand, love to give their creations of the mind whimsical names, such as quarks, wino, WIMP, etc. But I digress… Back to Byzantine generals, whereby here Byzantine refers to the ancient empire.
The problem, stated by Leslie Lamport, Robert Shostak, and Marshall Pease in a 1982 paper (this links to the actual original paper), is the following:
A group of Byzantine generals is planning to attack a city from various sides. Now, the generals have to ensure somehow that they are attacking at the same time, otherwise their attack plan would fall through. However, this is not easy, since this is taking place in ancient times, thus in an era before cell phones. Also, in case there are traitors among the generals, they have to make sure that the traitors can’t thwart the overall plan by disseminating false information through messengers. Since all communication is taking place via messenger, there are lots of potential problems with communication, traitors, etc. The aforementioned (and linked) paper discusses all sorts of scenarios and analyzes them.
This is exactly the same problem I described above for the transmission of money without a trusted intermediary:
How can you ensure trust without a trusted party?
Satoshi Nakamoto to the rescue
Who the heck is Satoshi Nakamoto?
Nobody knows. It is the pseudonym of the author or group of authors of the 2009 paper that proposed the Bitcoin solution to the aforementioned Byzantine generals’ problem. You can read the paper here. The whole story about who might be behind the pseudonym would probably make for several thrilling novels, but I digress again.
In short, the proposed Bitcoin solution to the problem of building trust without a trusted party is to trust everybody by trusting nobody.
Ok, that probably sounds more complicated than it is. Back to the story with the virtual 1,000 Dollar bill above. Suppose I really send out that 1,000 Dollar bill 10,000 times. Then I would have made 10,000,000 Dollar out of 1,000. Not bad for a few mouse clicks. But, within the Bitcoin protocol, at the same time of sending out any one transaction, I also broadcast the fact that I made this transaction to everybody. Everybody in the network is aware that I sent 1,000 Dollars to somebody. I can do this 10,000 times simultaneously, no problem. But then everybody in the network knows that I sent the same 1,000 Dollars 10,000 times to 10,000 different people. And then everybody in the network “votes” on which one of the 10,000 transaction is actually valid. In other words, if I make 10,000 transactions, but only happen to have the money for 1 of these transactions, only 1 of these 10,000 transactions is validated by a sort of “voting” mechanism. This is called “mining” in cryptocurrency terminology, more about that in a later post. The transaction is then settled, I will have paid exactly 1,000 virtual Dollars (or BTC = Bitcoin) to exactly one recipient, the recipient will have received exactly 1,000 virtual Dollars exactly once, and the whole transaction is entered into a public ledger (the block chain), all without one trusted party.
In bullet points:
- I own a certain amount of Bitcoin. This can be publicly verified, because every Bitcoin transaction since the very first one (the so-called genesis block) is entered into a public ledger called the block chain. So I can’t pretend to have more money than I have.
- I can send a certain amount of Bitcoin to a recipient, and I can’t cheat while doing that, because the transaction is publicly broadcast to all nodes in the network.
- I could simultaneously send out more Bitcoins than I have, but the network decides through a process that is a bit like voting (and in reality involves solving a complex math problem) called mining, which transactions are valid and which ones aren’t.
- The transactions that are chosen as valid are entered into the block chain, the public ledger, and become final. And once I’ve depleted my verifiable amount of Bitcoins, I can’t spend more than I have, because everybody knows that I’ve got nothing.
Essentially, Bitcoin is really like electronic cash. Once you give a bill or a Bitcoin to somebody else, the transaction has irrefutably taken place. No intermediary required.
The mathematical implementation of this algorithm is described in the paper by Satoshi Nakamoto and is obviously not trivial (as mathematicians like to say), but that is the protocol in a nutshell. Everything else is just ornaments and epicycles around the basic idea, which is: Let the public decide which transactions are valid and which ones aren’t to avoid cheating.
Naturally, this public “voting process” has the potential to disrupt the banking industry, which relies on partly really old and thus not so hacker-proof transaction protocols. Wall Street and Silicon Valley venture capitalists have actually figured this out and are investing heavily in developing the protocol further (not in Bitcoin itself), while other banking institutions are not so happy. Letting the public decide which transactions are valid and which are not may also be an issue for not so democratic places on earth, which is why in said places cryptocurrencies have been declared completely illegal. In other places, such as the US, the legal situation is also not entirely clear, but for a different reason: There is a certain untraceability of crytpocurrencies, despite the public ledger, which makes it suitable for use in black markets and money laundering. And carrying around a virtual suitcase full of Bitcoins is a whole lot more inconspicuous than good old Al Capone with his suitcases full of cash. But law enforcement caught him in the end, so I think cyber-law enforcement will also catch up with cryptocurrency criminals.
Obviously, the question arises: How come criminals and drug smugglers love Bitcoin as a payment option on the dark web if there’s a public ledger? That’s because of the “crypto” part in the word cryptocurrencies. I’ll discuss this is a later post in this series, along with the mysterious “mining” operation mentioned above. The “voting”/mining part is actually much more complicated than I’ve described above. It’s not really as “democratic” as I’ve indicated above and involves a lot of computing power. But more on that in another post. I’ll also explain how to set up a wallet and how to actually transact Bitcoins. No shoveling of coal is involved. And I’ll also discuss altcoins such as Litecoin, Dogecoin, and Quatloo (yes, this cryptocurrency really exists).
However, as said in the previous paragraph, in some places cryptocurrencies are illegal, and in some places (such as California) the legal situation is in constant flux, so nothing you read here can be construed as legal or financial advice, simply because I’ve already got a full-time job and several intensive part-time hobbies, and trying to keep up with the legal situation in regards to cryptocurrencies is a full-time job in its own right.