Cover photo

Picture a fork in Internet history

Part 2 of the Byzantine Generals post. Focused on how the Bitcoin network solves this distributed computing problem.

gm creators!

Thank god it's Friday 😎

This week felt really long and really quick at the same time. I hope everyone has some fun weekend plans :)

Yesterday, I wrote a post on the Byzantine Generals problem and its precursor the Chinese Generals problem. Overall, I think I did a really good job of the first two sections where I discuss the context, nature of the problem, and the historical roots but I did a poor job of diving deeper into how Bitcoin is related and what the key takeaways are. My guess is that because I was writing the post at around 11 pm last night, I got tired while doing the research and just decided to taper off quickly at the end.

I received some good feedback from friends on Farcaster as well. Thanks @moritz for the input :)

You can check out the post here! Let me know what you think and if there's anything else you think I can improve on.

If you're new to The Bigger Picture, welcome! I'm writing about the history of cryptography and the internet.

Subscribe below so you don't miss any future TBP posts πŸ₯‚


Today at a Glance πŸ‘“

I haven't done this with any of my posts so far, but today will be a good day to try. For this post, I'm going to do a follow up on my piece yesterday on Byzantine Generals.

As I mentioned above, I didn't do a great job of providing details of the solutions to the problem so I'm going to give a mapping of how the Bitcoin architecture compares.

Think of it as a part 2 of the post. If you didn't get to read part 1, here's a tl;dr:

  1. Chinese generals problem released in 1975. It helped us understand that 100% verification of communication between two nodes (generals) is impossible when there is no guarantee that communication channels are secure.

  2. Byzantine Generals problem released in 1982. It added a layer of complexity. What if there's multiple generals and some of them are bad actors?

  3. For the last 40 years, the distributed systems engineers have been working to find reasonable solutions to this problem. Most famously, Satoshi releasing the bitcoin whitepaper in 2008 showed us how it's possible through a proof of work mechanism.

Okay, with that context, let's dive into how the Bitcoin network approaches the Byzantine Generals problem.

Remember, the key takeaway is that we are looking to find ways where trust is not needed.

Sections Below

  1. Side by side comparison

  2. Let the games begin

Let's dive in πŸš€


Side by Side Comparison

Let's go through each part of the Byzantine problem and find the direct comparison in the Bitcoin network. This will help give context on how the network works.

1. The Generals:

  • Byzantine Generals: Leaders of different parts of an army that needs to coordinate an attack without direct communication.

  • Bitcoin Network: Miners that run nodes. Each miner is like a general. They need to agree on the state of the blockchain without trusting each other.

2. Communication:

  • Byzantine Generals: Messengers pass information between the generals. Some messengers might be captured or might be spies, delivering false information.

  • Bitcoin Network: Transactions and blocks broadcast across the network. Nodes can be malicious and broadcast false or double-spend transactions.

3. Agreement or Consensus:

  • Byzantine Generals: All generals need to decide on a common plan (attack or retreat) to avoid failure. Even if some generals are traitors, the honest ones should reach a consensus.

  • Bitcoin Network: All miners need to agree on the version of the blockchain (which transactions are confirmed). Even if some miners act maliciously, the honest majority ensures the integrity of the blockchain.

4. The Problem of Trust:

  • Byzantine Generals: Generals don’t know whom to trust. Some generals could be traitors, passing false plans to sabotage the mission.

  • Bitcoin Network: Miners don’t inherently trust each other. Some could try to double-spend or launch other attacks. Trust in the network doesn't come from the participants but from the cryptographic proof and economic incentives.

5. Solution Mechanism:

  • Byzantine Generals: The challenge is to devise a strategy where messages between generals, even with potential traitors, lead to a consensus.

  • Bitcoin Network: Proof of Work (PoW). Miners solve complex problems to add a new block. This computational work ensures that altering the blockchain's history is costly. The longest chain (with the most PoW) is considered the valid one, disincentivizing malicious miners unless they control more than 50% of the total computational power.

6. Rewards and Incentives:

  • Byzantine Generals: In the traditional analogy, there isn't an explicit reward system. The benefit is collective success in their mission.

  • Bitcoin Network: Block rewards and transaction fees. Miners are incentivized to act honestly because they receive rewards in the form of new bitcoins and transaction fees for every block they add to the blockchain.

7. Potential for Malicious Behavior:

  • Byzantine Generals: Traitor generals could spread misinformation to make the honest generals fail in their coordinated attack.

  • Bitcoin Network: Dishonest miners could attempt a double spend, or a 51% attack, but such actions are made expensive and, therefore, improbable due to the PoW mechanism.

The key thing to takeaway here is that Satoshi implemented the proof-of-work system which requires the Bitcoin generals (miners) to utilize electricity in order to mine and send messages to other nodes in the network.

This process is expensive and thus deters miners to act maliciously. Realistically, it would be very expensive to overtake 51% of the network.


Let the games begin

Other examples that solve the Byzantine General problems include:

  • Byzantine Fault Tolerance

  • Proof of Stake (Ethereum)

  • Proof of capacity

  • Proof of authority

I won't get into the details of these in today's post. But Satoshi's whitepaper changed the game in how we think about distributed nodes working together to run a network. In the decade after, we've seen many solutions similar to the proof-of-work concept come out. Most notably, the Ethereum team was able to migrate from proof of work to a proof of stake solution.

Bitcoin unlocked the ability to effectively operate a decentralized network knowing that some actors may be operating with a ulterior motive.

So why does all this matter? Who cares if we found a way around the Byzantine Generals problem? Does it even impact most people?

Well like with most great technology, the impacts takes decades for the mainstream population to feel it. The Bitcoin whitepaper presented a fork in the internet's future: does it continue to be dominated by giant corporations or is there a chance to rebuild the infrastructure in a citizen friendly way?

Uuntil 2008, any digital activity had to have one central party that nodes could trust. There was simply no way to operate a network without giving the master keys to one single node. And this is exactly where the digital power divide grew and grew until it was too late. The internet was intended to be a network that was fair for everyone. But very quickly, it became clear that the original vision was not going to play out as expected - governments and large Silicon Valley companies seized market shares as they provided server capabilities for their products.

In return, the rest of the digital citizens became automatic slaves to these institutions. To use the internet and participate in the networks, the average Joe had no choice but to give in and use apps like Facebook.

And for the longest time, everyone was led to believe that life on the web would be no different than IRL: a few powerful people control the rest of the population. But, with the Bitcoin solution to the Byzantine Generals, the world found a side door that hopefully billions of people will walkthrough one day to start living in a digital world that gives fair ownership and appropriate governance. And that's exactly what everyone working in crypto is working for - building an open garden where normal people can enjoy features, products, and economic incentives that most of us could never have even imagined.


That's all for today's post - if you enjoyed, I'd love for you to share with your friends in crypto :)

Remember, all posts are collectible as well! Just connect your wallet and mint away.

Also, if you haven't already, please join The Bigger Picture community by hitting the subscribe button below. You can connect your wallet or add your email!