Bitcoin no fue hackeado

Recientemente una ola de ataques a Coldcard resultó en la pérdida de un poco más de 1.300 BTC. De inmediato los evangelistas de la ignorancia, aquellos mamarrachos que viven de likes, salieron a hablar de lo riesgoso que era tener BTC. Pero no, contrario al ruido generado por los tarros vacíos, Bitcoin no fue hackeado y sigue siendo un activo técnicamente seguro.

Así es, Bitcoin no fue hackeado, la blockchain no fue hackeada, nadie pudo crear nuevas unidades de BTC ni causar un doble gasto. Nada de eso ocurrió. Lo que sí ocurrió fue que unos atacantes aprovecharon una debilidad que les permitiría enumerar y probar combinaciones de frases semillas offline, hasta dar con claves válidas para después firmar transacciones y enviarse a sí mismos los fondos.

Repito: Bitcoin no fue hackeado. Fueron vulneradas unas wallets cuyas semillas habían sido creadas con un firmware vulnerable. Quien pueda poner en orden las palabras que conforman la frase semilla puede hacerse a los fondos. Eso es todo.

La seguridad en Bitcoin.

Para entender lo que ocurrió con las wallets de Coldcard primero hay que entender dos conceptos relacionados con la seguridad en Bitcoin. El primero de ellos es la entropía la cual es la medida de aleatoriedad usada para generar las claves privadas y las frases semilla que protegen los fondos. A mayor entropía, más difícil es reproducir esas claves por fuerza bruta. En criptografía el nivel de entropía determinará cuán impredecible es un dato.

El segundo concepto a entender es BIP-39 (Propuesta de mejora de Bitcoin # 39 por su sigla en inglés). BIP-39 es el estándar que convierte una semilla aleatoria en una frase mnemónica de 12, 15, 18, 21 o 24 palabras para poder respaldar y restaurar una wallet de Bitcoin de forma humana y consistente. En plata blanca lo que hace BIP-39 es que convierte datos binarios difíciles de manejar en una frase fácil de escribir y verificar.

BIP-39 usa una lista estándar de 2048 palabras que puede consultar aquí. Una frase semilla de 12 palabras suele corresponder a 128 bits de entropía, una de 24 suele corresponder a 256 bits. De nuevo: a mayor entropía efectiva más difícil de organizar las palabras en orden y por tanto acceder a los fondos.

Entonces, ¿qué fue lo que pasó?

Lo que pasó fue que desde marzo de 2021 un error en el firmware hizo que, en algunos casos, no se usara el generador de números aleatorios verdadero del hardware (TRNG). En su lugar se usó un generador pseudoaleatorio por software alimentado con datos no secretos del chip lo cual redujo drásticamente la entropía efectiva de las semillas.

Esto es grave porque en lugar de los 128 bits esperados, algunas semillas quedaron con solo 72 bits y, en algunos reportes, incluso 40 bits de entropía. Con 40 o 72 bits de entropia efectiva el espacio de posibles semillas se vuelve lo suficientemente pequeño para que un atacante pueda enumerar sistemáticamente las palabras posibles, crear combinaciones y probarlas en la blockchain (que es donde en realidad se encuentran los fondos, no en la wallet física).

¿Bitcoin sigue siendo seguro?

Sí, Bitcoin no fue hackeado y sigue siendo tan seguro como que en cada una de las células somáticas nucleadas del cuerpito de Néstor* encontraremos cromosomas XY masculinos así elle se perciba como une chique XX. La red Bitcoin sigue tan segura y robusta como siempre. No debemos confundir que alguien accedió a su cuenta bancaria porque su clave era 1234 con que hackearan el banco.

Para entender un poco más la seguridad de Bitcoin cuando se aplica correctamente la entropía miremos la siguiente tabla:


Bitcoin no fue Hackeado


Analicemos solo dos filas: la primera y la última. En la primera fila vemos una frase semilla de 12 palabras hecha con una entropía efectiva de 128 bits. Con una velocidad de cómputo de 1×10^6, es decir, un millón de intentos por segundos, le tomaría al atacante 10.782.897.524.556.317.946.019.840 años. Más o menos el mismo tiempo que llevan los letrinoamericanos creyendo que el socialismo funciona.

Ahora analicemos la última fila donde tenemos 24 palabras con una entropía efectiva de 256 bits. Con una velocidad de cómputo de 1×10^12 se probarían 1 billón de combinaciones por segundo (1 millón de millones). A ese ritmo, inalcanzable por la computación actual, tardarían 3.67×10^57 años lo que equivale a: 3.669.229.891.921.952.312.239.613.346.353.196.774.737.754.613.677.891.256.320 años.

Siendo así, al día de hoy no existe forma humana ni técnica que permita vulnerar una wallet si su frase semilla ha sido generada con la entropía adecuada. Lo que ocurrió no es un defecto de Bitcoin per se sino un cagadón imperdonable de Coldwallet.


*Ese maldito del Néstor no deja de atormentarme pero algún día lo encontraré y ajustaremos cuentas.

Temas: Cripto, Inversiones
J. Inversor

Escrito por:J. Inversor Otros posts del autor

Privacidad no es secretismo. Secretismo es cuando quieres que algo no se sepa. Privacidad es el inalienable derecho que todos tenemos de revelarnos selectivamente al mundo.