Bitcoin Cash: Efectivo electrónico peer-to-peer para el mundo

作者 Bitcoin Cash Development Team · 2017

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的技术规格、设计理念和发展方向。

Abstract

Bitcoin Cash es un sistema de efectivo electrónico peer-to-peer que se bifurcó de la cadena de bloques de Bitcoin el 1 de agosto de 2017. Creado en respuesta a las limitaciones de escalabilidad de Bitcoin, Bitcoin Cash aumentó el límite del tamaño de bloque para permitir un mayor rendimiento de transacciones y comisiones más bajas, restaurando la visión original de Bitcoin como un medio de intercambio práctico para las transacciones cotidianas. Con bloques de 32MB, un algoritmo de ajuste de dificultad adaptativo y un desarrollo continuo del protocolo, Bitcoin Cash aspira a escalar en cadena para servir como efectivo peer-to-peer global.

El proyecto Bitcoin Cash nació de un desacuerdo fundamental dentro de la comunidad de Bitcoin sobre cómo debería escalar la red para acomodar la creciente demanda. Mientras una facción abogaba por soluciones de escalado fuera de cadena como la Lightning Network construida sobre SegWit, otra facción argumentaba que aumentar el límite del tamaño de bloque era el enfoque más directo y probado para escalar. Cuando no se pudo alcanzar un consenso, el segundo grupo ejecutó una bifurcación dura, creando una nueva cadena que preservaba el historial de transacciones de Bitcoin mientras implementaba un límite de tamaño de bloque mayor y rechazaba SegWit. Este documento describe las especificaciones técnicas, la filosofía de diseño y la trayectoria de desarrollo de Bitcoin Cash.

Introduction

中本聪于2008年发表的比特币原始白皮书描述了"一种纯粹的点对点电子现金",将"允许在线支付从一方直接发送给另一方,而无需通过金融机构"。比特币作为日常交易交换媒介的这一愿景是其早期采用和社区发展的核心。早期的比特币支持者经常将低交易手续费和快速支付作为相对于传统金融系统的关键优势加以引用。

然而,随着比特币在2010年代中期日益普及,一个根本性的限制开始制约其作为电子现金的实用性。最初作为临时反垃圾邮件措施引入的1兆字节区块大小限制,为网络可以处理的交易数量设定了人为上限。随着对区块空间需求的增加,用户不得不通过提供更高的交易手续费来竞争有限的容量。到2017年初,比特币的中位交易手续费已上涨至数美元,使小额交易在经济上不切实际。在拥堵高峰期,手续费可超过20美元,交易可能数小时甚至数天未得到确认。

这种情况代表了对比特币原始承诺的根本背离。一个旨在实现点对点电子支付的系统,对于其被创造出来要服务的用例而言正变得过于昂贵和缓慢。当比特币越来越被定位为"数字黄金"——一种价值储存手段而非交换媒介时,许多社区成员和开发者认为这是对项目创始原则的背叛。

Bitcoin Cash的创建正是为了通过最直接的扩展方法——提高区块大小上限来解决这一危机。通过允许每个区块容纳更多交易,Bitcoin Cash旨在恢复低手续费和快速确认,使点对点电子现金再次变得实用。该项目的支持者认为,链上扩展不仅在技术上可行,而且是中本聪最初设想的方法,并引用了中本聪讨论随着网络增长而提高区块大小限制的早期通信作为依据。

2017年8月1日Bitcoin Cash的诞生是加密货币历史上最重要的事件之一。它是比特币历史上第一次因对协议未来方向的真正哲学分歧而引发的重大链分裂。这次分叉表明,在去中心化系统中,不可调和的争端可以通过允许各方独立追求自己的愿景来解决,最终由市场决定结果。

Introduction

El libro blanco original de Bitcoin, publicado por Satoshi Nakamoto en 2008, describía "una versión puramente peer-to-peer de efectivo electrónico" que permitiría "enviar pagos en línea directamente de una parte a otra sin pasar por una institución financiera". Esta visión de Bitcoin como un medio de intercambio para transacciones cotidianas fue central para su adopción temprana y el crecimiento de su comunidad. Los primeros defensores de Bitcoin citaban frecuentemente las bajas comisiones de transacción y los pagos rápidos como ventajas clave sobre los sistemas financieros tradicionales.

Sin embargo, a medida que la popularidad de Bitcoin creció a mediados de la década de 2010, una restricción fundamental comenzó a limitar su utilidad como efectivo electrónico. El límite de tamaño de bloque de un megabyte, originalmente introducido como una medida temporal contra el spam, creó un techo artificial en el número de transacciones que la red podía procesar. A medida que la demanda de espacio en los bloques aumentaba, los usuarios se veían obligados a competir por la capacidad limitada ofreciendo comisiones de transacción más altas. A principios de 2017, la comisión mediana de las transacciones de Bitcoin había subido a varios dólares, haciendo que las transacciones de bajo valor fueran económicamente impracticables. Durante los períodos de máxima congestión, las comisiones podían superar los veinte dólares, y las transacciones podían permanecer sin confirmar durante horas o incluso días.

Esta situación representaba una desviación fundamental de la promesa original de Bitcoin. Un sistema diseñado para permitir pagos electrónicos peer-to-peer se estaba volviendo demasiado caro y demasiado lento para los casos de uso que fue creado para servir. Mientras Bitcoin se posicionaba cada vez más como "oro digital" — una reserva de valor en lugar de un medio de intercambio — muchos miembros de la comunidad y desarrolladores creían que esto representaba una traición a los principios fundacionales del proyecto.

