En 30 segundos
Ningún banco ni gobierno puede borrar un pago de Bitcoin, porque está guardado en una blockchain: literalmente, una cadena de bloques llenos de pagos. Cada bloque tiene una huella digital (un hash), cada bloque guarda la huella del anterior, y miles de ordenadores guardan una copia y lo comprueban todo.
Pero recalcular huellas es facilísimo… entonces, ¿qué impide falsificarla? Esa es la pregunta de toda la serie (la respuesta, en la parte 4).
La huella digital: el hash
Una función hash coge un dato de cualquier tamaño (una palabra, un PDF, un bloque entero) y lo convierte en un número de tamaño fijo. Bitcoin usa SHA-256, que siempre devuelve 256 bits. Se suelen escribir en hexadecimal (cada carácter, del 0 al 9 y de la a a la f, representa 4 bits), así que salen 64 caracteres.
Para que una función hash sirva en criptografía tiene que cumplir tres cosas:
- Determinista: el mismo dato da siempre la misma huella.
- Efecto avalancha: un cambio mínimo da una huella que no se parece en nada. Cambiando una sola letra (que en binario es un solo bit: la
aes01100001y laAes01000001):
| Texto | SHA-256 |
|---|---|
hola | b221d9dbb083a7f33428d7c2a3c3198ae925614d70210e28716ccaa7cd4ddb79 |
holA | e028fa3463f8bbcb76607c0819bd85103de648004fcabb0648ce3662459956f4 |
- Resistente a la preimagen: viendo la huella, no hay forma conocida de saber qué dato la produjo. Las huellas posibles son 2²⁵⁶ ≈ 1,16·10⁷⁷, un número de 78 cifras: ni con todos los ordenadores del mundo se podrían probar todas.
Pruébalo en Linux o Mac (el -n evita que se cuele un salto de línea, que cambiaría la huella entera):
echo -n hola | sha256sum
La cadena
Cada bloque guarda, además de sus pagos, la huella del bloque anterior. Así quedan encadenados:
bloque 1 ──► bloque 2 ──► bloque 3
huella d726 guarda d726 guarda bf2a
huella bf2a huella 6554
Si alguien cambia el pago del bloque 2 (de «Luis→Eva: 2» a «Luis→Eva: 200»), su huella pasa de bf2a a 88c6, y el bloque 3, que guardaba bf2a, ya no coincide: la cadena se rompe. Para taparlo habría que recalcular el bloque 3, y el siguiente, y el siguiente… Tocar el pasado obliga a rehacer todo lo que viene después.
En Bitcoin sale un bloque cada 10 minutos de media, y ya van más de 970.000 desde 2009.
Miles de copias
No hay un servidor central. Miles de ordenadores (los nodos completos) descargan la cadena entera desde el bloque 0 y comprueban cada bloque por su cuenta: que las huellas encajen, que nadie gaste dinero que no tiene, que nadie gaste dos veces la misma moneda.
Si alguien les manda una versión trucada, no cumple las reglas y la descartan. No hay votación ni jefe: cada nodo aplica las mismas reglas y llega a la misma conclusión.
La pregunta de la serie
Recalcular huellas es facilísimo: un ordenador normal hace cientos de miles por segundo. Un falsificador podría cambiar un pago y recalcular todas las huellas siguientes en un momento. ¿Qué lo impide?
Pista: tiene que ver con los ceros con los que empiezan las huellas de los bloques de Bitcoin. Respuesta completa en la parte 4: «Así se mina un bloque».
Datos
| Dato | Valor | Cómo se ha comprobado |
|---|---|---|
| Bloques en la cadena | más de 970.000 | bloque 971.712 el 16/10/2026 (pickaxe.io) |
| Huellas de «hola» / «holA» | arriba | sha256sum y Node.js |
Cadena de ejemplo d726 → bf2a → 6554 (manipulada: 88c6) | script propio: SHA-256 de «bloque n | datos | huella anterior» | |
| SHA-256 | salida de 256 bits | estándar FIPS 180-4 |
Lo que el vídeo simplifica
- La cadena del vídeo usa pagos de ejemplo y huellas acortadas a 4 caracteres. Bitcoin calcula la huella sobre la cabecera del bloque, en binario y aplicando SHA-256 dos veces (parte 3).
- Los nodos no votan: cada uno verifica y descarta lo que no cumple las reglas.
- «Imposible de borrar» es en la práctica: hacerlo exigiría el trabajo de la parte 4.
