Lambda向大家分享了为什么拜占庭系统因为区块链才火起来,其中包含拜占庭系统,拜占庭等知识点,遇到此问题的同学们可以参考下
拜占庭系统发展到今天,已经30余年了,直至2009年中本聪以比特币和区块链的模型,重新优化了拜占庭问题的解决方案,拜占庭系统才逐渐被大众所熟知。既然拜占庭问题可以就人类伟大的信任决策问题达成共识协议,那么为什么区块链技术出现之前,拜占庭系统没有引起大家的关注?区块链真正做了哪些改变呢?
小资料:
拜占庭问题起源于1982年,由Lamport教授首次提出,其实它可以简单的理解成:3个或者更多的将军共同决定进攻还是撤退的问题。
在这个决策过程中,如果一个将军发布命令,其他的人作为将军的下属,分别决定进攻还是撤退。但是如果一个甚至多个将军或者下属叛变,决策就会出现问题,无法达成一致的行动。如果司令叛变,他可能会让一个下属进攻,另一个撤退。同样,如果一个下属叛变,他可能告诉其他的下属说司令让他进攻,而告诉另一个下属说司令让他撤退,这样就无法达成一致的行动。拜占庭系统正是为了在这个复杂的环境中,取得一致决策而设计。
我们之前创业做的业务主要是帮助企业快速定位App上线后,并发压力加大导致的使用缓慢,崩溃等系统问题的原因。所以积累了大量的业务数据,所以应用了各类的分布式系统的方案。今年,我们团队主要在做Lamba分布式存储的业务,是要解决区块链中DApp数据没有分布式存储可用的痛点。所以,我们完整的经历了分布式系统到区块链的演进过程。对于拜占庭系统的变化分享给大家。
小资料:
拜占庭问题起源于1982年,由Lamport教授首次提出,其实它可以简单的理解成:3个或者更多的将军共同决定进攻还是撤退的问题。
在这个决策过程中,如果一个将军发布命令,其他的人作为将军的下属,分别决定进攻还是撤退。但是如果一个甚至多个将军或者下属叛变,决策就会出现问题,无法达成一致的行动。如果司令叛变,他可能会让一个下属进攻,另一个撤退。同样,如果一个下属叛变,他可能告诉其他的下属说司令让他进攻,而告诉另一个下属说司令让他撤退,这样就无法达成一致的行动。拜占庭系统正是为了在这个复杂的环境中,取得一致决策而设计。
我们之前创业做的业务主要是帮助企业快速定位App上线后,并发压力加大导致的使用缓慢,崩溃等系统问题的原因。所以积累了大量的业务数据,所以应用了各类的分布式系统的方案。今年,我们团队主要在做Lamba分布式存储的业务,是要解决区块链中DApp数据没有分布式存储可用的痛点。所以,我们完整的经历了分布式系统到区块链的演进过程。对于拜占庭系统的变化分享给大家。
一、N>=3f+1就可以解决拜占庭问题
首先。我们先来理解拜占庭将军问题能够被解决的客观限制N>=3f+1。也就是说,如果拜占庭将军问题的节点数为N<=3f,那么拜占庭将军问题将无法解决,我们以3个节点为例来推导: