(图片出自网络,版权归原作者所有)

原文摘自公众号,《区什么块什么链啊》之《看完就能出去神侃,来自研发第一线的“区块链”扫盲文(二)》

共识机制,是不是听上去有点不明觉厉?所谓“炒概念”,就是新瓶装旧酒,或者跨界做搬运,谁较真,谁就输了。“共识机制”,也不过如此。但还是得掰开了揉碎了说道说道,才能给那道不明觉厉的光环祛魅。

那共识是什么呢?共,就是共同的意思,识,就是认识的意思。至于机制嘛,如果你够机智,就别去管它,它就是概念和术语的滥用,给概念贴金的。所以,“共识机制”其实就是共同认识的意思,就好比人们用钱可以购买东西这种动作就是我们的一个共识。

那么,区块链用共识来做什么呢?

我们经常听说区块链的核心就是共识机制,什么POW、POA、POS、DPOS、BFT等等,我们今天就用非常直白的讲法来说说他们都是什么意思?

首先说说在区块链中占到统治地位的POW是什么意思吧。

POW的官方英语名称叫工作量证明( Proof of Work),上一篇我们不是说了谁有记账权,谁来记账谁就会得到奖励么,但是到底谁来记账呢?POW的共识用一句话来概括就是 “谁干的多,谁就有记账权”。

举个例子,有A、B、C三个人搬砖,搬砖的规则就是,谁搬的最多,那么谁就能得到所有的酬劳,注意这里的“所有”哦,就是说如果A搬砖搬的多,那么它就会拿到除了自己的那份酬劳外B和C的酬劳。这种确定酬劳的方式和我们现实中有点不大一样,并不是“多劳多得、少劳少得、不劳不得”。但是想想,这么设计也算合理,毕竟要从那么多中选择一个出来作为记账,也是一件挺难得事情。

现在被公认为区块链1.0(比特币)和区块链2.0(以太坊)的公链都是采用的POW的共识来实现的。从这一点上可以看出POW被大家的认可程度有多高了。

为什么大家对POW如此的认可呢?我觉得有这么几点:

首先,它是去中心化最为彻底的共识,你想想啊,每个人都有可能获得记账权,不存在有更高一层的意志来干预或者拍板的问题,这样的去中心化还不彻底么?

第二个就是算法简单,相对于POS、DPOS、POA来说,POW的算法实现起来最为简单了。

第三个就是因为它是去中心化最彻底的,所以想控制整个的链的难度也是最大的。

正是由于存在这些优点,所以POW目前来看依然是区块链的主流共识机制了。

说了这么多POW的好处,那它有没有坏处呢?当然有了,坏处也和它的好处一样明显。

首先,POW的共识会造成巨大的能源浪费。为了获得记账权,从而获得报酬,每个基于POW共识的节点都在时时刻刻疯狂的计算,计算什么呢?计算的都是一些对于现实中毫无意义的哈希计算,通过计算来证明自己比别人计算的速度快,比别人牛逼。这能不是巨大的能源浪费么?开着机子要费电的啊!!!

第二个就是容易产生分叉,分叉是一个术语了。还记得上一篇中说的什么是区块链的含义么?每一个区块连在一起形成了区块链。我们想的最好的情况就是每个区块非常规整的跟在另一个区块的后面。但是现实呢?现实是每个节点都想做要记账权,这么多节点,势必存在有两个节点同时都认为自己有记账权,而产生了一个区块的现象啊。这个时候就很容易产生分叉。这时候就要做个取舍,来确定谁到底有最终的记账权。这个过程就叫做区块的确认过程。至于如何进行确认,这个需要分很多情况来进行说明,这里就不一一做解释了。

第三个就是慢。POW共识,需要将一个区块发送给所有的节点,单单这一点就需要花费大量时间在网络传输上。所以采用POW共识链,处理速度都不怎么快,例如比特币,每秒钟只能处理7笔交易。以太坊相对好点,也只有每秒钟30左右,这种速度制约了他们在工业级别上的应用。

费了这么多劲才将POW说完,下来我们说说最近很火的DPOS的共识吧。

DPOS共识是 委托权益共识的英文缩写( Delegated proof of stake),就是通常说的人大代表。意思就是用户不再作为一个单独的节点存在,而是将自己的权益委托给一个能够代表自己权益的代表,由他来行事自己权利(例如记账权)的一种共识。这个对应到现实社会中比较好理解,就和选举代表差不多。这样一来,由于减少了节点的数量,从而使得处理速度大大提高。单说以EOS为代表采用DPOS的链,他们的理论处理速度可以达到每秒上百万交易。即便是在目前的测试网,也能达到每秒2000笔交易的速度。这种速度完全具备了工业级的应用。一句题外话,我们的链也是看中了EOS的这种工业级别的性能,所以底层也是采用了EOS所采用的石墨烯技术。

至于其他的共识机制目前来说影响不是很大,我这里就不一一说明了。

来我们复习一下今天说的:

1:什么是共识

2:什么是POS和DPOS共识机制?

3:他们的优缺点都是什么?

不管是哪种共识,都没有绝对的好坏。在不同历史时期和应用场景,它们可能发挥不同的作用。区块链,其实就是一种新型的生产关系,任何共识都不过是这种生产方式的注解或解决方案。这种注解或解决方案,带来的是未来商业社会的新可能,而不是技术上的新突破。要想让区块链项目落地,我们就必须正视这一点。

下次我们聊聊智能合约。

