上班打卡下班打卡,想必大家都并不陌生。总有各种方式证明你确确实实是工作过。(加油,打工人!)
区块链中也有着工作量证明机制(POW)。那么什么是工作量共识机制呢??
工作量证明(ProofofWork,简称POW)是共识机制的一种。可简单理解为一份证明,证明你做过一定量的工作。即我通过查看工作结果就能知道你完成了指定量的工作。矿工通过付出算力来挖矿进而获得相应的区块奖励。
在数字货币系统中,工作量证明主要通过计算来猜测一个随机数(nonce),使它拼凑交易数据后的内容的Hash值满足一个规定的上限。由于Hash值在数学上主要采用群举法碰撞所得,需要进行大量的计算,只要能提出满足要求的随机数的矿工就被认为付出了一定的工作量,可以获得这个区块的奖励。哈希运算是一种最常见的工作量证明机制。该机制主要利用哈希运算的复杂度,通过给定的初始值,进行简单的值递增运算,利用哈希算法求解,直到找到满足条件的碰撞值。不同的哈希算法求得的碰撞值长度不同,所需工作量和安全性能也不同。碰撞值的长度越长,则所需的工作量越大。对于同一个哈希算法,可以设定哈希值前N位为0的个数来调节运算难度,比特币就是根据这一原理调节挖矿难度的。
优点:完全去中心化,安全性高,所有节点可参与挖矿,节点自由进出,每个节点是公平的,被攻击成功的可能性小。