比特币现金:面向全球的点对点电子现金
Bitcoin Cash(BCH)于 2017 年 8 月 1 日从 Bitcoin 硬分叉而来。它没有自己的白皮书——本页面所呈现的是 Satoshi Nakamoto 撰写的 Bitcoin 原始白皮书,Bitcoin Cash 以此作为其点对点电子现金愿景的技术基础。
Abstract
Bitcoin Cash是一个于2017年8月1日从比特币块链">区块链分叉而来的点对点电子现金系统。为应对比特币的扩展性限制而诞生的Bitcoin Cash通过提高区块大小上限来实现更高的交易吞吐量和更低的手续费,恢复了比特币作为日常交易实用交换媒介的原始愿景。通过32MB区块、自适应难度调整算法以及持续的协议开发,Bitcoin Cash旨在通过链上扩展来服务于全球点对点现金。
Bitcoin Cash项目源于比特币社区内部关于网络应如何扩展以适应不断增长的需求的根本性分歧。一方主张采用基于SegWit构建的闪电网络等链下扩展方案,另一方则认为提高区块大小上限是最直接且经过验证的扩展方法。当无法达成共识时,后者执行了硬分叉,创建了一条保留比特币交易历史、同时实现更大区块大小上限并排除SegWit的新链。本文描述了Bitcoin Cash的技术规格、设计理念和发展方向。
Introduction
中本聪于2008年发表的比特币原始白皮书描述了"一种纯粹的点对点电子现金",将"允许在线支付从一方直接发送给另一方,而无需通过金融机构"。比特币作为日常交易交换媒介的这一愿景是其早期采用和社区发展的核心。早期的比特币支持者经常将低交易手续费和快速支付作为相对于传统金融系统的关键优势加以引用。
然而,随着比特币在2010年代中期日益普及,一个根本性的限制开始制约其作为电子现金的实用性。最初作为临时反垃圾邮件措施引入的1兆字节区块大小">块大小限制,为网络可以处理的交易数量设定了人为上限。随着对区块空间需求的增加,用户不得不通过提供更高的交易手续费来竞争有限的容量。到2017年初,比特币的中位交易手续费已上涨至数美元,使小额交易在经济上不切实际。在拥堵高峰期,手续费可超过20美元,交易可能数小时甚至数天未得到确认。
这种情况代表了对比特币原始承诺的根本背离。一个旨在实现点对点电子支付的系统,对于其被创造出来要服务的用例而言正变得过于昂贵和缓慢。当比特币越来越被定位为"数字黄金"——一种价值储存手段而非交换媒介时,许多社区成员和开发者认为这是对项目创始原则的背叛。
Bitcoin Cash的创建正是为了通过最直接的扩展方法——提高区块大小上限来解决这一危机。通过允许每个区块容纳更多交易,Bitcoin Cash旨在恢复低手续费和快速确认,使点对点电子现金再次变得实用。该项目的支持者认为,链上扩展不仅在技术上可行,而且是中本聪最初设想的方法,并引用了中本聪讨论随着网络增长而提高区块大小限制的早期通信作为依据。
2017年8月1日Bitcoin Cash的诞生是加密货币历史上最重要的事件之一。它是比特币历史上第一次因对协议未来方向的真正哲学分歧而引发的重大链分裂。这次分叉表明,在去中心化系统中,不可调和的争端可以通过允许各方独立追求自己的愿景来解决,最终由市场决定结果。
Background: The Scaling Debate
比特币扩展性之争是开源软件开发历史上最具争议性和持续时间最长的纷争之一。其核心是一个看似简单的问题:比特币网络应如何提高其交易处理能力?然而,这个问题的答案涉及治理、去中心化、技术哲学以及比特币身份认同本身的根本性问题。
比特币1兆字节的区块大小">块大小限制由中本聪于2010年引入,作为防止攻击者用超大区块泛滥网络的拒绝服务攻击的临时措施。当时,实际的区块使用量远低于这一限制,中本聪建议未来可以通过简单的代码更改来提高该限制。然而,随着比特币使用量的增长和区块开始填满,提高限制被证明远比任何人预期的更具争议性。
一个阵营与Bitcoin Core开发团队相关联,主张应保持较小的区块大小以维护去中心化。他们的理由是,更大的区块会增加运行节点">全节点的计算和带宽要求,可能将普通用户排除在外,并使节点运营集中在资源充足的实体手中。他们提出了一条替代性扩展路径:SegWit,一种在不提高名义大小限制的情况下重组交易数据以有效增加区块交易容量的协议变更,结合闪电网络等链下解决方案,将大部分交易移出主区块链。
对立阵营包括知名开发者、矿工和企业,他们主张提高区块大小上限是最简单、最经过验证且最紧迫的解决方案。他们认为1兆字节的限制是一个从未打算成为协议永久特性的任意约束,由此导致的手续费上涨和拥堵正在将用户和商家从比特币中赶走。他们对SegWit的复杂性持怀疑态度,并担心当时仍主要处于理论阶段的闪电网络可能永远无法兑现其廉价即时交易的承诺。
争论通过一系列提案和反提案不断升级。2015年由Mike Hearn和Gavin Andresen提出的Bitcoin XT试图将区块大小增加到8MB。Bitcoin Classic提出了更温和的增加到2MB的方案。Bitcoin Unlimited提出完全取消区块大小限制,允许矿工通过市场动态设定自己的限制。每项提案都引发了激烈的辩论,但没有一项达到无争议硬分叉所需的压倒性共识。
也进行了多次妥协尝试。香港协议(2016年2月)中,Bitcoin Core开发者和矿工同意在部署SegWit后进行2MB硬分叉,但由于硬分叉部分未被推进,协议最终瓦解。纽约协议(2017年5月),也称为SegWit2x,提议立即激活SegWit,随后在六个月内进行2MB硬分叉。该协议由代表比特币大部分算力的50多家公司签署,但遭到Bitcoin Core开发团队和相当一部分用户社区的强烈反对。
当妥协显然不可能时,大区块阵营决定单方面行动。2017年8月1日,他们执行了比特币区块链的硬分叉,创建了初始区块大小上限为8MB的Bitcoin Cash。这不是一个轻率的决定——它需要分裂区块链、网络、社区和品牌。但Bitcoin Cash的支持者们相信这是保护比特币作为点对点电子现金原始愿景的唯一途径。
The Fork
Bitcoin Cash硬分叉于2017年8月1日在区块高度">块高度478,558处执行。在该节点,比特币区块链分裂为两条独立的链:随着SegWit激活而延续的原始链比特币(BTC),以及区块大小上限增加至8MB的新链Bitcoin Cash(BCH)。
分叉在技术上是干净且精心计划的。在分叉时持有余额的每个比特币地址在两条链上都收到了相同的余额。如果用户在分叉前持有1 BTC,分叉后他们将在比特币链上拥有1 BTC,在Bitcoin Cash链上拥有1 BCH。区块478,558之前的全部交易历史由两条链共享。
分叉面临的关键技术挑战之一是实现重放保护。在没有重放保护的情况下,在一条链上广播的交易可能在另一条链上被重放,可能导致用户无意中在两条链上花费代币。Bitcoin Cash通过修改交易签名算法实现了强重放保护。具体来说,Bitcoin Cash引入了一个新的SigHash标志(SIGHASH_FORKID),该标志包含在每个交易签名的哈希中。使用此标志签名的交易在Bitcoin Cash链上有效但在比特币链上无效,反之亦然。这确保了从分叉时刻起两个网络之间的干净分离。
Bitcoin Cash的初始区块大小上限设为8MB,是比特币1MB限制的八倍。这代表了链上交易容量的显著提升,使Bitcoin Cash能够在保持低手续费的同时处理每个区块中更多的交易。分叉后的第一个Bitcoin Cash区块由ViaBTC矿池挖出,大小约为1.9MB,展示了更大区块大小的即时实际效益。
分叉还移除了在比特币链上已激活的SegWit。Bitcoin Cash开发者出于多种原因拒绝了SegWit:他们认为它给协议引入了不必要的复杂性,创建了具有不同手续费结构的双层交易系统,并以他们认为破坏UTXO模型简洁性的方式修改了区块结构。通过选择直接的区块大小增加,Bitcoin Cash维持了更简单、更传统的类比特币协议架构。
分叉后,两条链都不得不应对难度调整的挑战。Bitcoin Cash最初使用与比特币链相同的SHA-256难度,但投入挖矿的算力大幅减少。为防止区块被极其缓慢挖出的情况,Bitcoin Cash实施了紧急难度调整(EDA)机制,如果在12小时内挖出的区块少于6个,难度将降低20%。虽然这一机制成功地在关键的早期阶段维持了链的运行,但事实证明它是不稳定的,导致矿工根据盈利能力在比特币和Bitcoin Cash之间切换时,区块生产时间和算力出现剧烈波动。EDA在2017年11月被基于前144个区块移动平均值的更稳定的难度调整算法所取代。
分叉在更广泛的加密货币社区中引发了重大争议。批评者认为Bitcoin Cash是对比特币品牌的不正当侵占尝试,而支持者则坚持认为它是比特币原始路线图的合法延续。交易所和服务提供商不得不迅速决定是否支持新链以及如何将分叉代币分配给客户。尽管存在争议,Bitcoin Cash迅速确立了自己作为可行且活跃使用的加密货币的地位,在分叉后数月内实现了显著的交易量和商户采用。
Technical Specifications
Bitcoin Cash与比特币共享基本技术架构,包括SHA-256工作量证明共识机制、UTXO交易模型、用于数字签名的secp256k1椭圆曲线,以及十分钟的目标出块间隔。然而,若干关键修改使其区别于比特币协议。
最显著的区别是区块大小上限。Bitcoin Cash以8MB区块大小上限启动,随后于2018年5月将其提高至32MB。这一32MB上限提供的交易容量约为比特币有效1MB非SegWit区块大小的32倍(或比特币SegWit增强后有效上限约4MB的约8倍)。更大的区块大小是Bitcoin Cash链上扩展哲学的基石,在区块持续满载时不会产生手续费压力的情况下,为交易增长提供充足空间。
Bitcoin Cash不实现SegWit。与SegWit将见证数据从交易数据中分离不同,Bitcoin Cash保持了原始的比特币交易格式。包括签名在内的所有交易数据都以传统方式存储在区块内。这简化了协议并保持了与旧版比特币软件和基础设施的向后兼容性。
Bitcoin Cash的一项重要协议改进是在分叉时引入的改进SigHash算法。这一基于BIP 143(最初为SegWit开发)的新算法修复了原始比特币签名验证方案中存在的二次哈希问题。在原始方案中,验证交易签名的计算成本随输入数量呈二次增长,造成了潜在的拒绝服务攻击向量。新的SigHash算法使验证成本变为线性,使网络能够安全地处理更大、更复杂的交易。
与比特币相比,Bitcoin Cash支持更大的最大交易大小和每个区块更多的签名操作(sigops)。sigops限制按区块大小比例调整,确保区块验证的计算成本保持在限度内,同时允许每个区块处理显著更多的交易。
Bitcoin Cash的脚本系统已经超越了比特币相对保守的方法进行了积极开发。Bitcoin Cash已重新启用并引入了多个扩展脚本语言表达能力的操作码。值得注意的新增内容包括OP_CHECKDATASIG和OP_CHECKDATASIGVERIFY,它们允许交易脚本验证针对任意数据(而不仅仅是交易数据)的签名,从而实现基于预言机的智能合约和其他高级脚本模式。OP_REVERSEBYTES操作码、原生内省操作码以及更大的脚本和堆栈限制进一步增强了Bitcoin Cash的可编程性。
Bitcoin Cash使用与比特币相同的地址格式基础,但于2018年1月采用了CashAddr格式以防止混淆和跨链发送错误。CashAddr地址以"bitcoincash:"作为前缀(哈希部分通常缩写为"q"或"p"),使用与比特币的base58check格式不同的编码方案。这种视觉区分立即明确了地址属于比特币还是Bitcoin Cash,降低了用户不小心将代币发送到错误链的风险。
网络在8333端口运行,这是与比特币相同的默认端口,但Bitcoin Cash节点在协议握手中使用不同的网络魔数来标识自身。这意味着尽管使用相同的端口,比特币和Bitcoin Cash节点不会意外地相互连接。
Transaction Throughput and Scalability
交易吞吐量和可扩展性是Bitcoin Cash价值主张的核心。该项目的基本论点是,点对点电子现金必须能够快速且低成本地处理交易才能在日常使用中可行,而通过更大区块进行链上扩展是实现这一目标最可靠的方式。
凭借32MB区块大小上限和十分钟的出块间隔,Bitcoin Cash的理论最大吞吐量约为每秒100笔交易,具体取决于平均交易大小。与比特币在1MB区块下每秒约7笔交易的理论最大值相比,这是一个显著的提升。实际吞吐量取决于交易类型和大小的组合,但Bitcoin Cash的容量对于其当前交易量而言绰绰有余,区块通常远低于32MB上限。
充裕的可用区块空间对交易手续费产生直接且可衡量的影响。当区块未满时,不存在手续费竞争,交易可以以最低手续费得到确认。Bitcoin Cash的默认最低中继手续费为每字节1聪(1聪 = 0.00000001 BCH),大多数交易以该最低值或接近该最低值在下一个区块中得到确认。这使得Bitcoin Cash交易在正常条件下的成本不到一美分,与比特币在拥堵期间可能从数美元到数十美元的手续费形成鲜明对比。
Bitcoin Cash开发社区对链上扩展的极限进行了广泛的研究和测试。2017-2018年进行的千兆区块测试网计划证明,在适当的软件优化和现代硬件条件下,比特币协议可以处理1GB甚至更大的区块。这些测试识别出了原始代码库中的几个瓶颈——包括区块传播、交易验证和UTXO集管理——并为后续的优化工作提供了信息。
为支持更大的区块,已进行了若干协议和实现改进。Graphene是一种基于可逆布隆查找表和布隆过滤器的区块传播协议,通过仅编码区块与接收节点内存池中已有交易的差异,大幅降低了区块传播所需的带宽。2018年11月实施的规范交易排序(CTOR)要求区块内的交易按交易ID排序。这一看似微小的变更实现了交易的并行验证和更高效的集合协调算法,在区块验证和传播方面带来了显著优化。
UTXO承诺和并行验证计划进一步提升了网络高效处理大区块的能力。通过利用现代多核处理器和固态存储,优化的节点实现可以在可接受的时间范围内验证包含数万笔交易的区块。
Bitcoin Cash的可扩展性路线图设想在技术和需求允许的情况下进一步提高区块大小上限。项目开发者已表达了完全在链上支持全球规模支付量的长期目标,目标是使Bitcoin Cash能够处理每天数十亿笔交易的吞吐量水平。虽然这一目标雄心勃勃,但硬件性能、网络带宽和软件优化的持续改进为逐步实现它提供了可信的路径。
Bitcoin Cash扩展方法的一个重要方面是"零确认"交易的概念。对于小额支付,商户可以在交易被纳入区块之前的广播时立即接受交易。Bitcoin Cash已实施了多项措施来提高零确认交易的可靠性,包括"首次发现"规则(节点仅中继他们首次看到的交易版本,使双花尝试更加困难)和双花通知协议(如果检测到冲突交易,则向商户发出警报)。这些措施使Bitcoin Cash在等待十分钟区块确认不切实际的销售点交易中变得实用。
OP_RETURN and Data Applications
Bitcoin Cash支持OP_RETURN操作码,允许用户在可证明不可花费的交易输出中将任意数据嵌入区块链。此功能支持在Bitcoin Cash区块链上构建的一系列以数据为中心的应用,包括代币协议、消息系统、公证服务和社交媒体平台。
Bitcoin Cash的OP_RETURN数据限制设定为每个输出220字节,远大于比特币的80字节限制。此外,Bitcoin Cash允许在单笔交易中包含多个OP_RETURN输出,进一步扩大了可嵌入单笔交易的数据量。这些宽裕的限制结合低交易手续费,使Bitcoin Cash成为在容量更受限的链上成本过高的数据应用的经济可行平台。
Simple Ledger Protocol(SLP)是使用OP_RETURN在Bitcoin Cash上构建的最早且被广泛采用的代币系统之一。SLP允许用户通过在OP_RETURN输出中编码代币元数据,在Bitcoin Cash区块链上创建和转移自定义代币。虽然SLP已在很大程度上被CashTokens协议取代,但它证明了在UTXO模型上构建代币经济的可行性。
2023年5月激活的CashTokens代表了Bitcoin Cash上代币化的更精细方法。与依赖基础协议可以忽略的OP_RETURN元数据的SLP不同,CashTokens是一个共识级功能,将代币直接整合到UTXO模型中。每个UTXO可以同时携带BCH价值和关联的代币,代币有效性由共识规则强制执行。CashTokens支持两种类型的代币:同质化代币(类似于以太坊上的ERC-20代币)和非同质化代币(NFT)。共识级强制执行意味着代币交易具有与原生BCH交易相同的安全保障,消除了SLP等覆盖协议的信任假设和索引要求。
Memo.cash是一个使用OP_RETURN交易在Bitcoin Cash上构建的去中心化社交媒体协议。用户将帖子、关注、点赞和其他社交行为作为包含编码OP_RETURN数据的Bitcoin Cash交易进行广播。由于数据存储在区块链上,它具有抗审查性并被永久存档。Bitcoin Cash的低交易成本使这在经济上可行——每个社交媒体操作的成本不到一美分。
Bitcoin Cash上的其他数据应用包括文档时间戳和公证服务,其中文档的哈希被嵌入OP_RETURN输出中,创建该文档在特定时间点存在的永久且防篡改的记录。供应链追踪、凭证验证和去中心化身份系统也已使用Bitcoin Cash的数据嵌入功能构建。
大容量OP_RETURN、低手续费和快速确认时间的结合使Bitcoin Cash成为基于区块链的数据应用的有竞争力的平台。虽然存在专用数据区块链,但Bitcoin Cash提供了一个成熟的、高度安全的、广泛支持的网络的优势,拥有经过验证的持续运营记录。
Network Architecture
Bitcoin Cash网络在与比特币相同的基本点对点架构上运行,节点通过八卦协议进行通信以传播交易和区块。全节点维护区块链的完整副本,并根据共识规则独立验证所有交易和区块。网络是无许可的,意味着任何人都可以无需授权即可运行节点并参与网络。
Bitcoin Cash存在多个独立的全节点实现,反映了该项目对去中心化开发的承诺。Bitcoin Cash Node(BCHN)是最广泛使用的实现,充当事实上的参考客户端。其他实现包括Bitcoin Unlimited、BCHD(用Go编写)和Knuth(高性能C++实现)。多个独立实现的存在降低了单一软件错误导致全网故障的风险,并确保没有任何一个开发团队能够单方面控制协议。
Bitcoin Cash挖矿使用与比特币相同的SHA-256工作量证明算法。这意味着相同的ASIC挖矿硬件可以用于挖掘任一链,矿工可以根据盈利能力在比特币和Bitcoin Cash之间切换。实际上,Bitcoin Cash的算力只是比特币的一小部分,因为大部分SHA-256挖矿算力被投入到更有利可图的比特币链上。然而,Bitcoin Cash的难度调整算法确保无论绝对算力水平如何,都能以目标十分钟间隔产生区块。
难度调整算法是Bitcoin Cash最重要的协议组件之一。原始比特币的难度调整每2016个区块(约两周)重新计算一次,对于矿工在比特币和Bitcoin Cash之间切换时所经历的快速算力波动来说过于缓慢。在2017年存在问题的紧急难度调整(EDA)期间之后,Bitcoin Cash于2017年11月采用了基于144个区块移动窗口的新算法。
2020年11月,Bitcoin Cash升级至ASERT(Absolutely Scheduled Exponentially Rising Targets)难度调整算法,也称为aserti3-2d。ASERT是一种数学上优雅的算法,根据自参考区块("锚定区块")以来实际经过时间与预期时间之间的差异来调整难度目标。如果区块生成速度快于预期,难度呈指数级增加;如果较慢,则呈指数级降低。"3-2d"标识指的是大约两天(具体为十分钟目标下的288个区块)的半衰期,意味着算力的持续翻倍或减半将在两天内带来完全的难度调整。ASERT已被证明高度稳定,即使在显著的算力波动下也能产生一致的出块间隔。
区块传播效率对于拥有大区块的网络至关重要。Bitcoin Cash已采用多项优化以确保大区块能够在网络中快速传播。紧凑区块(BIP 152)允许节点在拥有重叠内存池的情况下从交易ID而非完整交易数据重建区块,大幅降低区块传播所需的带宽。Graphene协议通过使用概率数据结构实现近乎最优的区块编码,提供更大的压缩率。Xthinner是专门为Bitcoin Cash开发的另一种压缩协议,对典型区块实现约99.6%的压缩率。
网络的中继和内存池策略旨在支持可靠的零确认交易。节点遵循严格的首次发现规则,仅接受和中继他们观察到的第一个版本的交易。如果检测到尝试花费相同输入的第二笔交易(双花尝试),节点将生成双花证明并通过网络传播,向商户和其他相关方发出警报。此基础设施为接受日常小额支付的未确认交易提供了合理的安全水平。
Smart Contract Capabilities
虽然Bitcoin Cash主要被设计为点对点电子现金系统,但它已通过扩展其脚本语言发展出显著的智能合约能力。与以太坊基于账户的图灵完备智能合约模型不同,Bitcoin Cash智能合约在UTXO模型内使用一种有意非图灵完备的基于堆栈的脚本语言运行。这种设计提供了可预测的执行成本,避免了与无限计算相关的漏洞类别,同时仍然能够实现令人惊讶的丰富可编程金融工具集。
Bitcoin Cash脚本语言已通过一系列协议升级逐步增强。2018年5月,在比特币早期历史中被禁用的若干操作码被重新启用,包括位逻辑运算符(OP_AND、OP_OR、OP_XOR)、大数算术运算符和字符串操作(OP_SPLIT、OP_CAT)。这些恢复的操作码显著扩展了Bitcoin Cash脚本的表达能力。
2018年11月引入的OP_CHECKDATASIG和OP_CHECKDATASIGVERIFY是一项特别重要的进步。这些操作码允许交易脚本验证针对任意数据(而不仅是交易本身)的ECDSA签名。这使得基于预言机的合约成为可能,其中外部数据源签署证明某种现实世界条件(如价格、天气事件或体育比分)的消息,而合约的执行取决于该签名消息的内容。这一功能为去中心化预测市场、保险合约和其他依赖外部数据的金融工具打开了大门。
2022年5月引入的原生内省操作码允许交易脚本检查包含它们的交易的属性。脚本可以检查同一交易中输入和输出的价值、锁定脚本和代币数据。这使得契约式合约成为可能——不仅限制谁可以花费代币,还限制代币在未来交易中如何被花费的脚本。契约实现了诸如保险库(用于安全的时间锁定花费限制)、定期支付、去中心化交易所和链上投票机制等强大模式。
CashScript是Bitcoin Cash的高级智能合约语言,类似于以太坊的Solidity。CashScript允许开发者以类似JavaScript的熟悉语法编写合约,并编译为Bitcoin Cash脚本字节码。该语言处理了UTXO合约设计的复杂性,包括输入/输出内省和签名验证,使不熟悉底层基于堆栈编程的开发者也能使用。CashScript合约已被用于构建去中心化交易所、托管服务、众筹平台和其他应用。
2023年5月的CashTokens升级为Bitcoin Cash的智能合约能力增添了新维度。通过在共识级别将同质化和非同质化代币直接嵌入UTXO模型,CashTokens使由网络共识规则而非覆盖协议强制执行的基于代币的合约成为可能。CashTokens中的非同质化代币(NFT)携带一个"承诺"字段——附加到代币的任意数据——可以被智能合约脚本读取和验证。这创建了一种在多笔交易之间维护链上状态的机制,这是之前在UTXO模型中难以实现的能力。合约可以使用NFT作为状态载体,在每笔交易中更新承诺数据以实现复杂的多步骤协议。
内省操作码、CashTokens和CashScript的结合创建了一个智能合约平台,虽然与以太坊的模型根本不同,但能够实现许多相同的去中心化金融应用。去中心化交易所、自动做市商、借贷协议和去中心化自治组织都已在Bitcoin Cash上构建或原型化。基于UTXO的方法在并行化(UTXO可以独立验证)、隐私(每个UTXO独立)和可预测性(无需竞争的全局状态)方面提供优势,但需要与基于账户的系统不同的设计模式。
Monetary Policy
Bitcoin Cash完整继承了比特币的货币政策。Bitcoin Cash的总供应量上限为2100万枚,发行计划遵循与比特币相同的减半机制。这一共享的货币政策是分叉的直接结果:由于Bitcoin Cash从比特币块链">区块链分裂而来,它以相同的发行历史开始并继续遵循相同的未来发行规则。
区块奖励从每区块50 BCH开始(继承自比特币的创世参数),每210,000个区块减半一次,约每四年一次。第一次减半发生在2012年11月(在分叉之前,属于共享历史),将奖励减至25枚。第二次减半在2016年7月将其减至12.5枚。第三次减半在2020年4月发生(在分叉之后,因此是Bitcoin Cash链特有的),将奖励减至6.25 BCH。第四次减半在2024年4月进一步减至每区块3.125 BCH。
这一减半计划创造了一种通缩型货币政策,新币创造率随时间递减,渐近地趋向零。最后一枚Bitcoin Cash预计将在2140年左右被挖出。届时,矿工收入将完全由交易手续费构成。
2100万的供应上限和减半计划赋予Bitcoin Cash与比特币相同的稀缺性特征。截至2026年初,流通供应量约为1980万BCH,占未来将存在的总供应量的94%以上。其余代币将在一个多世纪的递减区块奖励中分发。
Bitcoin Cash在从区块奖励向基于手续费的矿工补偿过渡方面的方法与比特币的策略不同。比特币通过限制区块空间以维持手续费市场的扩展哲学,隐含地依赖于高单笔交易手续费来在区块奖励减少时补偿矿工。Bitcoin Cash采取了相反的方法:通过保持低手续费和大区块,网络旨在通过高交易量而非高单笔手续费来产生足够的总手续费收入。在这一模型中,如果每笔交易支付一美分的手续费,但网络每个区块处理数百万笔交易,则总手续费收入仍然可以足够可观,以激励挖矿。
这种基于交易量的手续费模型要求Bitcoin Cash在后补贴时代实现远高于比特币的交易吞吐量,以提供同等的矿工激励。支持者认为这是可以实现的,因为全球支付需求巨大,即使占据世界交易量的适度份额也将代表每天数百万笔支付。批评者则反驳说,实现这一采用水平是不确定的,低手续费模型可能在过渡期间产生不充分的激励。
比特币和Bitcoin Cash之间共享的货币政策意味着两条链在SHA-256挖矿算力方面存在直接竞争。矿工在任何给定时间将资源分配给更有利可图的链,两条链的难度调整算法都能适应这种流动性分配。实际上,Bitcoin Cash在总SHA-256算力中的份额一直与其相对价格成正比,反映了利润最大化矿工的理性经济行为。
Conclusion
Bitcoin Cash代表了比特币作为点对点电子现金原始愿景的有原则的延续。通过提高区块大小">块大小上限并追求链上扩展,Bitcoin Cash维持了早期比特币所特有的低手续费和快速交易,使原始白皮书所设想的日常支付和微交易变得实用。
该项目的技术轨迹以深思熟虑且具有重大意义的协议改进为特征。ASERT难度调整算法在算力波动条件下提供稳定的区块生产。具有恢复和新增操作码的增强脚本语言在UTXO模型的安全约束内实现了精密的智能合约。CashTokens首次为比特币协议带来了共识级强制执行的代币化。CashScript使这些能力对广泛的开发者社区可及。这些进步共同证明了UTXO模型可以在保持其基本简洁性和安全属性的同时支持丰富的去中心化应用生态系统。
导致Bitcoin Cash诞生的扩展性争论突显了去中心化系统中的一个基本张力:链上容量与运营全节点成本之间的权衡。Bitcoin Cash选择优先考虑交易容量和用户体验,认为广泛采用和使用的经济效益超过了节点运营者增加的硬件要求。这是一个经验性问题,其答案将在比特币和Bitcoin Cash各自沿着各自路径继续演进的未来数年乃至数十年中逐步展开。
Bitcoin Cash在经历了多次熊市、争议性分叉(尤其是2018年11月的Bitcoin SV分裂)和持续的社区努力后的存续和持续发展,展示了该项目的韧性和参与者的信念。该网络自分叉以来已处理了数亿笔交易,维持了持续运营,并吸引了一个由全球开发者、商户和用户组成的社区,他们共同相信点对点电子现金是一项值得构建的技术。
Bitcoin Cash的长期成功取决于其吸引重视低手续费、可靠交易的用户和商户的能力,以及扩展其基础设施以满足全球支付网络需求的能力。技术基础是稳固的,路线图是清晰的,社区是坚定的。Bitcoin Cash最终能否实现其服务于全球电子现金的宏伟目标,将不由技术限制决定,而由支配所有货币系统演进的网络效应、市场动态和采用模式决定。
Related Whitepapers
Dogecoin
Dogecoin: A Community-Driven Cryptocurrency
34 shared concepts · 2013
Ethereum
Ethereum: A Next-Generation Smart Contract and Decentralized Application Plat...
33 shared concepts · 2013
Solana
Solana: A new architecture for a high performance blockchain
25 shared concepts · 2017
Tether
Tether: Fiat currencies on the Bitcoin blockchain
24 shared concepts · 2016
XRP
The Ripple Protocol Consensus Algorithm
21 shared concepts · 2014
常见问题
- 什么是Bitcoin Cash白皮书?
- Bitcoin Cash(BCH)于2017年8月1日从Bitcoin分叉而来,旨在恢复点对点电子现金的原始愿景。它将区块大小从1MB增加到32MB,以实现更高的每秒交易量和更低的手续费。
- Bitcoin Cash与Bitcoin有何不同?
- Bitcoin Cash支持32MB的区块(而Bitcoin通过SegWit约为4MB),不使用隔离见证,并采用ASERT难度调整算法以实现更稳定的出块时间。它优先通过链上扩展来支持日常支付。
- Bitcoin Cash是谁创建的,是何时创建的?
- Bitcoin Cash于2017年8月1日通过Bitcoin硬分叉创建。主要倡导者包括Roger Ver和Bitcoin ABC开发团队,他们主张通过扩大区块容量来提升交易处理能力并降低手续费。
- Bitcoin Cash的核心技术路线是什么?
- Bitcoin Cash通过扩大区块大小而非依赖Lightning Network等链下解决方案来追求链上扩展。其32MB的区块每秒可处理超过100笔交易,而Bitcoin约为7笔。
- Bitcoin Cash的共识机制是如何运作的?
- Bitcoin Cash与Bitcoin同样使用SHA-256工作量证明,并采用ASERT(绝对计划指数上升目标)难度调整算法,每个区块重新计算一次难度,实现更灵敏的调整。
- Bitcoin Cash的供应模型是什么?
- Bitcoin Cash与Bitcoin采用相同的供应模型:2,100万枚的硬上限,区块奖励每约210,000个区块(约4年)减半一次。由于共享了Bitcoin的创世区块,BCH遵循相同的减半时间表。
- Bitcoin Cash的主要用途是什么?
- Bitcoin Cash专注于成为日常交易的交换媒介。其低廉的手续费(通常低于0.01美元)和快速的确认时间使其适用于销售点支付、汇款和小额交易。
- Bitcoin Cash解决了什么问题?
- Bitcoin Cash通过选择更大的区块来提升吞吐量,解决了Bitcoin的可扩展性争议。它旨在实现Bitcoin白皮书中「点对点电子现金」的原始愿景,使手续费低廉到足以用于日常交易。
- Bitcoin Cash的安全模型是如何运作的?
- Bitcoin Cash使用SHA-256工作量证明,与Bitcoin共享相同的挖矿算法。然而,BCH的算力远低于BTC,使其更容易受到51%攻击。ASERT难度调整有助于维持稳定的出块生产。
- Bitcoin Cash生态系统的现状如何?
- Bitcoin Cash维护着一个以商户采用和支付为核心的活跃生态系统。它支持CashTokens(同质化代币和NFT)、用于隐私保护的CashFusion,并通过BitPay等支付处理商被全球众多商家所接受。