En la lección anterior vimos que Bitcoin es un libro de cuentas compartido. Pero ¿cómo se ponen de acuerdo miles de ordenadores que no se conocen y no se fían unos de otros sobre qué apuntes son válidos? La respuesta tiene tres piezas: bloques, una cadena que los une y un trabajo que cuesta energía hacer.
Las transacciones se agrupan en bloques
Cuando alguien envía bitcoins, su monedero crea una transacción: un mensaje firmado que dice «estas monedas pasan a esta dirección». La transacción se difunde por la red y espera, junto a muchas otras, a que alguien la apunte en el libro.
Cada diez minutos de media, uno de los participantes de la red, un minero, consigue añadir un nuevo bloque: una página del libro con unos pocos miles de transacciones. Cada bloque tiene un número de orden, su altura, que empezó en 0 con el génesis en 2009 y hoy supera los 970.000.
Una cadena imposible de reescribir
Cada bloque lleva en su cabecera el hash del bloque anterior: una huella digital que cambia por completo si se toca una sola coma de ese bloque. Así se forma la cadena de bloques. Si alguien intentara modificar una transacción antigua, el hash de ese bloque cambiaría y rompería el enlace con el siguiente, y con el siguiente, y así hasta hoy.
Para que el cambio pasara inadvertido, habría que rehacer todos los bloques posteriores. Y aquí entra la pieza clave.
La prueba de trabajo
Añadir un bloque no es gratis. El minero tiene que encontrar un hash de su bloque que empiece por una cantidad enorme de ceros, y la única forma de conseguirlo es probar: cambia un número de la cabecera, el nonce, calcula el hash con SHA-256, comprueba si vale y vuelve a empezar. Hoy la red entera prueba del orden de mil trillones de combinaciones por segundo. Es la prueba de trabajo: cuesta mucha electricidad encontrar un bloque válido, pero cualquiera puede comprobar en un instante que lo es.
Por eso reescribir el pasado es inviable: habría que repetir todo ese trabajo para el bloque modificado y para todos los posteriores, y hacerlo más rápido que el resto de la red junta, que mientras tanto sigue añadiendo bloques nuevos.
Los nodos: los que hacen cumplir las reglas
Los mineros proponen bloques, pero quien decide si son válidos son los nodos: ordenadores que guardan una copia completa de la cadena y comprueban cada bloque y cada transacción. Si un minero incluye un pago que gasta monedas que no existen, o se asigna más recompensa de la permitida, los nodos rechazan ese bloque y el minero pierde todo lo que gastó en encontrarlo.
Entre varias cadenas válidas, los nodos siguen la que acumula más trabajo. Ese acuerdo se llama consenso, y es lo que hace que miles de desconocidos compartan exactamente el mismo libro de cuentas sin necesidad de fiarse unos de otros.
Confirmaciones
Cuando tu transacción entra en un bloque, tiene una confirmación. Cada bloque que se añade después suma otra. Con más confirmaciones, más trabajo habría que rehacer para deshacerla: con seis, unos sesenta minutos, se considera irreversible a efectos prácticos. Puedes ver cuántas tiene cualquier transacción en el explicador de transacciones.
Cuando las reglas cambian
Las reglas de Bitcoin pueden mejorar, pero solo si la red lo acepta. Las mejoras compatibles con las reglas anteriores, como SegWit o Taproot, mantienen la red unida. Los cambios incompatibles pueden partirla en dos: es una bifurcación, como la que dio lugar a Bitcoin Cash en 2017. Los nodos que no aceptan el cambio siguen en la cadena original.
En resumen
Las transacciones se agrupan en bloques, cada bloque se encadena al anterior con su hash y añadir uno exige una prueba de trabajo costosa. Los nodos comprueban todo y siguen la cadena con más trabajo. El resultado es un registro que nadie controla y nadie puede reescribir. En la próxima lección veremos qué es exactamente «tener» bitcoins: claves y direcciones.