$BCH 2017 · 28 min

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

Bitcoin Cash: Peer-to-Peer Electronic Cash for the World

Por Bitcoin Cash Development Team

Bitcoin Cash (BCH) se bifurcó de Bitcoin el 1 de agosto de 2017. No cuenta con su propio whitepaper — el documento presentado aquí es el whitepaper original de Bitcoin por Satoshi Nakamoto, al que Bitcoin Cash hace referencia como la base de su visión de efectivo electrónico entre pares.

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

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

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">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

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 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

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 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

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

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 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 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.

Preguntas frecuentes

¿Qué es el whitepaper de Bitcoin Cash?
Bitcoin Cash (BCH) se bifurcó de Bitcoin el 1 de agosto de 2017 para restaurar la visión original de efectivo electrónico entre pares. Aumentó el tamaño de bloque de 1 MB a 32 MB para permitir más transacciones por segundo y comisiones más bajas.
¿En qué se diferencia Bitcoin Cash de Bitcoin?
Bitcoin Cash soporta bloques de 32 MB (frente a los ~4 MB de Bitcoin con SegWit), no utiliza Segregated Witness e implementa el algoritmo de ajuste de dificultad ASERT para tiempos de bloque más estables. Prioriza el escalado en cadena para pagos cotidianos.
¿Quién creó Bitcoin Cash y cuándo?
Bitcoin Cash fue creado el 1 de agosto de 2017 a través de una bifurcación dura de Bitcoin. Los principales defensores incluían a Roger Ver y el equipo de desarrollo de Bitcoin ABC, quienes abogaban por bloques más grandes para aumentar la capacidad de transacción y reducir las comisiones.
¿Cuál es el enfoque técnico central de Bitcoin Cash?
Bitcoin Cash persigue el escalado en cadena aumentando el tamaño de bloque en lugar de depender de soluciones fuera de la cadena como la Lightning Network. Sus bloques de 32 MB pueden procesar más de 100 transacciones por segundo, en comparación con las ~7 TPS de Bitcoin.
¿Cómo funciona el consenso de Bitcoin Cash?
Bitcoin Cash usa prueba de trabajo SHA-256 como Bitcoin, con el algoritmo de ajuste de dificultad ASERT (Absolutely Scheduled Exponentially Rising Targets) que recalcula la dificultad en cada bloque para ajustes más receptivos.
¿Cuál es el modelo de suministro de Bitcoin Cash?
Bitcoin Cash tiene el mismo modelo de suministro que Bitcoin: un límite máximo de 21 millones de monedas con recompensas de bloque que se reducen a la mitad aproximadamente cada 210.000 bloques (~4 años). BCH sigue el mismo calendario de halvings ya que comparte el bloque génesis de Bitcoin.
¿Cuáles son los principales casos de uso de Bitcoin Cash?
Bitcoin Cash se centra en ser un medio de intercambio para transacciones cotidianas. Sus bajas comisiones (típicamente menos de $0,01) y las rápidas confirmaciones lo hacen adecuado para pagos en punto de venta, remesas y microtransacciones.
¿Qué problema resuelve Bitcoin Cash?
Bitcoin Cash aborda el debate de escalabilidad de Bitcoin eligiendo bloques más grandes para mayor rendimiento. Su objetivo es cumplir la visión original del whitepaper de Bitcoin de 'efectivo electrónico entre pares' con comisiones lo suficientemente bajas para transacciones diarias.
¿Cómo funciona el modelo de seguridad de Bitcoin Cash?
Bitcoin Cash usa prueba de trabajo SHA-256, compartiendo el mismo algoritmo de minería que Bitcoin. Sin embargo, BCH tiene significativamente menos poder de hash que BTC, lo que lo hace más vulnerable a ataques del 51%. El ajuste de dificultad ASERT ayuda a mantener una producción de bloques estable.
¿Cuál es el estado actual del ecosistema de Bitcoin Cash?
Bitcoin Cash mantiene un ecosistema activo centrado en la adopción por comerciantes y los pagos. Soporta CashTokens (tokens fungibles y NFT), CashFusion para privacidad y es aceptado por numerosos comerciantes en todo el mundo a través de procesadores de pago como BitPay.