Bitcoin Cash fue creado para resolver esta crisis adoptando el enfoque más directo para escalar: aumentar el límite del tamaño de bloque. Al permitir que más transacciones quepan en cada bloque, Bitcoin Cash buscó restaurar las comisiones bajas y las confirmaciones rápidas, haciendo que el efectivo electrónico peer-to-peer fuera práctico nuevamente. Los defensores del proyecto argumentaban que el escalado en cadena no solo era técnicamente factible, sino que era el enfoque que Satoshi Nakamoto había previsto originalmente, señalando comunicaciones tempranas en las que Nakamoto discutía la posibilidad de aumentar el límite del tamaño de bloque a medida que la red creciera.

La creación de Bitcoin Cash el 1 de agosto de 2017 fue uno de los eventos más significativos en la historia de las criptomonedas. Representó la primera gran división de cadena en la historia de Bitcoin impulsada por un genuino desacuerdo filosófico sobre la dirección futura del protocolo. La bifurcación demostró que en un sistema descentralizado, las disputas irresolubles pueden resolverse permitiendo que cada facción persiga su propia visión de forma independiente, con el mercado determinando finalmente el resultado.

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的支持者们相信这是保护比特币作为点对点电子现金原始愿景的唯一途径。

Background: The Scaling Debate

El debate sobre la escalabilidad de Bitcoin fue una de las disputas más contenciosas y prolongadas en la historia del desarrollo de software de código abierto. En su esencia, el debate se centraba en una pregunta aparentemente simple: ¿cómo debería la red Bitcoin aumentar su capacidad de procesamiento de transacciones? Sin embargo, la respuesta a esta pregunta tocaba cuestiones fundamentales de gobernanza, descentralización, filosofía técnica y la propia identidad de Bitcoin.

El límite de tamaño de bloque de un megabyte de Bitcoin fue introducido por Satoshi Nakamoto en 2010 como una medida temporal para prevenir ataques de denegación de servicio en los que un adversario pudiera inundar la red con bloques sobredimensionados. En aquel momento, el uso real de los bloques estaba muy por debajo de este límite, y Nakamoto sugirió que el límite podría elevarse en el futuro mediante un simple cambio de código. Sin embargo, a medida que el uso de Bitcoin creció y los bloques comenzaron a llenarse, elevar el límite resultó ser mucho más contencioso de lo que nadie había anticipado.

Una facción, que llegó a asociarse con el equipo de desarrollo de Bitcoin Core, argumentaba que el tamaño de bloque debía mantenerse pequeño para preservar la descentralización. Su razonamiento era que bloques más grandes aumentarían los requisitos computacionales y de ancho de banda para ejecutar un nodo completo, pudiendo potencialmente excluir a los usuarios ordinarios y concentrar la operación de nodos entre entidades con muchos recursos. Propusieron un camino de escalado alternativo: SegWit, un cambio de protocolo que reestructuraba los datos de transacción para aumentar efectivamente la capacidad de transacciones del bloque sin elevar el límite de tamaño nominal, combinado con soluciones fuera de cadena como la Lightning Network que trasladarían la mayoría de las transacciones fuera de la cadena de bloques principal.

La facción opuesta, que incluía desarrolladores prominentes, mineros y empresas, argumentaba que elevar el límite del tamaño de bloque era la solución más simple, más probada y más urgente. Sostenían que el límite de un megabyte era una restricción arbitraria que nunca había sido concebida como una característica permanente del protocolo, y que los aumentos de comisiones y la congestión resultantes estaban alejando a los usuarios y comerciantes de Bitcoin. Eran escépticos respecto a la complejidad de SegWit y les preocupaba que la Lightning Network, que en ese momento era en gran parte teórica, pudiera no cumplir nunca sus promesas de transacciones baratas e instantáneas.

El debate se intensificó a través de una serie de propuestas y contrapropuestas. Bitcoin XT, propuesto por Mike Hearn y Gavin Andresen en 2015, buscaba aumentar el tamaño de bloque a 8MB. Bitcoin Classic propuso un aumento más modesto a 2MB. Bitcoin Unlimited propuso eliminar por completo el límite de tamaño de bloque, permitiendo a los mineros establecer sus propios límites a través de la dinámica del mercado. Cada propuesta generó un debate feroz y ninguna logró el consenso abrumador necesario para una bifurcación dura no contenciosa.

Se realizaron varios intentos de compromiso. El Acuerdo de Hong Kong (febrero de 2016) vio a los desarrolladores de Bitcoin Core y los mineros acordar desplegar SegWit seguido de una bifurcación dura a 2MB, pero el acuerdo se desmoronó cuando el componente de bifurcación dura no fue implementado. El Acuerdo de Nueva York (mayo de 2017), también conocido como SegWit2x, proponía activar SegWit inmediatamente seguido de una bifurcación dura a 2MB dentro de seis meses. Este acuerdo fue firmado por más de cincuenta empresas que representaban la mayoría del poder de hash de Bitcoin, pero fue fuertemente rechazado por el equipo de desarrollo de Bitcoin Core y una porción significativa de la comunidad de usuarios.

Cuando quedó claro que el compromiso era imposible, la facción de bloques grandes decidió actuar unilateralmente. El 1 de agosto de 2017, ejecutaron una bifurcación dura de la cadena de bloques de Bitcoin, creando Bitcoin Cash con un límite de tamaño de bloque inicial de 8MB. Esta no fue una decisión tomada a la ligera — requirió dividir la cadena de bloques, la red, la comunidad y la marca. Pero los defensores de Bitcoin Cash creían que era la única forma de preservar la visión original de Bitcoin como efectivo electrónico peer-to-peer.

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迅速确立了自己作为可行且活跃使用的加密货币的地位,在分叉后数月内实现了显著的交易量和商户采用。

The Fork

La bifurcación dura de Bitcoin Cash se ejecutó el 1 de agosto de 2017, en la altura de bloque 478.558. En ese punto, la cadena de bloques de Bitcoin se dividió en dos cadenas separadas: la cadena original, que continuó como Bitcoin (BTC) con la activación de SegWit, y la nueva cadena, que se convirtió en Bitcoin Cash (BCH) con un límite de tamaño de bloque aumentado a 8MB.

