05 | 分布式共识:存异求同
该思维导图由 AI 生成,仅供参考
- 深入了解
- 翻译
- 解释
- 总结
本文介绍了分布式共识技术中的三种主流算法:PoW、PoS和DPoS。PoW算法通过节点的计算能力来竞争记账权,但存在效率低、资源消耗大的缺点。PoS算法则以系统权益代替算力来决定记账权,节能但容易形成垄断。为了解决PoS的垄断问题,DPoS算法引入了受托人,由被社区选举的可信账户来拥有记账权。文章还对这三种算法进行了对比分析,并解释了一致性和共识的区别。总的来说,本文通过深入浅出的方式介绍了分布式共识技术的核心概念和具体方法,为读者提供了一次全面的技术学习之旅。
《分布式技术原理与算法解析》,新⼈⾸单¥59
全部留言(32)
- 最新
- 精选
- 易儿易看完之后有几点没搞太明白: 1.比特币“钱”从哪来? 2.Pow算力如何证明?(老师讲的没看明白) 3.通过什么方式向全网传播? 4.“挖矿”到底是一个主动行为还是一个被动行为? 发生交易--》需要记账--》证明算力获得记账权--》记账--》收益,大致过程是这样吗? 如果对的话,那“挖矿”是不是更像一个“赏金猎人”?
作者回复: 1.比特币系统设置的总量2100万个比特币,系统中的每个节点都有记账权,成功获得记账权的节点将获得记账奖励,这个奖励就来自于这个总量,这个就是比特币的来源。因为和黄金采矿原则类似,谁付出谁得到,因此记账的过程也被称形象的称为挖矿。 2.“利用区块的 index、前一个区块的哈希值、交易的时间戳、区块数据、nonce值,通过SHA256计算出一个哈希值”,这里的nonce值是无法直接猜出的,所以只能大量的穷举尝试并且每次尝试都需要一定的计算量,因此需要大量的计算量才能得到一个正确的nonce值。每次为了争取一个区块的记账权,而获得正确nonce值的过程就是一个PoW(工作量证明)的过程。 3.主要是通过广播的方式。 4.挖矿当然是一个主动行为,首先加入到比特币网络就是一个主动过程,就是为了通过挖矿获利。你理解的没错,总体过程就是你说的这样。“赏金猎人”这个词用的很形象:)
2019-10-10517 - 陈狄可以理解为一致性是对外的,强调如何从外部看表现一致。而共识是对内的,强调如何达成一致吗?
作者回复: 可以这么理解
2020-06-213 - 忆水寒老师,有个地方没明白。POW算法计算题目的难度,那么各节点的题目怎么来的?
作者回复: 各节点题目一样,就是计算文中所讲的哈希结果的前k位是0,这个k会指定,且在每个节点上是一致的
2019-10-0223 - 风华笔墨我觉得吧,首先分布式选举和分布式共识都保证了一致。分布式选举可以类比之前讲的集中式算法,而分布式共识问题可以类比分布式算法。关于分布式记账作假问题,如果所有的交易全有美国把控,你说别国会放心吗?这就是我国会大力支持区块链的原因了吧。
作者回复: 分布式选举和分布式共识确实都保证了一致性,一致性是分布式中最重要的一个特征。
2020-05-202 - zhaozp打卡文章学习: 1、分布式一致性是指集群对外提供的数据或状态是一致的,强调的是结果。分布式共识是指集群达到一致的过程,强调的是过程。 2、分布式在线记账的3种共识算法:PoW、PoS和DPoS。 以前没接触过区块链的知识,学习了。。。
作者回复: 业精于勤,加油!
2019-10-081 - leslie打卡:提的东西没听过😂😂😂
作者回复: 以前没听过没关系,现在听过就可以了:)
2019-10-06 - 哇哦我感觉老师如果能够在相应章节,推荐相关的阅读资料或者书籍,这样可能会更好。2019-10-1047
- Stealer我感觉老师如果能够在相应章节,推荐相关的阅读资料或者书籍,这样可能会更好。 我也希望老师如果可以的话, 加上这个.2019-10-1013
- 张理查分布式技术原理与算法#Day8 选主就是所有节点通过第一轮的“都听我的”到选举后的“我听你的”(当然也可能是“还听我的”)来达成共识。所以选主的过程是对主节点达成一致的共识问题,因此再来看一下分布式共识。 那么上面讲到的基于多数投票策略就是分布式共识的一种方法。而选主的本质是希望中央集权,即所有节点默认为最终要听主节点的协调与管理,但这样会有随着规模增加主节点存在性能瓶颈问题、以及篡改或破坏主节点后(比如篡改元数据)产生的安全问题。因此人们想到了”去中心化“。 中央集权制就是主节点掌管集群状态,因此对于某些去中心化场景,需要另一套分布式共识机制,来对集群的状态达成一致。去中心化的典型应用就是区块链技术,而区块链中所有机器参与记录交易,并达成一致的过程,就是我们常常提到的“挖矿”。这其中达成一致就不能通过简单的投票来决定,主要包扩“POW工作量证明”、“POS权益证明”和“DPOS委托权益证明”三种共识技术。 能够发现这三种共识技术都是证明,证明什么呢?证明的是自己有能力完成记录,从而获得记账的权利。所以虽然说是去中心化,但其实最后还是要争夺某项权利,要听某个机器的,只不过这个机器不是固定的(算法控制得好的话),因此去中心化的分布式共识包括了获得权力和达成一致两个关键点,而中心化的分布式共识实际上是将获得权利这一步提前做好了,主节点就是权利中心。 POW用来争夺记账权的衡量标准是计算能力(也就是算力),计算能力越强,单位时间的工作量肯定就越大,也就更可能获得记账权。而如何评判算力如何呢?就是所有节点都去解决一道超级难的题目,谁先解决谁就有能力。 它包括以下几个步骤: 1. 客户端广播交易 2. 各节点收到交易信息,放入一个区块,开始计算本节点区块的Hash值,竞争挖矿 3. 谁先计算完成,向全网广播这个区块 4. 各节点收到区块后验证该区块,通过后便接受,放在末尾 既然是算力决定记账权,那么好处就是当你拥有全网51%的算力后才可能攻击比特币,且允许全网50%的节点出错。但是资源耗费过多、共识达成周期长、效率较低。 POS股权模式是对POW的改进。衡量标准是系统权益。这里的权益是指的每个节点占有货币的数量和时间。持有的币越多,持有的时间越长,谁就有权力记账。这样看来POS不用浪费资源来挖矿,一定程度上缩短了共识达成所需要的时间。但劣势也很明显,就是头部节点会出现垄断(退化成了中心化) 为了解决垄断问题出现了DPOS,即委托权益证明。其实有点像多党派的模式,普通节点先推选出党领导(受托节点),再由党领导参与总统竞选。也就是先选出k个党代表,权利完全相等,党代表下去拉票,党代表展示能力的方式也是算力。最终党代表通过持股大小来竞选成为最终记账者。党代表如果性能不稳定或者存在污点(如恶意篡改行为)会被普通节点踢出候选人名单,而且每个周期会调整一批受托节点,从而消除了造假和垄断。但存在投票意愿不高等问题。 那么一致性和共识是什么关系呢? 一致性是指对外呈现状态的稳定性,比如不希望自己的支付宝余额自己看到的和银行看到的不一样。 共识是指就某项问题达成一致,比如“大家都认为你能力强”,“大家都知道你家钱多”等。 共识算法是保证一致性的核心技术2019-12-268
- Li Shunduo请问Paxos分布式共识算法和这章的算法的区别?2019-10-1234