Author

Topic: Explain to me the Byzantine Generals' Problem and how Bitcoin solves it. (Read 3396 times)

vip
Activity: 1428
Merit: 1145
Thanks to YouTube, it can now be explained in ~1 minute: https://www.youtube.com/watch?v=wRcNtS_XA2o

Or, go for the ~5 minute version: reXBT.com - Andreas M. Antonopoulos - L.A. Bitcoin Meetup - "The Network Effect" - Part 2 of 8 (something about his voice makes me able to listen to him all day)
hero member
Activity: 510
Merit: 500
A general has several commanders.  The general has to give an order to attack or retreat via messenger.  He knows a small percentage of the messengers are traitors and they will give the wrong order.  if a section of the troops were to attack when they are supposed to retreat they would be wiped out.  If the general simply gave the orders directly to each commander nothing can be done to stop the traitors from giving the wrong orders to portions of the troops.  Instead, each commander must send messengers to all the other commanders and the order is not "finalized" until each commander receives the same message from every other commander.  That way a small number of traitors cannot cause a false order to be relayed.  It takes extra work but that extra work circumvents a disaster.  It depends on the majority of the players to be honest (like Bitcoin miners).

Bitcoin is actually a variation on the Byzantine General's Problem.  For one thing you don't have to wait for each and every node to agree but it is the general idea.
newbie
Activity: 48
Merit: 0
Have you read this? https://bitcointalk.org/oldSiteFiles/byzantine.html

tl;dr The Byzantine Generals' problem is a problem of agreement, where no one party can come to agreement with another without fear of misinformation. The longest blockchain (in terms of hashes to produce) requires at least 51% of the network. Therefore the majority of the network agrees on the content of that blockchain. In Bitcoin's case the blockchain contains transactions, which are Bitcoin. Anyone can easily verify the blockchain's parts, nobody can practically alter part of an existing blockchain without invalidating it, and nobody can practically create a substitute.

It's a practical workaround of the problem by combining pow with the  blockchain. Not exactly a solution.
The blockchain is an example of proof-of-work. It is a practical solution to the Byzantine Generals' problem because although it is possible to deceive network participants or cripple the network, it is prohibitively difficult.
sr. member
Activity: 252
Merit: 250
Skoupi the Great
Since it's difficult for individuals to achieve concensus without a trusted third party, bitcoin uses the blockchain as the trusted 3rd party.
And blockchain can be trusted because it's difficult to change its entries.

It's a practical workaround of the problem by combining pow with the  blockchain. Not exactly a solution.
Still pretty elegant and genius.
sr. member
Activity: 672
Merit: 253
I'm a little confused as to how Bitcoin solves the Byzantine Generals' Problem. Please help!  Grin
Jump to: