第2章:比特币如何实现权力下放(三)

2.5把一切放在一起

开采成本现在让我们来看看矿业经济学。我们提到作为一个矿工经营相当昂贵。在目前的困难水平上,找到一个单独的区块需要大约10个哈希的计算能力,区块奖励大约是25比特币,这在当前的汇率下是一笔可观的金额。这些数字可以轻松计算一个人是否有利可图,我们可以用简单的语句来获得这个决定:

假如

挖矿奖励>挖矿成本

矿工盈利

挖矿奖励=区块奖励+交易费用

挖矿成本=硬件投入+运营成本(电力,冷却,等等.)

从根本上来说,矿工获得的矿业奖励是按照区块奖励和交易费来计算的。矿工问自己如何与总支出(硬件和电费)进行比较。

但是,这个简单方程式有一些复杂。首先,你可能已经注意到,硬件成本是固定成本,而电费是随时间推移的可变成本。另一个复杂的因素是,矿工获得的奖励取决于他们发现区块的速率,这不仅取决于硬件的能力,还取决于他们的哈希率与全局哈希率的比值。第三个复杂因素是,矿工的成本通常以美元或其他传统货币计价,但他们的报酬是用比特币计算的。所以这个方程在任何给定的时间都有比特币汇率的隐藏依赖。最后,到目前为止,我们假设矿工有兴趣诚实地遵守协议。但矿工可能会选择使用其他一些采矿策略,而不是总是试图延长最长的有效分支。所以这个方程式并没有抓住矿工可以采用的不同策略的所有细微差别。实际上,分析它是否有意义的是一个不容易回答的复杂的博弈论问题。

在这一点上,我们已经很好地理解了比特币是如何实现分散化的。现在我们将再回顾一下高层次的观点,把它们放在一起,以便更好的理解。

让我们从身份开始吧。据我们所知,参与比特币协议并不需要现实世界的身份。任何用户都可以随时创建任意数量的假名密钥对。当Alice想在比特币中支付Bob时,比特币协议并未提及Alice如何得知Bob的地址。给定这些假名密钥对以身份,交易基本上是广播到比特币对等网络的消息,这些消息是将硬币从一个地址传送到另一个地址的指令。比特币只是交易输出,我们将在下一章中更详细地讨论这一点。

边栏比特币没有像美元这样的固定面额,特别是没有“1比特币”的特殊名称。比特币只是交易输出,而在当前的规则中,它们可以具有8位小数位精度的任意值。最小可能值为0.00000001BTC(比特币),称为1中本聪。

比特币对等网络的目标是将所有新交易和新区块传播到所有比特币对等节点。但是网络是非常不完善的,并且尽最大努力来传递这些信息。系统的安全性不是来自于对等网络的完善。相反,安全来自于本章大部分章节研究的区块链和共识协议。

当我们说一个交易被包含在区块链中时,我们真正的意思是交易已经取得了大量的确认。在我们充分相信其包含之前,没有固定的数字来定义需要多少确认是必要的,但是六个是一种常用的启发式。交易获得的确认越多,你可以更确定此交易是共识链的一部分。经常会有孤儿区块或区块不能进入共识链。有各种各样的原因可能导致区块成为孤儿区块。该区块可能包含无效的交易或双重支付的尝试。它也可能只是网络延迟的结果。也就是说,两个矿工可能只相差几秒钟之内找到新的区块。所以这两个区块几乎同时广播到网络上,其中一个将不可避免地被孤立。

最后,我们看看哈希谜题和挖矿。矿工是特殊类型的节点,他们决定在这场创建新区块的游戏中竞争。只要其他矿工建立在他们的区块上,他们就会获得新造币比特币(新区块奖励)和现有比特币(交易费)的奖励。一个微妙但至关重要的一点:说Alice和Bob是两个不同的矿工,Alice的计算能力是Bob的100倍。这并不意味着Alice将永远赢得比赛,找到下一个区块。相反,Alice和Bob找到下一个块的概率,基本符合100比1的比例。从长远来看,Bob平均发现区块的数量是Alice的百分之一。

我们预计矿工通常会处于靠近经济均衡的地步,在这个意思上,它们在硬件和电力方面的支出大致等于他们获得的回报。原因是如果矿工一直亏损,她可能会停止采矿。另一方面,对比采矿硬件和电力成本,如果采矿非常有利可图,则采矿硬件将进入网络。哈希率的增加将导致难度增加,每个矿工的预期奖励将会下降。

这种分布式共识的概念渗透到比特币相当深层次。在传统货币中,共识确实在一定程度上发挥作用。具体来说,由一个共识程序决定了货币的汇率。在比特币的世界也是如此;我们需要对比特币的价值达成共识。但是在比特币方面,另外,我们需要对分类账的状态达成共识,这就是靠区块链来实现的。换句话说,即使你拥有再多比特币账户,也要达成共识。当我们说Alice拥有一定数额或数量的比特币时,我们实际上意味着,在比特币对等网络,如在区块链中记录的那样,考虑所有Alice地址拥有比特币数量的总和。这是比特币真实性的本质:比特币的所有权只不过是其他节点同意给定的一方拥有这些比特币。

最后,我们需要对系统的规则达成共识,因为偶尔,系统的规则必须改变。比特币的规则有两种类型的变化,分别被称为软叉和硬叉。我们将把这些差异的讨论推迟到后面的章节,我们将详细讨论这些差异。

获取一个加密的外来物品。另一个微妙的概念是引导。比特币的三个不同想法之间存在棘手的相互作用:区块链的安全性,采矿生态系统的健康状况以及货币的价值。我们显然希望区块链可以保证比特币成为一种可行的货币。为了使区块链得到安全,对手必须无法压倒共识程序。这反过来意味着对手不能创建大量的采矿节点,占据新区块创建的50%或更多。

但是什么时候会实现呢?一个先决条件是拥有一个健康的采矿生态系统,由大量诚实的协议跟随节点组成。但是,这是一个前提条件——我们什么时候可以确定很多矿工会把很多的计算能力投入到这个解决哈希谜题的竞争中呢?那么,如果比特币的汇率相当高,那么他们只可能这样做,因为他们收到的回报是以比特币计算的,而他们的支出则是美元。因此,货币的价值越高,这些矿工的竞争将会越激烈。

但是什么能确保货币的高价值和稳定的价值呢?这只有在一般用户都信任区块链的安全性的情况下才会发生。如果他们认为网络可能在任何时候被攻击者淹没,那么比特币作为货币就不会有很大的价值。所以在区块链的安全性,健康的采矿生态系统和汇率之间有这种互相依赖、相互依存的关系。

由于这种三向依赖的自然循环,每一种的存在取决于其他方面的存在。当比特币第一次被创造时,这三个都不存在。除了Nakamoto自己经营采矿软件之外,没有其他矿工。比特币作为一种货币没有很多价值。事实上,这个区块链是不安全的,因为没有大量的采矿工作,任何人都可以轻而易举地完成这个过程。

比特币是如何从没有任何这些属性到拥有所有的三个的,这没有一个简单的解释。媒体的关注是故事的一部分——越多人听到比特币,他们对采矿的兴趣就越大。他们对采矿越感兴趣,人们对区块链的安全性就越有信心,因为现在有更多的采矿活动在进行,等等。顺便说一句,每个想要成功的新的Altcoin也都必须以某种方式来解决这个由自举引起的问题。

51%的攻击最后,让我们考虑一下如果共识失败会发生什么,比如,实际上51%的攻击者控制了Bitcoin网络中的51%或以上的采矿能力。我们会考虑各种可能的攻击,看看这些攻击者实际上可以执行哪些攻击。

首先,这个攻击者可以从现有的地址窃取硬币吗?你可能已经猜到了,答案是否定的,因为除非你颠覆了加密技术,否则从现有的地址窃取是不可能的。仅仅颠覆共识进程是不够的。这并不完全明显。假设51%的攻击者创建一个无效的区块,它包含一个无效的交易,代表从攻击者不会控制的现有地址中窃取Bitcoins,并将其转移到自己的地址。攻击者可以假装这是一个有效的交易,并继续在这个区块上建立新的区块。攻击者甚至可以成功地使其成为最长的分支。但是其他诚实的节点根本不会接受这个无效交易的区块,并且将继续基于他们在网络中找到的最后一个有效区块进行挖掘。那么,将会发生的是,出现我们称之为链中的分叉。

