Byzantine Generals’ Problem: So what’s bitcoin?

I’ve had a great response to my first few posts and one of the questions/feedback I received most has been “Can you talk about what exactly bitcoin is?” So let’s take a step back and explore some of the philosophical and mathematical under pinnings that led to the bitcoin network.

The bitcoin network is widely credited to have solved the Byzantine Generals’ Problem, at least in practice, with certain assumptions.

That was a loaded phrase, so let’ explore in detail.

The Byzantine General’s Problem was first defined in 1982 by a group researchers out of SRI International. The research was in part funded by NASA and is a reflection of the impact the government has had in starting the internet revolution.

The scenario is defined as a group of Byzantine Generals with their troops camped around an enemy city. Communicating only by messenger, they must agree upon a battle plan. However, one or more of them might be traitors and might try to confuse others.

The Byzantine Generals’ Problem succinctly summarizes the issue with decentralized networks and why a centralized body (commercial banks/central banks/governments) has played a critical guarantor role in facilitating electronic transactions.

In our Byzantine Generals’ problem, the only way to ensure the messages are relayed accurately is for a centralized messenger dispatch system that ensures accurate messages are dispatched to all the generals.

To analogize this to an electronic financial system – the generals are merchants and individuals looking to make transactions, relaying messages is the finite money supply and the amount of money people possess (and thus can use for transactions) and the traitors are fraudsters that would take advantage by disseminating incorrect information. The incorrect information would be a fraudster looking to spend the same amount of money in multiple places (double spending).

Let’s say we develop an electronic financial system where a certain set of characters is generated for each unit of currency. Without a centralized authority certifying whether the unit of currency has been spent or not, a fraudster could send the same unit of currency to multiple individuals and hence spending the same “unit currency” in multiple places.

This is an important issue to consider since the existence of a centralized authority (banks) is what ultimately causes transaction costs to balloon (middle man taking cuts) and is why (to this day) international money transfers can take up to 5 days.

The bitcoin network solves this problem by storing each transaction on a public ledger known as the “block chain”. Every transaction that is made on the bitcoin network is recorded on to the block chain. If all the transactions are recorded on a block chain, what prevents somebody from tampering with it or spending the same bitcoin multiple times? The answer is in the decentralized manner in which bitcoin authenticates transactions.

Each time a block chain is created, a distributed network of nodes goes through a mathematical process to verify each of the transactions on the block chain. Each transaction on the block chain is related to the previous transaction. Whenever a node solves the mathematical problem to verify the transactions, it is rewarded with a certain amount of bitcoins. This reward is issued to encourage individuals to solve the mathematical problems to verify the transactions.

The nodes are setup by individuals looking to “mine” bitcoins by solving the mathematical problems. As long as the number of honest nodes is greater than fraudelent nodes, the authenticity of the system is maintained.

In essence, Bitcoin is an electronic currency that allows it to be used as a store of value without need of a centralized authority. The implications of this are significant especially as it relates to transaction costs and speed of transaction. It’s these technological properties that give it fascinating implications for use as a money supply and many other applications outside of currency yet to be explored.

For the more technically minded, here’s a link to the original research paper on the Byzantine Generals’ Problem. And here’s a White Paper from the founder of Bitcoin, Satoshi Nakamoto, whose identity is still unknown.

P.S.  I didn’t have any charts for this blog post but I thought it was interesting to find out I live 13 minutes from SRI International, where the research paper for the Byzantines Generals’ Problem was written.

Screen Shot 2015-06-01 at 11.28.58 PM


2 thoughts on “Byzantine Generals’ Problem: So what’s bitcoin?

  1. Good description! To be used for transactions, there has to be some sort of valuation mechanism for it to be an effective medium of exchange. In the days before “money”, barter was the way that transactions were conducted. You figured out how many chickens would pay the blacksmith for new hinges for the gate. While there are bitcoin exchanges, the value fluctuates over orders of magnitude. There are also various types of bitcoins, so it will be very interesting to see how this all shakes out. (And Dread Pirate Roberts was just sentenced to life in prison for operating Silk Road, to add some spice to the story.)


  2. Great to hear your thoughts Prof. Hopper! You raise a couple of interesting points.

    Bitcoin definitely has very high volatility at the moment which is one of it’s biggest road blocks for wider adoption. Having said that, the volatility is probably a function of it being traded in a very nascent marketplace and will mitigate in the future as more participants emerge.

    The competition between various cryptocurrencies is going to be interesting. As a society we have become used to there being only one domestic currency (US Dollar), but in the 1800s during the “Free Banking Era” (between 1837 and 1866) almost anyone could issue currency. So in this case, progress seems to be taking us to the past :).


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s