区块链: 技术驱动金融 - 第2章 比特币如何做到去中心化 (5)

    此外,值得注意的是,就算包含双重支付的链成为了长期共识链的一部分,那也不能说系统出错了。如前面所述,双重支付交易只是从道德角度看是不合法的,但是从技术角度看,这笔交易是完全合法有效的,这就如同Alice把钱从她的一个银行卡转到了另一个银行卡一样。Bob必须确保这笔钱真正转到了自己的地址上(即确认成为长期共识链的一部分),才允许Alice下载软件,他有责任,也应该这么做,因为这关乎Bob自己的利益。如果双重支付交易成为长期共识链的一部分,那么Bob就应该拒绝为Alice提供服务。

    事实证明,双重支付成功的概率将随着确认数的增加而指数级下降。在比特币生态系统中,最常见的方法是等待6次确认,并不是6这个数字有什么特殊含义,只是在等待时间和确认所感兴趣交易会被纳入长期共识链之间有一个较好的平衡而已。在实际应用中,我们可以根据应用场景需求,决定确认的次数

2.4 奖励机制与工作量证明

    前面章节主要关注比特币去中心化的技术手段,接下来让我们考虑另一个重要的部分:比特币的奖励机制。

    之前我们试图大胆地相信这样的假设,在随机选择节点时,至少有50%的可能会选中诚实节点,这或许是有问题的。如果对颠覆这个过程的参与者有金钱奖励,这个关乎诚实的假设就格外成问题,这种情况下我们无法真的假设某个节点是诚实的,因为一旦有金钱奖励,某些节点可能就会变得诚实起来。因此问题变成了:我们是否可以给予表现诚实的节点奖励?相反,回想一下双重支付的问题,我们是否可以惩罚那个创建双重支付区块的节点?

    事实上,不管是奖励还是惩罚,都没有办法在现实中执行,因为我们不知道这些节点的真实身份,所以不能给这些节点的家庭住址寄去现金,或者抓捕那个创建双重支付区块的节点。但如果有某种可以代替的数字货币,我们就可以实行奖励机制。

    在此之前,我们讨论的都是使用抽象的算法来实现分布式共识,并不针对某个具体的应用。现在我们要跳出模型,建立分布式共识过程的应用实际上就是一种货币,明确地说,我们要以这种货币为单位来奖励那些表现诚实的节点

区块奖励

    比特币里有两种不同的奖励机制,其中一种为区块奖励

    根据比特币的规则,创建区块的节点可以在区块中加入一笔造币交易,并指定这笔交易的接收地址,通常,节点会指定一个属于自己的地址。我们可以把这个视为对节点在共识链上进行创建区块服务的报酬。比特币规定,每生产21万个区块,区块奖励的金额就减半,根据区块生成的速度,大约每4年减半一次。在比特币最初的4年,区块奖励是50个比特币,现在处于第二个4年,所以现在一个节点产生一个区块获得的奖励是25个比特币。

    区块奖励是如何做到鼓励诚实行为的?咋一看,一个节点无论提议了一个正当有效的区块还是恶意伪造,都会受到奖励,但事实并非如此。想一下节点是如何才能获得区块奖励的,造币交易和其他每一笔交易一样,只有当它被纳入共识链,才会被其他节点所接受。这个设计激励节点想方设法去让其他节点延展它们自己的区块。因此如果网络中大部分节点遵循“延展最长支链”的规则,那这样的设计将激励所有节点遵循这个规则。

    前面说到,每产生21万个区块,奖励减半,因此至少在目前的规则规定下,比特币的总数量为2100万个。注意,这是新比特币被允许创造出来的唯一途径,没有任何其他新增比特币的机制。按照现在的奖励发放速度,在2140年比特币区块奖励就发完了。这是否意味着这个系统到2140年就无法继续运行,并且因为不再有奖励诚实行为的激励而变得不安全?事实上不是这样的,因为区块奖励只是比特币奖励机制之一,还有另一个奖励机制——交易费,可以确保系统安全运行。

交易费

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzpyjx.html