La bifurcación fue técnicamente limpia y bien planificada. Cada dirección de Bitcoin que tenía un saldo en el momento de la bifurcación recibió un saldo idéntico en ambas cadenas. Si un usuario tenía 1 BTC antes de la bifurcación, tendría 1 BTC en la cadena de Bitcoin y 1 BCH en la cadena de Bitcoin Cash después de la bifurcación. Todo el historial de transacciones anterior al bloque 478.558 era compartido entre ambas cadenas.

Uno de los desafíos técnicos críticos de la bifurcación fue la implementación de la protección contra repetición. Sin protección contra repetición, una transacción transmitida en una cadena podría ser repetida en la otra cadena, causando potencialmente que los usuarios gastaran monedas involuntariamente en ambas cadenas. Bitcoin Cash implementó una fuerte protección contra repetición modificando el algoritmo de firma de transacciones. Específicamente, Bitcoin Cash introdujo una nueva bandera SigHash (SIGHASH_FORKID) que se incluye en el hash de la firma de cada transacción. Las transacciones firmadas con esta bandera son válidas en la cadena de Bitcoin Cash pero inválidas en la cadena de Bitcoin, y viceversa. Esto aseguró una separación limpia entre las dos redes desde el momento de la bifurcación.

El límite de tamaño de bloque inicial para Bitcoin Cash se estableció en 8MB, ocho veces mayor que el límite de 1MB de Bitcoin. Esto representó un aumento significativo en la capacidad de transacciones en cadena, permitiendo a Bitcoin Cash procesar sustancialmente más transacciones por bloque manteniendo comisiones bajas. El primer bloque de Bitcoin Cash después de la bifurcación fue minado por el pool de minería ViaBTC y tenía aproximadamente 1,9MB de tamaño, demostrando el beneficio práctico inmediato del tamaño de bloque más grande.

La bifurcación también eliminó SegWit, que había sido activado en la cadena de Bitcoin. Los desarrolladores de Bitcoin Cash rechazaron SegWit por varias razones: creían que introducía complejidad innecesaria en el protocolo, creaba un sistema de transacciones de dos niveles con diferentes estructuras de comisiones, y modificaba la estructura del bloque de maneras que argumentaban socavaban la simplicidad del modelo UTXO. Al elegir un aumento directo del tamaño de bloque, Bitcoin Cash mantuvo una arquitectura de protocolo más simple y tradicional al estilo de Bitcoin.

Después de la bifurcación, ambas cadenas tuvieron que lidiar con el desafío del ajuste de dificultad. Bitcoin Cash inicialmente usó la misma dificultad SHA-256 de la cadena de Bitcoin, pero con significativamente menos poder de hash dedicado a la minería. Para prevenir un escenario en el que los bloques se minaran extremadamente lento, Bitcoin Cash implementó un mecanismo de Ajuste de Dificultad de Emergencia (EDA) que disminuiría la dificultad en un 20 por ciento si se minaban menos de 6 bloques en un período de 12 horas. Si bien este mecanismo mantuvo exitosamente la cadena viva durante el período inicial crítico, resultó ser inestable, causando oscilaciones salvajes en los tiempos de producción de bloques y la tasa de hash a medida que los mineros alternaban entre Bitcoin y Bitcoin Cash según la rentabilidad. El EDA fue reemplazado en noviembre de 2017 por un algoritmo de ajuste de dificultad más estable basado en un promedio móvil de los 144 bloques anteriores.

La bifurcación fue recibida con considerable controversia en la comunidad de criptomonedas más amplia. Los críticos argumentaban que Bitcoin Cash era un intento ilegítimo de apropiarse de la marca Bitcoin, mientras que los defensores sostenían que era una continuación legítima de la hoja de ruta original de Bitcoin. Los exchanges y proveedores de servicios tuvieron que tomar decisiones rápidas sobre si apoyar la nueva cadena y cómo manejar la distribución de monedas bifurcadas a sus clientes. A pesar de la controversia, Bitcoin Cash se estableció rápidamente como una criptomoneda viable y activamente utilizada, logrando un volumen de negociación significativo y adopción por parte de comerciantes en los meses posteriores a la bifurcación.

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节点不会意外地相互连接。

Technical Specifications

Bitcoin Cash comparte la arquitectura técnica fundamental de Bitcoin, incluyendo el mecanismo de consenso de prueba de trabajo SHA-256, el modelo de transacciones UTXO, la curva elíptica secp256k1 para firmas digitales y el intervalo objetivo de bloques de diez minutos. Sin embargo, varias modificaciones clave lo diferencian del protocolo de Bitcoin.

La diferencia más prominente es el límite de tamaño de bloque. Bitcoin Cash se lanzó con un límite de tamaño de bloque de 8MB y posteriormente lo aumentó a 32MB en mayo de 2018. Este límite de 32MB proporciona aproximadamente 32 veces la capacidad de transacciones del tamaño de bloque efectivo de 1MB sin SegWit de Bitcoin (o aproximadamente 8 veces la capacidad del límite efectivo de Bitcoin mejorado con SegWit de aproximadamente 4MB). El tamaño de bloque más grande es la piedra angular de la filosofía de escalado en cadena de Bitcoin Cash, proporcionando amplio espacio para el crecimiento de transacciones sin la presión de comisiones que surge cuando los bloques están consistentemente llenos.

Bitcoin Cash no implementa SegWit. En lugar de separar los datos de testigos de los datos de transacciones como hace SegWit, Bitcoin Cash mantiene intacto el formato de transacciones original de Bitcoin. Todos los datos de transacción, incluidas las firmas, se almacenan dentro del bloque de manera tradicional. Esto simplifica el protocolo y mantiene la compatibilidad retroactiva con el software e infraestructura de Bitcoin más antiguos.

