区块链 PoW 与 PoS 的纷争
最近在研究区块链,可能会有一些非前端文章,感兴趣的可以关注关注哟。
有关注区块链的,肯定会经常看到这两个名词 -- PoW 与 PoS。但是很多人对他们的含义的理解存在很多偏差。那么他们的含义与区别是什么呢?

简单而言,PoW 和 PoS 是 2 种不同的对记账权利的分配方式。
PoW
POW(Proof of Work)直译过来即是工作证明,也叫工作量证明。(例子:BTC、LTC)
这是什么意思呢?这就是说,你能够获得的币的数量,取决于你挖矿贡献的有效工作,也就是说,你用于挖矿的矿机的性能越好,分给你的收益就会越多,这就是根据你的工作证明来执行币的分配方式。
比特币采用的共识算法就是 PoW,专业一点说,矿工们在挖一个新的区块时,必须对SHA-256密码散列函数进行运算,区块中的随机散列值以一个或多个0开始。随着0数目的上升,找到这个解所需要的工作量将呈指数增长,矿工通过反复尝试找到这个解。
额,通俗的说,PoW 的意思就是社会主义,按劳分配,多劳多得。
PoW 的优势与劣势
PoW机制的设计目的是保证安全。无论是在中心化还是非中心化系统中,防止作弊都是很重要的。
PoW 假设大多数人不会作弊,如果你想作弊,你要有压倒大多数人的算力(51%攻击),但不能防止矿工抱团取暖。
51%攻击:所谓51%攻击,就是利用一些虚拟区块链货币使用算力作为竞争条件的特点,使用算力优势撤销自己已经发生的付款交易。如果有人掌握了50%以上的算力,他能够比其他人更快地找到开采区块需要的那个随机数,因此他实际上拥有了绝对那个区块的有效权利。
因为作弊要付出一定成本,作弊者就会谨慎对待了。在比特币的 PoW 机制中,由于获得计算结果的概率趋近于所占算力比例,因此在不掌握51%以上算力的前提下,矿工欺诈的成本要显著高于诚实挖矿,甚至不可能完成欺诈(由于概率过低)。
PoS
PoS(Proof of Stake)直译过来就是股权证明,即直接证明你持有的份额。 (例子:恒星币,狗狗币等)
由于 BTC 的 PoW 机制决定了谁的算力强谁就能获得更多收益,拥有更大的记账权。所以类似比特币这样的 PoW 币种挖矿带来了巨大的电力能源消耗,为了解决这种情况,所以有了 PoS。
PoS 试图解决 PoW 机制中大量资源被浪费的情况。这种机制通过计算你持有占总币数的百分比以及占有币数的时间来决定记账权。
在现实世界中 PoS 很普遍,最为熟知的例子就是股票。股票是用来记录股权的证明,股票持有量多的,拥有更高更多的投票权和收益权。
额,通俗的说,PoS 就是资本主义,按钱分配,钱生钱。
PoS 的优势与劣势
Pos 当然也能防作弊,因为如果一名持有 51%以上股权的人作弊,相当于他坑了自己,因为一个人自己不会杀死自己的钱。
PoS 机制由股东自己保证安全,工作原理是利益捆绑。在这个模式下,不持有 PoS 的人无法对 PoS 构成威胁。PoS 的安全取决于持有者,和其他任何因素无关。
PoW + PoW 混合机制
所以,为了结合两种挖矿方式的优点,开始有了基于 PoW+PoS 混合共识机制的币。例如 Hcash,以及以太坊 ETH 也正在向 PoS+PoW 混合挖升级矿转变。
那么,PoW + PoW 混合机制的优势是什么呢?
它能够将受众群体最大化。
假设一个币它的机制是PoW + PoW 的混合机制。那么持有该币的用户与矿工均可以参与到投票中,共同参与该币社区的重大决定,持币者与矿工都可以影响预先编制好的更新,如隔离见证(SegWit)、增大区块等等。如果这些更新被广泛认可,无需开发者干预,链就会自动分叉以配合更新。而这才是真正的去中心化。
以混合机制来实现广义上的 DAO(去中心化自治组织)的高效运行。通过 PoS+PoW 公平的按持币数量与工作量分配投票权重,实现社区自治。
总结
PoW 和 PoS 各有优缺点。但看上去似乎是 PoW 的优点多。看看流通市值排行榜靠前的币种,大多数都是PoW。
PoS 有中心化的嫌疑,PoW 虽然能做到充分地去中心化,但是存在大量消耗能源的缺点。也许 PoW + PoW 是一种很好的解决方式,但是区块链社区是不断发展的,技术也是不断迭代更新优化的,更好的解决方式也许又会被推出来。
不断的学习,了解,才能更好的立足于区块链。
最后喜欢区块链的同学,可以进群一起交流:
互联网区块链交流群:一键加群讨论
好了,本文到此结束,希望对你有帮助 :)
如果还有什么疑问或者建议,可以多多交流,原创文章,文笔有限,才疏学浅,文中若有不正之处,万望告知。
区块链 PoW 与 PoS 的纷争的更多相关文章
- [转帖]深度解析区块链POW和POS的区别
深度解析区块链POW和POS的区别 Proof of Work 还有Proof of Stake 之前理解程了 state ... 股权的意思 还有 delegated proof of Stake ...
- [区块链]POW 与POS
POW:全称Proof ofWork,工作证明. 这是什么意思呢?就是说,你能获得多少货币,取决于你挖矿贡献的有效工作,也就是说,你电脑性能越好,分给你的矿就会越多,这就是根据你的工作证明来执行货币的 ...
- 区块链共识机制(POW、POS、DPOS等)的优缺点
一.POW:工作量证明机制 基本原理: 第一代共识机制,比特币的基础.理解起来,很简单,就是“按劳取酬”,你付出多少工作量,就会获得多少报酬(比特币等加密货币).在网络世界里,这里的劳动就是你为网络提 ...
- [区块链] 共识算法之争(PBFT,Raft,PoW,PoS,DPoS,Ripple)
近几天对区块链中几种常见的共识机制(PBFT,Raft,PoW,PoS,DPoS,Ripple)进行了总结.尽量使用简单易懂语言,篇幅较大,想了解的可以只读每个算法介绍中前边的原理.本篇文章主要参考& ...
- 区块链共识机制:POW、POS、DPOS、PBFT、POOL
共识机制作为区块链的关键技术之一,在业务吞吐量.交易速度.不可篡改性.准入门槛等等方面发挥重要的作用. 区块链是去中心化的,没有中心记账节点,所以需要全网对账本达成共识.目前有POW.POS.DPOS ...
- (转)区块链共识机制分析——论PoW,PoS,DPos和DAG的优缺点
近期,随着区块链技术在社区中的声音越来越大,业界已经开始从技术角度对区块链进行全方位的解读.作为第一批区块链技术的实现,传统比特币与以太坊在共识机制.存储机制.智能合约机制.跨链通讯机制等领域并没有非 ...
- [转帖][区块链]共识算法(POW,POS,DPOS,PBFT)介绍和心得
[区块链]共识算法(POW,POS,DPOS,PBFT)介绍和心得 置顶 2017-03-12 18:31:19 乐扣老师lekkoliu 阅读数 127953 收藏 更多 分类专栏: 技术管理 区 ...
- 任何国家都无法限制数字货币。为什么呢? 要想明白这个问题需要具备一点区块链的基础知识: 区块链使用的大致技术包括以下几种: a.点对点网络设计 b.加密技术应用 c.分布式算法的实现 d.数据存储技术 e.拜占庭算法 f.权益证明POW,POS,DPOS 原因一: 点对点网络设计 其中点对点的P2P网络是bittorent ,由于是点对点的网络,没有中心化,因此在全球分布式的网
任何国家都无法限制数字货币.为什么呢? 要想明白这个问题需要具备一点区块链的基础知识: 区块链使用的大致技术包括以下几种: a.点对点网络设计 b.加密技术应用 c.分布式算法的实现 d.数据存储技 ...
- 区块链知识博文1: 共识算法之争(PBFT,Raft,PoW,PoS,DPoS,Ripple)
注:这是本人读到的关于共识算法最全和最好的分享博文,系统的介绍了拜占庭容错技术以及共识算法的原理和常用共识算法,原文链接请见后. 目录 一.拜占庭容错技术(Byzantine Fault Tolera ...
随机推荐
- android 软键盘的使用
AndroidManifest.xml文件中界面对应的<activity>里加入android:windowSoftInputMode="adjustPan" 键盘 ...
- 【转】sed单行命令大全
文本间隔: # 在每一行后面增加一空行 sed G # 将原来的所有空行删除并在每一行后面增加一空行. # 这样在输出的文本中每一行后面将有且只有一空行. sed '/^$/d;G' # 在每 ...
- Jmeter_24个常用函数(分享帖)
JMeter提供了很多函数,如果能够熟练使用,可以为脚本带来很多方便. JMeter函数是一种特殊值,可用于除测试计划外的任何组件. 函数调用的格式如下所示:${__functionName(var1 ...
- 怎么使用IDEA
war 和 war exploded war部署首先通过IDEA生成.war工程文件,然后将WEB工程以包的形式上传到服务器,因此会替代服务器本来同名的web app项目. war exploded模 ...
- SQL作业二
目的:通过加载chinook_db文件来把数据导入到sqllite,根据题目的要求进行查询 1.sql语句的基本语法 2.join多表查询的用法 3.group by分组的用法 4.order by排 ...
- Effective Java 之-----谨慎的覆盖clone方法
1.概述 如果clone方法返回一个由构造器创建的对象,它就得到有错误的类.因此,如果覆盖了非final类中的clone方法,则应该返回一个通过调用super.clone得到的对象.如果类的所有超类都 ...
- My Calendar III
class MyCalendarThree(object): """ Implement a MyCalendarThree class to store your ev ...
- BZOJ 2388: 旅行规划 [分块 凸包 等差数列]
传送门 题意: 区间加和询问一段区间内整体前缀和的最大值 刚才还在想做完这道题做一道区间加等差数列结果发现这道就是.... 唯一的不同在于前缀和一段区间加上等差数列后,区间后面也要加上一个常数!!! ...
- Trie树 字典树-学习笔记
字符串--蒟蒻永远的阴影 对于字符串匹配 KMP很好的解决了以一个文本串匹配一个模板串的问题 但如果模板串有多个呢 这是KMP不再适用 我们引入一个新的数据结构--字典树 (当然又有像AC自动机这样更 ...
- 我的docker全套流程例子
本文来自我的github pages博客http://galengao.github.io/ 即www.gaohuirong.cn 摘要: 下文是自己从搭建docker到docker里安装mysql到 ...