内容
工作量证明(PoW)是一种共识机制,旨在防止数位支付系统中的双重支出。
PoW 是挖矿过程的基本部分,涉及向区块链添加新的交易区块并创建新的加密货币单位。
比特币和其他几种加密货币使用 PoW 作为保护区块链网路及其资料的方法。
介绍
总之,工作量证明(PoW)是一种为防止数位支付系统中的双重支出而创建的机制。比特币和其他几种加密货币使用 PoW 作为保护区块链网路及其资料的方法。这些机制通常被称为共识演算法或共识机制,因为它们涉及多方达成共识而无需彼此信任。
工作量证明是第一个出现的共识演算法,并且与权益证明(PoS)一样仍然是最重要的共识演算法之一。 PoW 是由中本聪在 2008 年的比特币白皮书中提出的,但该技术本身早在这之前就已经被构思出来。
Adam Back 的 HashCash 是加密货币出现之前工作量证明演算法的首批范例之一。透过要求寄件者在发送电子邮件之前执行少量计算,收件者能够减轻垃圾邮件的影响。对于合法寄件者来说,这种计算几乎不需要任何成本,但对于那些发送大量电子邮件的人来说,成本很快就会变得很高。
什么是双重支出?
介绍
今天,当你付一杯咖啡的钱时,你会把钱交给一个可能把钱放在收银机里的人。你不能去街对面的咖啡店付费购买另一家具有相同评级的咖啡。然而,在数位货币系统中,有可能做到这一点。
您可能已经使用复制和贴上命令复制了电脑档案。透过电子邮件将同一文件发送给数十人也很容易。由于数位货币只不过是数据,因此需要防止人们重复消费,即在不同的地方复制和消费相同的单位。无法防止双重支出的数位支付系统很快就会崩溃。
要更深入地了解双重支出,请查看双重支出指南文章。
为什么需要工作量证明?
如果您阅读我们有关区块链技术的文章,您就会知道加密货币用户不断向网路广播交易。但是,这些交易不会立即被视为有效,只有当它们被确认并添加到区块链时才会发生。
例如,比特币区块链充当所有用户都可以看到的公共交易资料库(帐本/帐本)。想像这样的场景:您和三个朋友有一个笔记本来追踪您的比特币交易。每当你们中的一个人想要进行价值转移时,你们就写下:
Alice 支付给 Bob 5 BTC; Bob 向 Carol 支付了 2 BTC,等等。
但每次您进行交易时,您都会参考资金来自的交易。因此,如果 Bob 以 2 BTC 向 Carol 付款,输入将如下:
Bob 向 Carol 支付了 2 BTC,该金额来自先前与 Alice 的交易。
我们现在有办法追踪 BTC 单位。如果 Bob 尝试使用他刚刚发送给 Carol 的 2 个 BTC 进行另一笔交易,每个人都会立即知道。该组织不会允许将交易添加到笔记本中,因为这 2 个 BTC 已经被花掉了。
这在小团体中可以很好地发挥作用。由于每个人都互相认识,他们很可能会就哪些朋友可以向笔记本添加交易达成一致。但如果我们想要 10,000 名参与者呢?记事本的想法并不合适,因为没有人愿意相信陌生人来管理交易记录。
这就是工作量证明的用武之地。它确保用户不会花他们无权花的钱。透过结合博弈论和密码学,PoW 演算法允许任何人根据系统规则更新区块链。
工作量证明如何运作?
想像一下,上面范例中的笔记本是区块链,但我们不会一一添加交易 - 相反,我们将它们分组为区块。我们向网路报告交易,创建区块的用户将把交易包含在候选区块中。只有当其候选区块成为确认区块时,交易才会被视为有效,这意味著它已被添加到区块链资料库中。
验证交易和新增区块的过程称为挖掘。采矿既昂贵又困难,但也能带来回报。区块奖励来自用户的交易费用和协议创建的新比特币。
工作量证明机制要求矿工(创建区块的用户)投入电力和运算能力等资源来处理候选区块的资料哈希,直到找到难题的解决方案。
对区块资料进行哈希处理意味著运行哈希函数来产生区块的身份(哈希)。它的工作原理就像输入资料的“指纹”,并且对于每个区块来说都是唯一的。
换句话说,矿工需要验证和收集待处理的交易,将它们组织成候选区块,并将区块资料通过哈希函数传递以创建有效的哈希。如果他们设法找到候选区块的有效哈希值,他们会将其广播到网络,将该区块添加到区块链中,并收集挖矿奖励。
当矿工将其候选区块和哈希传输到网路时,其他网路参与者重复哈希过程以验证输出是否确实有效。
尽管需要进行多次哈希尝试才能找到有效的哈希,但人们很容易确认生成的哈希是否正确。只需要透过杂凑函数发送相同的输入(区块资料)并检查输出是否相同。
在工作量证明中,您必须提供杂凑满足特定条件的数据,但您不知道如何到达那里。您唯一的选择是透过杂凑函数提交资料并检查其是否满足条件。否则,您将不得不稍微更改资料才能获得不同的哈希值。更改资料中的单一字元将导致完全不同的结果,因此无法预测结果。
所以如果你想创建一个区块,你将在玩一个猜谜游戏。通常,您会获取有关要添加的所有交易的资讯以及一些其他重要数据,然后将它们放在一起。但由于您的资料集不会更改,因此您需要添加可变资讯。否则你总是会得到相同的哈希结果。这个变数资料就是我们所说的随机数。这是一个您每次尝试都会更改的数字,因此您每次都会得到不同的杂凑值。
简而言之,挖掘是从区块链收集资料并使用随机数对其进行杂凑的过程,直到找到特定的杂凑结果。如果你找到满足协议设定条件的哈希值,你就有权将新区块广播到网路上。完成此操作后,网路中的其他参与者将更新其区块链以包含已建立的新区块。
对于当今顶级的加密货币来说,这些条件很难满足。网路上的哈希率越高,找到有效哈希值就越困难。这样做是为了确保不会太快找到块。
正如您可以想像的那样,尝试猜测大量杂凑值对于您的计算机来说可能代价高昂。你浪费了计算周期和电力,但如果你找到有效的哈希值,协议将奖励你加密货币。
让我们回顾一下到目前为止所看到的内容:
挖矿既困难又昂贵,但它提供了网路安全。
成功产生有效区块的矿工将获得新发行的加密货币和交易费用的奖励。
产生有效的哈希值需要时间,但其他使用者可以透过重复哈希过程轻松验证其有效性。
到目前为止,一切都很好。但如果有人试图作弊怎么办?是什么阻止用户将虚假交易插入区块并产生有效的哈希值?
这就是公钥密码学的用武之地。我们不会在本文中深入讨论,但请查看什么是公钥加密技术?进行综合分析。简而言之,有一些加密技巧可以让任何用户检查某人是否有权转移他们试图花费的资金。
当您建立交易时,您需要对其进行签名。网路上的任何人都可以将您的签名与您的公钥进行比较,看看它们是否匹配。他们还将检查您是否确实可以支出资金,以及您的流入总和是否大于流出总和(即您的支出是否超过您的支出)。
任何包含无效交易的区块都将被网路自动拒绝。试图欺骗的代价是昂贵的。你会浪费你的资源而得不到任何回报。
这就是工作量证明的美妙之处:作弊的代价高昂,但对于那些诚实行事的人来说却是有利可图的。任何理性的矿工都会寻求投资回报,因此他们应该以更有可能带来收入的方式行事。
工作量证明 (PoW) 与权益证明 (PoS)
除了 PoW 之外,还有多种共识演算法,其中最受欢迎的一种是权益证明(PoS)。这个概念起源于 2011 年,并已在以太坊和其他几个协议上实现。
在权益证明系统中,矿工被验证者取代。不涉及挖矿,也无需竞相猜测杂凑值。相反,用户是随机选择的——如果被选择,他们必须提出(或「伪造」)一个区块。如果该区块有效,每个人都会收到由该区块的交易费用组成的奖励。
并非任何用户都可以被选择——协议会根据几个因素来选择他们。为了获得资格,参与者必须锁定股份,这是区块链本机货币的预定数量。质押的作用类似于保释:大量资金旨在阻止被告逃避审判,就像验证者阻止质押以阻止作弊一样。如果他们行为不诚实,股份(或一部分)将被没收。
与工作量证明相比,权益证明有一些好处。最值得注意的是,碳足迹更小——由于 PoS 不需要高性能矿场,消耗的电力只是 PoW 消耗的一小部分。
也就是说,PoS 没有与 PoW 相同的记录。尽管挖矿可能被认为是浪费,但它是唯一经过十多年测试的共识演算法。自推出以来,比特币 PoW 已确保了数万亿美元的交易。要肯定地说 PoS 可以达到相同的安全水平,需要对 Stake 进行长期的适当测试。
最后的考虑因素
工作量证明是双重支出问题的最初解决方案,并且已被证明是可靠且安全的。比特币已经证明,我们不需要中心化实体来防止同一笔资金重复使用。透过巧妙地使用密码学、杂凑函数和博弈论,去中心化环境中的参与者可以就金融资料库的状态达成一致。
进一步阅读
什么是加密货币挖矿以及它是如何运作的?
什么是公钥密码学?
什么是区块链共识演算法?
免责声明:此内容「按原样」呈现给您,仅供参考和教育目的,不提供任何形式的保证。内容不应被视为财务、法律或专业建议,也不旨在推荐购买任何特定产品或服务。您应该向专业顾问寻求自己的建议。对于第三方贡献者提交的贡献和文章,请注意,所表达的观点仅代表各自作者的观点,并不一定反映币安学院的观点。如欲了解更多详情,请在此阅读我们的免责声明。数位资产价格可能会波动。您的投资价值可能会增加或减少,并且您可能无法收回投资金额。您对自己的投资决定承担全部责任,币安学院不对您可能的任何损失负责。本资料不应被视为财务、法律或专业建议。欲了解更多信息,请参阅我们的使用条款和风险声明。