Una mejora significativa del protocolo en Bitcoin Cash es el algoritmo SigHash mejorado, que fue introducido en el momento de la bifurcación. El nuevo algoritmo, basado en BIP 143 (que fue desarrollado originalmente para SegWit), corrige el problema de hash cuadrático que existía en el esquema original de verificación de firmas de Bitcoin. En el esquema original, el costo computacional de verificar la firma de una transacción crecía cuadráticamente con el número de entradas, creando un vector potencial de ataque de denegación de servicio. El nuevo algoritmo SigHash hace que el costo de verificación sea lineal, permitiendo que la red procese transacciones más grandes y complejas de manera segura.

Bitcoin Cash soporta un tamaño máximo de transacción más grande y un mayor número de operaciones de firma (sigops) por bloque comparado con Bitcoin. El límite de sigops se escala proporcionalmente con el tamaño del bloque, asegurando que el costo computacional de la validación del bloque permanezca acotado mientras permite significativamente más transacciones por bloque.

El sistema de scripts en Bitcoin Cash ha sido desarrollado activamente más allá del enfoque comparativamente conservador de Bitcoin. Bitcoin Cash ha reactivado e introducido varios opcodes que amplían la expresividad de su lenguaje de scripts. Adiciones notables incluyen OP_CHECKDATASIG y OP_CHECKDATASIGVERIFY, que permiten a los scripts de transacción verificar firmas contra datos arbitrarios (no solo datos de transacción), habilitando contratos inteligentes basados en oráculos y otros patrones avanzados de scripting. El opcode OP_REVERSEBYTES, los opcodes de introspección nativos y los límites más grandes de script y pila han mejorado aún más la programabilidad de Bitcoin Cash.

Bitcoin Cash utiliza la misma base de formato de dirección que Bitcoin pero adoptó el formato CashAddr en enero de 2018 para prevenir confusiones y errores de envío entre cadenas. Las direcciones CashAddr comienzan con "bitcoincash:" como prefijo (frecuentemente abreviado a "q" o "p" para la porción del hash) y utilizan un esquema de codificación diferente al formato base58check de Bitcoin. Esta distinción visual hace inmediatamente claro si una dirección pertenece a Bitcoin o Bitcoin Cash, reduciendo el riesgo de que los usuarios envíen accidentalmente monedas a la cadena incorrecta.

La red opera en el puerto 8333, el mismo puerto predeterminado que Bitcoin, aunque los nodos de Bitcoin Cash se identifican con un número mágico de red diferente en el handshake del protocolo. Esto significa que los nodos de Bitcoin y Bitcoin Cash no se conectarán accidentalmente entre sí a pesar de usar el mismo puerto.

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在等待十分钟区块确认不切实际的销售点交易中变得实用。

Transaction Throughput and Scalability

El rendimiento de transacciones y la escalabilidad son centrales para la propuesta de valor de Bitcoin Cash. La tesis fundamental del proyecto es que el efectivo electrónico peer-to-peer debe ser capaz de procesar transacciones de manera rápida y económica para ser viable para el uso cotidiano, y que el escalado en cadena mediante bloques más grandes es la forma más confiable de lograrlo.

Con un límite de tamaño de bloque de 32MB y un intervalo de bloques de diez minutos, Bitcoin Cash tiene un rendimiento máximo teórico de aproximadamente 100 transacciones por segundo, dependiendo del tamaño promedio de la transacción. Esto representa un aumento sustancial sobre el máximo teórico de Bitcoin de aproximadamente 7 transacciones por segundo con bloques de 1MB. En la práctica, el rendimiento real depende de la combinación de tipos y tamaños de transacciones, pero la capacidad de Bitcoin Cash es más que suficiente para su volumen actual de transacciones, con bloques típicamente muy por debajo del límite de 32MB.

La abundancia de espacio disponible en los bloques tiene un impacto directo y medible en las comisiones de transacción. Cuando los bloques no están llenos, no hay competencia de comisiones, y las transacciones pueden confirmarse con comisiones mínimas. La comisión mínima de retransmisión predeterminada de Bitcoin Cash es de 1 satoshi por byte (donde 1 satoshi = 0,00000001 BCH), y la mayoría de las transacciones se confirman en el siguiente bloque a este mínimo o cerca de él. Esto hace que las transacciones de Bitcoin Cash cuesten fracciones de un centavo en condiciones normales, comparado con las comisiones de Bitcoin que pueden ir desde dólares hasta decenas de dólares durante períodos de congestión.

La comunidad de desarrollo de Bitcoin Cash ha llevado a cabo una extensa investigación y pruebas sobre los límites del escalado en cadena. La Iniciativa Gigablock Testnet, realizada en 2017-2018, demostró que el protocolo Bitcoin podía manejar bloques de 1GB o más con las optimizaciones de software apropiadas y hardware moderno. Estas pruebas identificaron varios cuellos de botella en la base de código original — incluyendo la propagación de bloques, la validación de transacciones y la gestión del conjunto UTXO — e informaron los esfuerzos de optimización posteriores.

Se han realizado varias mejoras de protocolo e implementación para soportar bloques más grandes. Graphene, un protocolo de propagación de bloques basado en tablas de búsqueda de Bloom invertibles y filtros de Bloom, reduce drásticamente el ancho de banda necesario para propagar bloques codificando solo la diferencia entre un bloque y las transacciones que un nodo receptor ya tiene en su mempool. El Ordenamiento Canónico de Transacciones (CTOR), implementado en noviembre de 2018, requiere que las transacciones dentro de un bloque se ordenen por su identificador de transacción. Este cambio aparentemente menor permite optimizaciones significativas en la validación y propagación de bloques, ya que permite la validación paralela de transacciones y algoritmos de reconciliación de conjuntos más eficientes.

