POW(Proof of Work)工作证明是区块链技术中用于解决双花攻击(double-spending attack)、51%攻击(51% attack)等暴力攻击的一种记账方法。它是一种防止投机程序员通过对某一给定的特定块提交多次记账申请,以便获取多笔奖励的技术。
POW(Proof of Work)的概念源自于其他计算机科学领域的难题概念,它的基本思想是“尽可能用多少时间、金钱和其他资源去完成一项工作”。POW的实现是任何想要入账的节点都必须把数据进行某种有效的加密方式,然后解决一个计算难题,这个计算难题可以是解决几何级数问题、编码问题、哈希算法和数学游戏等。节点在提交记账申请时必须先把加密的数据提交到某一种计算难题,当节点能够正确解决该计算难题时,就可以对某一块提交记账申请。
POW机制能够防止投机者和有特殊目的攻击者进行双花和51%攻击。出于安全考虑,每一个投机者都会在提交申请前在矿池里计算POW难题,这意味着如果投机者想要提交多次申请,它就必须用更多的资源去完成一项计算任务,也就是说它必须花费更多的时间、金钱和其他资源来完成同样的任务,而这种资源的消耗使之不可行,也正是POW获得了如此多的成功的原因之一。另一个原因就是POW有能力抵抗把多个网络节点带入小规模攻击的实现,因为POW能够避免任何单一的攻击者对网络中的多个节点拥有大量的力量。
总之,POW(Proof of Work)工作证明是区块链技术中用于解决双花攻击(double-spending attack)和51%攻击(51% attack)等暴力攻击的一种记账机制。它要求每个投机者为了提交记账申请前必须先在矿池里计算POW难题,以避免投机者进行双花和51%攻击,而它也能够抵抗把多个网络节点带入小规模攻击的可能性。