现在,从攻击者试图花费这些无效硬币的角度来想象这一点,并将其发送给一些商人比如Bob作为某些商品或服务的支付方式。Bob自己可能运行一个比特币节点,它将是一个诚实的节点。Bob的节点将拒绝该分支并将其视为无效,因为它包含无效的交易。

它是无效的,因为签名没有签出。所以Bob的节点将简单地忽略最长的分支,因为它是一个无效的分支。因此,颠覆共识是不够的。你必须颠覆加密技术来窃取比特币。所以我们得出结论,51%的攻击者进行这个攻击是不可能的。

我们应该注意,这只是一个思想实验。实际上,如果有51%的攻击迹象,可能会发生的情况是开发人员会注意到这一点,并作出反应。他们将更新Bitcoin软件,我们可能期望系统的规则(包括对等网络)可能以某种形式发生变化,从而使此攻击更难成功。但我们不能很好的进行预测。所以我们在一个发生了51%的攻击的简化模型中工作,但除此之外,系统的规则没有任何变化或调整。

让我们考虑另一次攻击。51%的攻击者可以抑制一些交易吗?假设有一些用户,卡罗尔,攻击者真的不喜欢他。攻击者知道卡罗尔的一些地址,并希望确保这些地址中的任何一个硬币都不可能花费掉。那可能吗?由于他控制了区块链的共识过程,攻击者可以简单地拒绝创建任何包含卡罗尔地址的交易的新区块。攻击者可以进一步拒绝创建基于包含这些事务的区块。然而,他不能阻止这些交易被广播到对等网络,因为网络不依赖于区块链或共识,我们假设攻击者并没有完全控制网络。攻击者无法阻止交易到达大多数节点,因此即使攻击成功,至少攻击正在发生也很明显。

攻击者可以改变块奖励吗?也就是说,攻击者可以开始假装进行区块奖励,而不是25比特币,说100比特币?这是对系统规则的更改,并且因为攻击者不能控制所有诚实节点正在运行的Bitcoin软件的副本,这也是不可能的。这类似于攻击者不能包括无效交易的原因。其他节点根本无法识别区块奖励的增加,因此攻击者将无法使用它们。

最后,攻击者能否以某种方式破坏比特币的信心?好吧,我们来想象会发生什么。如果存在各种各样的双重支付尝试,即节点没有扩展最长有效分支,以及其他尝试攻击的情况,那么人们可能会决定,比特币不再作为他们可以信任的分散分类帐。人们将会对货币失去信心,我们预计比特币的汇率将会暴跌。事实上,如果单单知道有一个控制51%哈希能力的组织,那么即使攻击者不一定要试图发动任何攻击,人们也可能失去对比特币的信心。所以这不仅是可能的,但实际上可能的是,任何一个51%的攻击者都会摧毁对货币的信心。事实上,如果51%的袭击能够实现,这将是主要的实际威胁。考虑到对手必须投入支出攻击比特币并实现51%的大多数,我们所描述的其他攻击没有一个从财务角度来看是真的有意义的。

希望在这一点上,你已经真正了解Bitcoin如何实现分权化。你应该对Bitcoin中的身份如何工作,交易如何传播和验证,P2P对等网络在比特币中的作用,如何使用区块链来实现共识以及如何解决哈希谜题和挖掘工作有一个很好的指导。这些概念为理解比特币的更细微细节和细微差别提供了坚实的基础和良好的启发点,我们将在下一章中看到。

进一步阅读

比特币白皮书:

中本聪比特币:点对点电子现金系统。(2008年)

Nakamoto,Satoshi. B itcoin: A peer‐to‐peer electronic cash system. (2008)

工作证明的原始应用:

Back,Adam. Hashcash‐a denial of service counter‐measure. (2002)

Paxos共识算法:

Lamport,Leslie.Paxos made simple. ACM Sigact News 32.4 (2001):18‐25.

今日思考

什么决定哪个区块将最终出现在共识分支上?

大脑烧起来~

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180817A1HM7B00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

同媒体快讯

扫码关注云+社区

领取腾讯云代金券