Las iniciativas de compromiso UTXO y validación paralela han mejorado aún más la capacidad de la red para manejar bloques grandes de manera eficiente. Aprovechando los procesadores multinúcleo modernos y el almacenamiento de estado sólido, las implementaciones de nodos optimizadas pueden validar bloques que contienen decenas de miles de transacciones dentro de marcos de tiempo aceptables.

La hoja de ruta de escalabilidad de Bitcoin Cash prevé aumentos adicionales en el límite de tamaño de bloque a medida que la tecnología y la demanda lo justifiquen. Los desarrolladores del proyecto han expresado un objetivo a largo plazo de soportar volúmenes de pago a escala global completamente en cadena, apuntando a niveles de rendimiento que permitirían a Bitcoin Cash servir miles de millones de transacciones diarias. Si bien este objetivo es ambicioso, las mejoras continuas en las capacidades del hardware, el ancho de banda de red y la optimización de software proporcionan un camino creíble para lograrlo incrementalmente a lo largo del tiempo.

Un aspecto importante del enfoque de escalado de Bitcoin Cash es el concepto de transacciones de "cero confirmaciones". Para pagos de bajo valor, los comerciantes pueden aceptar transacciones inmediatamente después de su transmisión, antes de que sean incluidas en un bloque. Bitcoin Cash ha implementado varias medidas para mejorar la fiabilidad de las transacciones de cero confirmaciones, incluyendo la regla de "primera vista" (donde los nodos retransmiten solo la primera versión de una transacción que ven, haciendo más difíciles los intentos de doble gasto) y protocolos de notificación de doble gasto que alertan a los comerciantes si se detecta una transacción conflictiva. Estas medidas hacen que Bitcoin Cash sea práctico para transacciones en punto de venta donde esperar diez minutos para una confirmación de bloque sería impracticable.

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提供了一个成熟的、高度安全的、广泛支持的网络的优势,拥有经过验证的持续运营记录。

OP_RETURN and Data Applications

Bitcoin Cash soporta el opcode OP_RETURN, que permite a los usuarios incrustar datos arbitrarios en la cadena de bloques dentro de una salida de transacción que es demostrablemente imposible de gastar. Esta característica habilita una gama de aplicaciones centradas en datos construidas sobre la cadena de bloques de Bitcoin Cash, incluyendo protocolos de tokens, sistemas de mensajería, servicios de notarización y plataformas de redes sociales.

El límite de datos OP_RETURN en Bitcoin Cash se ha establecido en 220 bytes por salida, significativamente mayor que el límite de 80 bytes de Bitcoin. Adicionalmente, Bitcoin Cash permite múltiples salidas OP_RETURN en una sola transacción, ampliando aún más la cantidad de datos que pueden incrustarse en una sola transacción. Estos límites generosos, combinados con bajas comisiones de transacción, hacen de Bitcoin Cash una plataforma económicamente viable para aplicaciones de datos que serían prohibitivamente costosas en cadenas con mayor restricción de capacidad.

El Simple Ledger Protocol (SLP) fue uno de los sistemas de tokens más tempranos y ampliamente adoptados construidos sobre Bitcoin Cash usando OP_RETURN. SLP permitía a los usuarios crear y transferir tokens personalizados en la cadena de bloques de Bitcoin Cash codificando metadatos de tokens en salidas OP_RETURN. Aunque SLP ha sido en gran parte superado por el protocolo CashTokens, demostró la viabilidad de construir economías de tokens sobre el modelo UTXO.

CashTokens, activado en mayo de 2023, representa un enfoque más sofisticado para la tokenización en Bitcoin Cash. A diferencia de SLP, que dependía de metadatos OP_RETURN que podían ser ignorados por el protocolo base, CashTokens es una característica a nivel de consenso que integra tokens directamente en el modelo UTXO. Cada UTXO puede llevar tanto un valor en BCH como un token asociado, con la validez del token aplicada por las reglas de consenso. CashTokens soporta dos tipos de tokens: tokens fungibles (similares a los tokens ERC-20 en Ethereum) y tokens no fungibles (NFTs). La aplicación a nivel de consenso significa que las transacciones de tokens tienen las mismas garantías de seguridad que las transacciones nativas de BCH, eliminando las suposiciones de confianza y los requisitos de indexación de protocolos superpuestos como SLP.

Memo.cash es un protocolo de redes sociales descentralizado construido sobre Bitcoin Cash usando transacciones OP_RETURN. Los usuarios transmiten publicaciones, seguimientos, likes y otras acciones sociales como transacciones de Bitcoin Cash con datos OP_RETURN codificados. Dado que los datos se almacenan en la cadena de bloques, son resistentes a la censura y se archivan permanentemente. Los bajos costos de transacción en Bitcoin Cash hacen esto económicamente factible — cada acción de redes sociales cuesta una fracción de un centavo.

Otras aplicaciones de datos en Bitcoin Cash incluyen servicios de sellado temporal y notarización de documentos, donde el hash de un documento se incrusta en una salida OP_RETURN para crear un registro permanente e inalterable de la existencia del documento en un punto específico en el tiempo. El seguimiento de la cadena de suministro, la verificación de credenciales y los sistemas de identidad descentralizada también se han construido utilizando las capacidades de incrustación de datos de Bitcoin Cash.

La combinación de gran capacidad OP_RETURN, bajas comisiones y tiempos de confirmación rápidos posiciona a Bitcoin Cash como una plataforma competitiva para aplicaciones de datos basadas en blockchain. Aunque existen blockchains de datos especializadas, Bitcoin Cash ofrece la ventaja de una red bien establecida, altamente segura y ampliamente soportada con un historial probado de operación continua.

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%的压缩率。

