Distributed Systems 2.2: The Byzantine generals problem

  Рет қаралды 66,880

Martin Kleppmann

Martin Kleppmann

Күн бұрын

Пікірлер: 34
@hackee647
@hackee647 3 жыл бұрын
Say each general has a secret key they share with only one other general. So generals 1 and 2 have a secret key that only they know, and the same is true for generals 2 and 3 and 1 and 3. Each time they send a message they send two pieces of info, the message, and the message encrypted using the respective key for it's intended recipient. When the receiving party gets the message, they decrypt the encrypted piece in the message and compare it with the unencrypted piece. If they match, they know the message is valid. If they don't match, they know the message was tampered with along the way. This technique is used frequently today using what is known as an HMAC.
@GooseBerry390
@GooseBerry390 Жыл бұрын
This won't help if the general sends the wrong message to begin with, along with the correspondingly wrong ciphertext/hash.
@ethisfreedom
@ethisfreedom Жыл бұрын
@@GooseBerry390 That’s where the blockchain comes in to play
@subratsingh6204
@subratsingh6204 8 ай бұрын
@@ethisfreedom 🤔
@yoonsikp
@yoonsikp 4 жыл бұрын
This should be renamed the among us problem
@weizhang7344
@weizhang7344 3 жыл бұрын
so true
@user-mr-m12312
@user-mr-m12312 Ай бұрын
No.
@ibra86ag
@ibra86ag Жыл бұрын
interesting that wikipedia says that "The etymology of Byzantium is unknown.", may be add this info to the wiki page as well?
@move1649
@move1649 3 жыл бұрын
thank you for the series! was searching your name from that data intensive book...looking forward to the 2nd edition!
@Bialke
@Bialke 2 жыл бұрын
In chess we called the solution "Zugzwang", when the only viable move is not to move, do not move! The thing is, that the solution is just complete, if the city is captured. So basically it is not about the communication between the troops or generals, it is about the communication between the city and the troops. In the beginning the troops are always a+1, of the city is a. Zugzwang also is meaning, that a (city) and a+1 (troops) are viable under Zugzwang. (They are living.) To live means they can reproduce, become tired and hungry and they can communicate and have a hierachy. In the end if the generals are under Zugzwang they are out, so soldiers have go in the chain of command.
@azixaka
@azixaka 4 жыл бұрын
Great addition to your book. Thank you!
@SunnyGuptaTech
@SunnyGuptaTech 4 жыл бұрын
Thanks Martin, the way of explaining the things is really awesome.
@pavelhassan7457
@pavelhassan7457 8 ай бұрын
If you look at the Bank balance and assets of all those three general and how they earned it then you can learn a lot about those general before you appointed them.
@MethodWive
@MethodWive Жыл бұрын
Very good and interesting examples
@mazenezzeddine8319
@mazenezzeddine8319 3 жыл бұрын
Sounds like the byzantine problem fits more a trust/security course rather than a distributed systems course (through it fits this latter as well given the non 100% reliability of the network/systems/infra etc.. ). Thanks Prof. Kleppmann
@SpiceAndSauce
@SpiceAndSauce 11 ай бұрын
it fit perfectly. Distributed systems heavily rely on consensus and BFT is one of the main things.
@brands2131
@brands2131 2 жыл бұрын
You said the problem is unsolvable if more then 1/3 of generals are malicious. However didn't Satoshi Nakamoto solve this problem for at least less then 1/2 the generals are malicious? He solved this problem by proposing a "Proof-of-work timechain" (now called the blockchain), and implemented it in Bitcoin in 2008. As long as 51% of miners are honest, than nobody can fool anyone in maliciously crafting a transaction in a decentralized system (no central entity or bank to authenticate valid transactions).
@_jeeves_
@_jeeves_ Жыл бұрын
I'm guessing the difference is that proof of work solves it in a probabilistic manner and doesn't provide iron-clad guarantees.
@ethisfreedom
@ethisfreedom Жыл бұрын
@@_jeeves_ It provides iron-clad guarantees, Go read the whitepaper Satoshi actually proved it with probability.
@pinkylover911
@pinkylover911 3 жыл бұрын
These problems are interesting and entertaining
@obaidali8813
@obaidali8813 2 жыл бұрын
Please make a course on cryptography thank you
@Zeropasswords
@Zeropasswords 2 жыл бұрын
you explain sooooooo well
@saikun0293
@saikun0293 3 жыл бұрын
Good explanation, understood really well!
@mlworks
@mlworks 2 жыл бұрын
Brilliant stuff.
@tomxu1761
@tomxu1761 3 жыл бұрын
what is the solution in practical to solve two generals and byzantine general probems, for example like this online shopping
@khaldrogo9451
@khaldrogo9451 2 жыл бұрын
Keep watching the series :) he talks about it.
@seguirparticipando
@seguirparticipando 2 жыл бұрын
great work!!
@RaduOleniuc
@RaduOleniuc 5 ай бұрын
Bizantine as the name come from bizantin (Greek and east europe).
@aamike82aa
@aamike82aa 3 жыл бұрын
The actual Greek pronunciation of Byzantine is the one you're using!
@theanigos
@theanigos 2 жыл бұрын
Baaizaantaaine vs bizantine :) Nevertheless always love your lecture
@eternaldoorman5228
@eternaldoorman5228 3 жыл бұрын
Bizzanteen sounds more like .biz!
@pajeetsingh
@pajeetsingh 2 ай бұрын
Bi-jan-tyne
@donaldcarnegie3018
@donaldcarnegie3018 6 ай бұрын
Honestly this is a really bad analogy to describe this problem.
Distributed Systems 2.3: System models
20:45
Martin Kleppmann
Рет қаралды 51 М.
Distributed Systems 4.1: Logical time
24:02
Martin Kleppmann
Рет қаралды 84 М.
УНО Реверс в Амонг Ас : игра на выбывание
0:19
Фани Хани
Рет қаралды 1,3 МЛН
-5+3은 뭔가요? 📚 #shorts
0:19
5 분 Tricks
Рет қаралды 13 МЛН
L6: Byzantine Fault Tolerance
26:35
Distributed Systems Course
Рет қаралды 110 М.
Distributed Systems 2.1: The two generals problem
11:35
Martin Kleppmann
Рет қаралды 55 М.
Distributed Systems 1.3: RPC (Remote Procedure Call)
19:45
Martin Kleppmann
Рет қаралды 105 М.
"The Mess We're In" by Joe Armstrong
45:50
Strange Loop Conference
Рет қаралды 383 М.
The Two Generals’ Problem
8:26
Tom Scott
Рет қаралды 7 МЛН
Distributed Systems 5.1: Replication
25:21
Martin Kleppmann
Рет қаралды 46 М.
Distributed Systems 7.1: Two-phase commit
18:45
Martin Kleppmann
Рет қаралды 67 М.
Distributed Systems 8.2: Google's Spanner
18:41
Martin Kleppmann
Рет қаралды 34 М.
Distributed Systems 3.3: Causality and happens-before
16:25
Martin Kleppmann
Рет қаралды 42 М.
Math's Fundamental Flaw
34:00
Veritasium
Рет қаралды 28 МЛН
УНО Реверс в Амонг Ас : игра на выбывание
0:19
Фани Хани
Рет қаралды 1,3 МЛН