转载于:https://blog.51cto.com/fxh7622/2160783

看完就能出去神侃,来自研发第一线的“区块链”扫盲文(二)相关推荐

  1. 【收藏】网络故障处理手册大全,看完再也不怕出问题了

    第一章▶ 故障处理方法 一.网络的复杂性  一般网络包括路由.拨号.交换.视频.WAN(ISDN.帧中继.ATM.-).LAN.VLAN.- 二.故障处理模型  1.界定问题(Define the P ...

  2. linux找不到光口,以太坊查看命令_求助 输入ifconfig命令 后看不到eth0但是有eth3和eth4-CSDN论坛_区块链百科...

    Ⅰ 怎么查看 /etc/sysconfig/network-scripts/ifcfg-eth0 在你的这串英文前面加个 cat 空格就行 Ⅱ 在linux下如何通过命令查网卡配置 在linux下通过 ...

  3. 没看过这条鄙视链,别轻易说你懂区块链!

    鄙视像条食物链,是个绕不开的怪圈.在这个怪圈中,每一个人都在链条的最末端,而它正在区块链的圈子里迅速蔓延,从这些鄙视链中我们能看到区块链的生存状态: 研究技术的鄙视挖矿的 玩token的鄙视玩联盟的 ...

  4. 如何用word写书_如何将100页PPT转换成Word?1键轻松搞定,看完你还用复制黏贴吗...

    我们平常使用的office软件,就是一个强大的格式转换器!今天就和大家分享一下PPT中的多种格式转换方法,一起学习学习~ 一.PPT常用转换格式 1.PPT转Word 我们经常使用的PPT就自带转Wo ...

  5. 区块链寒冬,你必须看的一篇深度贴,你想知道的都在这里了

    区块链泡沫就要破灭了吗? 行业内最近一片惨淡,所有的社群都充满着极端的消极.无奈.悲观的情绪. 骂声哭声嚎叫声声声入耳,叫天天不应叫地地不灵! 覆巢之下,焉有完蛋. 熊市之下,不要说赛马了,能活下来的 ...

  6. 区块链时代游戏什么样,有哪些改变?Cocos引擎创始人王哲是这么看的

    7月31日,2018云创大会游戏论坛在杭州国际博览中心103B圆满举行.本场游戏论坛聚焦探讨了可能对游戏行业发展有重大推动的新技术.新实践,如AR.区块链.安全.大数据等. Cocos引擎创始人王哲表 ...

  7. 全球区块链第22周看点 | b1账号成RAM首富,EOS神秘新产品即将发布

    TokenInsight整理了5月25日-6月1日,区块链行业在底层公链.监管.行业发展.稳定币.应用落地.资产管理.交易所方面发生的大事件,并对此进行了点评. 本周值得关注的内容 TokenInsi ...

  8. 《图说区块链》读书笔记(完整版)

    书籍框架 第一章 起源 账本演变 概述区块链最直接的词汇就是分布式账本,所以有必要从记账角度探寻其诞生的意义. 书中按照时间顺序梳理了账本的历史演变过程: 旧石器时代->死记硬背和心算 有生产者 ...

  9. 5分钟带你看懂区块链浏览器

    翻译 | 王国玺 编辑 | 波波 今天币价涨了,明天币价跌了--币价在媒体笔下的涨涨跌跌,似乎成了区块链留给普通人的唯一印象. 而事实却是,绝大部分普通人甚至连区块链的门都没摸过,更别提真的去探索区块 ...

最新文章

  1. 2022-2028年中国胶片手套行业市场研究及前瞻分析报告
  2. 独家 | 一文带你读懂特征工程!
  3. Markdown编辑器editor.md的使用
  4. 【正一专栏】欧陆烽火——珍惜像伊布一样的男人!
  5. clion opencv安装_Clion+Opencv3.2终极配置教程
  6. 概率论-2.6 随机变量函数的分布
  7. Jquery的ajax提交成功后刷新页面
  8. 软件设计师习题笔记-重点习题五
  9. linux 占用缓存前10_Linux安装软件时很多人会遇到这个报错,如何解决?
  10. qt制作位图led点阵_LED显示屏知识详细讲解
  11. 09年最值得期待7大IT收购:思科收购VMware
  12. Isolate -- Be Forget Feature Of The Object-Orient Programming
  13. WPF 获取控件模板中的控件
  14. pg_repack bloat 处理测试初步
  15. bzoj1905: Soldier 士兵控制的棋盘
  16. 关于Axure的基本框架
  17. centos7分区挂载大容量数据盘
  18. 密码学归约证明——选择明文攻击下的不可区分性
  19. 一本超越期待的 C++ 书——简评《Boost程序库完全开发指南:深入C++“准”标准库》
  20. ovation系统服务器安装,OVATION系统

热门文章

  1. 移动端隐藏scroll滚动条::-webkit-scrollbar
  2. python绘制contourf填色图,设置色标,解决填图的颜色与实际数值不一致的问题
  3. 蚁群算法及蚂蚁系统的原理(js实现版)
  4. java最小因子_一个整数的所有最小因子
  5. 网络安全之KALI使用
  6. 程序员必知必会网络传输之TCP/IP协议族,共864页的详解文档让你原地起飞!
  7. 火车售票管理系统 问题陈述和词汇表
  8. 指令系统由计算机组成决定,《计算机组成原理》第5章指令系统.ppt
  9. 采用jacob读取并在网页中显示ppt、word、excel
  10. 常见的五个编译时异常和常见的五个运行时异常