网络的中继和内存池策略旨在支持可靠的零确认交易。节点遵循严格的首次发现规则,仅接受和中继他们观察到的第一个版本的交易。如果检测到尝试花费相同输入的第二笔交易(双花尝试),节点将生成双花证明并通过网络传播,向商户和其他相关方发出警报。此基础设施为接受日常小额支付的未确认交易提供了合理的安全水平。

Network Architecture

La red Bitcoin Cash opera sobre la misma arquitectura peer-to-peer fundamental que Bitcoin, con nodos comunicándose a través de un protocolo de chismorreo para propagar transacciones y bloques. Los nodos completos mantienen una copia completa de la cadena de bloques y validan independientemente todas las transacciones y bloques de acuerdo con las reglas de consenso. La red es sin permisos, lo que significa que cualquiera puede operar un nodo y participar en la red sin autorización.

Existen múltiples implementaciones independientes de nodos completos para Bitcoin Cash, reflejando el compromiso del proyecto con el desarrollo descentralizado. Bitcoin Cash Node (BCHN) es la implementación más ampliamente utilizada y sirve como el cliente de referencia de facto. Otras implementaciones incluyen Bitcoin Unlimited, BCHD (escrito en Go) y Knuth (una implementación de alto rendimiento en C++). La existencia de múltiples implementaciones independientes reduce el riesgo de que un solo error de software cause una falla en toda la red y asegura que ningún equipo de desarrollo individual tenga control unilateral sobre el protocolo.

La minería en Bitcoin Cash utiliza el algoritmo de prueba de trabajo SHA-256, idéntico al de Bitcoin. Esto significa que el mismo hardware de minería ASIC puede usarse para minar cualquiera de las dos cadenas, y los mineros pueden alternar entre Bitcoin y Bitcoin Cash basándose en la rentabilidad. En la práctica, la tasa de hash de Bitcoin Cash es una fracción de la de Bitcoin, ya que la mayoría del poder de minería SHA-256 se dirige a la cadena de Bitcoin, más rentable. Sin embargo, el algoritmo de ajuste de dificultad de Bitcoin Cash asegura que los bloques se produzcan en el intervalo objetivo de diez minutos independientemente del nivel absoluto de tasa de hash.

El algoritmo de ajuste de dificultad es uno de los componentes de protocolo más importantes de Bitcoin Cash. El ajuste de dificultad original de Bitcoin, que recalcula cada 2.016 bloques (aproximadamente cada dos semanas), era demasiado lento para acomodar las rápidas fluctuaciones de tasa de hash que Bitcoin Cash experimentaba cuando los mineros alternaban entre él y Bitcoin. Después del problemático período de Ajuste de Dificultad de Emergencia (EDA) en 2017, Bitcoin Cash adoptó un nuevo algoritmo en noviembre de 2017 que ajustaba la dificultad basándose en una ventana móvil de 144 bloques.

En noviembre de 2020, Bitcoin Cash se actualizó al algoritmo de ajuste de dificultad ASERT (Absolutely Scheduled Exponentially Rising Targets), también conocido como aserti3-2d. ASERT es un algoritmo matemáticamente elegante que ajusta el objetivo de dificultad basándose en la diferencia entre el tiempo real transcurrido y el tiempo esperado desde un bloque de referencia (el "bloque ancla"). Si los bloques se están produciendo más rápido de lo esperado, la dificultad aumenta exponencialmente; si más lento, disminuye exponencialmente. La designación "3-2d" se refiere a una vida media de aproximadamente dos días (específicamente 288 bloques al objetivo de diez minutos), lo que significa que una duplicación o reducción a la mitad sostenida de la tasa de hash resultaría en un ajuste completo de dificultad dentro de dos días. ASERT ha demostrado ser altamente estable, produciendo intervalos de bloque consistentes incluso bajo una volatilidad significativa de la tasa de hash.

La eficiencia en la propagación de bloques es crítica para una red con bloques grandes. Bitcoin Cash ha adoptado varias optimizaciones para asegurar que los bloques grandes puedan propagarse rápidamente por la red. Los Bloques Compactos (BIP 152), que permiten a los nodos reconstruir bloques a partir de identificadores de transacción en lugar de datos completos de transacciones, reducen drásticamente el ancho de banda necesario para la propagación de bloques cuando los nodos tienen mempools superpuestos. El protocolo Graphene proporciona una compresión aún mayor mediante el uso de estructuras de datos probabilísticas para lograr una codificación de bloques casi óptima. Xthinner es otro protocolo de compresión desarrollado específicamente para Bitcoin Cash que logra aproximadamente un 99,6 por ciento de compresión para bloques típicos.

Las políticas de retransmisión y mempool de la red están diseñadas para soportar transacciones de cero confirmaciones fiables. Los nodos siguen una regla estricta de primera vista, aceptando y retransmitiendo solo la primera versión de una transacción que observan. Si se detecta una segunda transacción que intenta gastar las mismas entradas (un intento de doble gasto), los nodos generarán una prueba de doble gasto y la propagarán por la red, alertando a los comerciantes y otras partes interesadas. Esta infraestructura proporciona un nivel de seguridad razonable para aceptar transacciones no confirmadas para pagos cotidianos de bajo valor.

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独立)和可预测性(无需竞争的全局状态)方面提供优势,但需要与基于账户的系统不同的设计模式。

Smart Contract Capabilities

Si bien Bitcoin Cash está diseñado principalmente como un sistema de efectivo electrónico peer-to-peer, ha desarrollado capacidades significativas de contratos inteligentes a través de extensiones a su lenguaje de scripts. A diferencia del modelo de contratos inteligentes basado en cuentas y Turing-completo de Ethereum, los contratos inteligentes de Bitcoin Cash operan dentro del modelo UTXO usando un lenguaje de scripts basado en pila que deliberadamente no es Turing-completo. Este diseño proporciona costos de ejecución predecibles y evita la clase de vulnerabilidades asociadas con la computación ilimitada, mientras permite un conjunto sorprendentemente rico de instrumentos financieros programables.

