浅谈对POW的认识和理解

目录

 

一、理清POW:POW共识机制的原理

二、 工作量证明的优缺点

POW的优点

POW的缺点

三、 本人对POW存在问题的解决思路


一、理清POW:POW共识机制的原理

在区块链中,核心的技术之一就是工作量证明机制(Proof-of-Work)。这种共识机制比较早地在区块链应用中得到落地实现,比如为人熟知的比特币系统中节点构成的比特币网络,就是这种技术的成功实践。历经这么多年了,比特币网络相对较为稳定也是得益这一成功的POW共识机制。

抽象地来说,POW的共识机制,就是每次转发或者记录一条消息,你需要证明你对转发或者记录这条消息付出了一定的努力和代价。当你的证明有效的时候,你将能够收获到奖励,如果存在不诚实的行为,将会收到处罚。

在区块链系统中,节点的工作量证明,就是通过计算来猜测一个随机数(nounce),拼凑打包好的交易数据,得到满足某种条件的一个安全哈希函数值(在比特币中的条件限定为函数值前0的个数)。由于hash难题在目前计算模型下需要大量的计算,这就保证在一段时间内,比特币系统只会收到一小部分节点提交的符合条件工作证明。符合条件的工作证明结果会成为一个区块,在P2P网络中进行广播。收到区块的用户验证节点会进行验证该区块的正确性,得到超过50%的用户验证节点的证实后,该区块将会加入到当前比特币系统中最长的公链上。然后在这一条最长链上继续进行数学难题的计算。虽然系统中可能会出现短时间链的分叉,但较短链上的区块将会在一定时间内视为废块丢弃,最终会有一条链成为最长的链。

比特币的共识过程就是每个节点的矿工通过强大的算力来解决一个具有很大难度的动态可调整的数学难题(猜测nounce),争相获得记账权的,获得系统比特币奖励的过程。这就是一个依靠矿机等硬件提供强大算力来进行的计算比赛,将付出不小的经济成本(电力,硬件,维护等)。如果没有成为那个算出nounce的幸运节点时,意味着之前付出的代价都石沉大海,投资惨败。但这也保障了,如果存在恶意节点尝试破坏区块链,计记账的时候,需要付出极大的经济成本,这也为区块链的安全性增加了一道防护的屏障。

整个共识过程虽说是算法和算力在对峙,但背后也是经济博弈模式在支撑。举一个形象的例子来说明一下:设想一下超市排队的情景,超市只有一个出口,付款台只有一个而且付款的人需要排成一队(公链),可能会有人不受规矩形成分叉的队伍(分叉链),但这是超市管理员会检查队伍,认为最长的队伍是合法的,不合法的分叉队伍需要重新排队,新到来的人只要足够理智,就会自觉地选择最长地队伍进行排队。这是因为一旦选择短队伍被要求重排,他们就需要付出代价和接受惩罚,将要排队的人从利益最大化以及理性的角度来讲,自然会选择具备更大胜出可能性的长队伍。

 

二、 工作量证明的优缺点

POW的优点

  1. 算法简单,实现容易:依托安全可靠的加密算法如SHA256,巧妙地形成了一种简单粗暴的工作量机制。猜测随机数的方式比较简单易懂而且对于节点来验证数据的真实性有效性也是简洁明了。

  2. 节点之间无需交换额外的信息即可达成共识:由于维护同一条公链,那么节点只需要接受一个待验证的区块然后对其加以验证就可以完成区块链的记录。

  3. 破坏区块链系统需要投入极大的成本:由于工作量本身就意味着耗散经济成本,理论上存在超过50%的恶意节点达成共识来攻击区块链网络,但是这需要付出极大的经济成本。投入远大于产出,所以从经济的角度上保证了系统的安全。

POW的缺点

  1. 浪费能源:大量的矿机,电力的投入,就只用在计算一个哈希值上。挖矿失败,投入的能源就是付之一炬,没有任何回报。这成为POW为人诟病的一个重要的原因。

  2. 区块交易效率低:这是由于系统设计限制的,全网都在进行算力竞赛,争相记账,同时全网节点又要进行验证区块以及确认达成一致的公链,可想而知系统运行的速度短时间内不会有特别快的提升。比特币每秒的交易次数低于10次,成功记账的时间间隔为10分钟,这和现今动辄每秒上万的金融交易来比较,真是蚂蚁见大象。这也是比特币难以真正商业化的一个关键因素。

  3. 存在弱去中心化:随着矿机设备的产生,越来越多的算力集中到一起。现如今依靠普通的个体户已经无力挖矿成功,矿工们算力集中化程度高,中心化趋势加强,可能存在51%的系统攻击。

三、 本人对POW存在问题的解决思路

个人认为,Pow共识机制模型最尖锐的矛盾体现在能源消耗,性能,安全性上。如何保证能源消耗小,性能又高,安全性还有保障,是一个重大的难题。在不改变现有POW原理思路的前提下,必须找到一个能源,性能,安全的平衡点。以下提出个人的一些可能行之有效的思路。

  1. 搭载物联网设备:共识过程主要有两个:一个是挖矿计算,需要极强的算力;一个是验证计算,对设备的要求不高;挖矿计算过程依托专用的矿机,而验证计算可以依赖海量的物联网智能设备来进行,这样实现挖矿和验证过程一定程度上的分离,原来的矿机设备不必参与验证过程,将更珍贵的能源应用在挖矿计算上,可提高交易效率,同时也合理利用了硬件资源和能源。

  2. 实现更为高效可靠的网络传播。

  3. 努力发展基础学科:找到更为有效的新型材料,提供更为高效,能耗更小的计算设备。

  4. 挖掘新型绿色能源,减少能源污染。。。

你可能感兴趣的:(Blockchain)