El lenguaje de scripts de Bitcoin Cash ha sido progresivamente mejorado a través de una serie de actualizaciones de protocolo. En mayo de 2018, varios opcodes que habían sido desactivados temprano en la historia de Bitcoin fueron reactivados, incluyendo operadores de lógica bit a bit (OP_AND, OP_OR, OP_XOR), operadores aritméticos para números más grandes y operaciones de manipulación de cadenas (OP_SPLIT, OP_CAT). Estos opcodes restaurados expandieron significativamente la expresividad de los scripts de Bitcoin Cash.

La introducción de OP_CHECKDATASIG y OP_CHECKDATASIGVERIFY en noviembre de 2018 fue un avance particularmente importante. Estos opcodes permiten que un script de transacción verifique una firma ECDSA contra datos arbitrarios, no solo la transacción misma. Esto habilita contratos basados en oráculos donde una fuente de datos externa firma un mensaje atestiguando alguna condición del mundo real (como un precio, evento climático o resultado deportivo), y la ejecución del contrato depende del contenido de ese mensaje firmado. Esta capacidad abre la puerta a mercados de predicción descentralizados, contratos de seguros y otros instrumentos financieros que dependen de datos externos.

Los opcodes de introspección nativos, introducidos en mayo de 2022, permiten a los scripts de transacción examinar las propiedades de la transacción que los contiene. Los scripts pueden inspeccionar el valor, el script de bloqueo y los datos de tokens tanto de entradas como de salidas dentro de la misma transacción. Esto habilita contratos de estilo covenant — scripts que restringen cómo las monedas pueden gastarse en transacciones futuras, no solo quién puede gastarlas. Los covenants habilitan patrones poderosos como bóvedas (restricciones de gasto con bloqueo temporal para seguridad), pagos recurrentes, exchanges descentralizados y mecanismos de votación en cadena.

CashScript es un lenguaje de contratos inteligentes de alto nivel para Bitcoin Cash, análogo a Solidity para Ethereum. CashScript permite a los desarrolladores escribir contratos en una sintaxis familiar, similar a JavaScript, que se compila a bytecode de scripts de Bitcoin Cash. El lenguaje maneja la complejidad del diseño de contratos basados en UTXO, incluyendo la introspección de entrada/salida y la verificación de firmas, haciéndolo accesible para desarrolladores que pueden no estar familiarizados con la programación de bajo nivel basada en pila. Los contratos CashScript se han utilizado para construir exchanges descentralizados, servicios de custodia, plataformas de crowdfunding y otras aplicaciones.

La actualización CashTokens en mayo de 2023 añadió otra dimensión a las capacidades de contratos inteligentes de Bitcoin Cash. Al incrustar tokens fungibles y no fungibles directamente en el modelo UTXO a nivel de consenso, CashTokens habilita contratos basados en tokens que son aplicados por las reglas de consenso de la red en lugar de protocolos superpuestos. Los tokens no fungibles (NFTs) en CashTokens llevan un campo de "compromiso" — datos arbitrarios adjuntos al token — que pueden ser leídos y validados por scripts de contratos inteligentes. Esto crea un mecanismo para mantener estado en cadena a través de múltiples transacciones, una capacidad que anteriormente era difícil de lograr en el modelo UTXO. Los contratos pueden usar NFTs como portadores de estado, actualizando los datos de compromiso con cada transacción para implementar protocolos complejos de múltiples pasos.

La combinación de opcodes de introspección, CashTokens y CashScript crea una plataforma de contratos inteligentes que, aunque fundamentalmente diferente del modelo de Ethereum, es capaz de implementar muchas de las mismas aplicaciones financieras descentralizadas. Exchanges descentralizados, creadores de mercado automatizados, protocolos de préstamo y organizaciones autónomas descentralizadas han sido construidos o prototipados en Bitcoin Cash. El enfoque basado en UTXO ofrece ventajas en términos de paralelización (los UTXOs pueden validarse independientemente), privacidad (cada UTXO es independiente) y predictibilidad (sin estado global con el que contender), aunque requiere patrones de diseño diferentes a los sistemas basados en cuentas.

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算力中的份额一直与其相对价格成正比,反映了利润最大化矿工的理性经济行为。

Monetary Policy

Bitcoin Cash hereda la política monetaria de Bitcoin en su totalidad. La oferta total de Bitcoin Cash está limitada a 21 millones de monedas, y el calendario de emisión sigue el mismo mecanismo de reducción a la mitad que Bitcoin. Esta política monetaria compartida es una consecuencia directa de la bifurcación: debido a que Bitcoin Cash se separó de la cadena de bloques de Bitcoin, comenzó con el mismo historial de emisión y continúa con las mismas reglas de emisión futuras.

La recompensa por bloque comenzó en 50 BCH por bloque (heredada de los parámetros de génesis de Bitcoin) y se reduce a la mitad cada 210.000 bloques, aproximadamente cada cuatro años. La primera reducción a la mitad ocurrió en noviembre de 2012 (antes de la bifurcación, por lo que es historia compartida), reduciendo la recompensa a 25 monedas. La segunda reducción a la mitad en julio de 2016 la redujo a 12,5 monedas. La tercera reducción a la mitad en abril de 2020, que ocurrió después de la bifurcación y por lo tanto fue específica de la cadena Bitcoin Cash, redujo la recompensa a 6,25 BCH. La cuarta reducción a la mitad en abril de 2024 la redujo aún más a 3,125 BCH por bloque.

Este calendario de reducción a la mitad crea una política monetaria desinflacionaria en la que la tasa de creación de nuevas monedas disminuye con el tiempo, acercándose a cero asintóticamente. Se espera que la última moneda de Bitcoin Cash se mine alrededor del año 2140. En ese momento, los ingresos de los mineros consistirán enteramente en comisiones de transacción.

El límite de oferta de 21 millones y el calendario de reducción a la mitad dan a Bitcoin Cash las mismas propiedades de escasez que Bitcoin. La oferta circulante a principios de 2026 es de aproximadamente 19,8 millones de BCH, representando más del 94 por ciento de la oferta total que existirá. Las monedas restantes se distribuirán durante más de un siglo de recompensas de bloque decrecientes.

El enfoque de Bitcoin Cash hacia la transición de recompensas de bloque a compensación de mineros basada en comisiones difiere de la estrategia de Bitcoin. La filosofía de escalado de Bitcoin, que restringe el espacio de bloque para mantener un mercado de comisiones, depende implícitamente de altas comisiones por transacción para compensar a los mineros a medida que las recompensas de bloque disminuyen. Bitcoin Cash adopta el enfoque opuesto: al mantener las comisiones bajas y los bloques grandes, la red busca generar ingresos totales por comisiones suficientes a través de un alto volumen de transacciones en lugar de altas comisiones por transacción. En este modelo, si cada transacción paga una comisión de un centavo pero la red procesa millones de transacciones por bloque, los ingresos agregados por comisiones pueden ser lo suficientemente sustanciales como para incentivar la minería.

Este modelo de comisiones basado en volumen requiere que Bitcoin Cash logre un rendimiento de transacciones significativamente mayor que el de Bitcoin para proporcionar incentivos equivalentes a los mineros en la era posterior a los subsidios. Los defensores argumentan que esto es alcanzable a través del escalado continuo en cadena, ya que la demanda global de pagos es enorme e incluso una participación modesta de las transacciones mundiales representaría millones de pagos diarios. Los críticos replican que lograr este nivel de adopción es incierto y que el modelo de bajas comisiones puede crear incentivos insuficientes durante el período de transición.

La política monetaria compartida entre Bitcoin y Bitcoin Cash significa que las dos cadenas compiten directamente por el poder de hash de minería SHA-256. Los mineros asignan sus recursos a la cadena que sea más rentable en cualquier momento dado, y los algoritmos de ajuste de dificultad de ambas cadenas acomodan esta asignación fluida. En la práctica, la participación de Bitcoin Cash en la tasa de hash total de SHA-256 ha sido proporcional a su precio relativo, reflejando el comportamiento económico racional de los mineros que maximizan sus beneficios.

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最终能否实现其服务于全球电子现金的宏伟目标,将不由技术限制决定,而由支配所有货币系统演进的网络效应、市场动态和采用模式决定。

Conclusion

Bitcoin Cash representa una continuación basada en principios de la visión original de Bitcoin como efectivo electrónico peer-to-peer. Al aumentar el límite del tamaño de bloque y perseguir el escalado en cadena, Bitcoin Cash ha mantenido las bajas comisiones y las transacciones rápidas que caracterizaban al Bitcoin temprano, haciéndolo práctico para los pagos cotidianos y las microtransacciones que el libro blanco original visualizaba.

La trayectoria técnica del proyecto ha estado marcada por mejoras de protocolo reflexivas y trascendentes. El algoritmo de ajuste de dificultad ASERT proporciona una producción de bloques estable bajo condiciones volátiles de tasa de hash. El lenguaje de scripts mejorado, con opcodes restaurados y nuevos, permite contratos inteligentes sofisticados dentro de las restricciones de seguridad del modelo UTXO. CashTokens trae la tokenización aplicada a nivel de consenso al protocolo Bitcoin por primera vez. CashScript hace estas capacidades accesibles a una amplia comunidad de desarrolladores. En conjunto, estos avances demuestran que el modelo UTXO puede soportar un rico ecosistema de aplicaciones descentralizadas mientras mantiene sus propiedades fundamentales de simplicidad y seguridad.

El debate sobre escalabilidad que condujo a la creación de Bitcoin Cash destacó una tensión fundamental en los sistemas descentralizados: el equilibrio entre la capacidad en cadena y el costo de operar nodos completos. Bitcoin Cash ha elegido priorizar la capacidad de transacciones y la experiencia del usuario, argumentando que los beneficios económicos de una adopción y uso generalizados superan los mayores requisitos de hardware para los operadores de nodos. Esta es una cuestión empírica cuya respuesta se desenvolverá en los próximos años y décadas a medida que tanto Bitcoin como Bitcoin Cash continúen evolucionando por sus respectivos caminos.

La supervivencia y el desarrollo continuo de Bitcoin Cash a través de múltiples mercados bajistas, bifurcaciones contenciosas (notablemente la división de Bitcoin SV en noviembre de 2018) y el esfuerzo sostenido de la comunidad demuestran la resiliencia del proyecto y la convicción de sus participantes. La red ha procesado cientos de millones de transacciones desde la bifurcación, ha mantenido una operación continua y ha atraído una comunidad global de desarrolladores, comerciantes y usuarios que comparten la creencia de que el efectivo electrónico peer-to-peer es una tecnología que vale la pena construir.

El éxito a largo plazo de Bitcoin Cash depende de su capacidad para atraer usuarios y comerciantes que valoren las transacciones de bajas comisiones y fiables, y para escalar su infraestructura para satisfacer las demandas de una red de pagos global. Las bases técnicas son sólidas, la hoja de ruta es clara y la comunidad está comprometida. Si Bitcoin Cash alcanza finalmente su ambicioso objetivo de servir como efectivo electrónico para el mundo será determinado no por limitaciones técnicas sino por los efectos de red, las dinámicas de mercado y los patrones de adopción que gobiernan la evolución de todos los sistemas monetarios.