El algoritmo SHA-256 puede ser utilizando en Bitcoin
Me ha encantado descubrir el canal y el estilazo de Matthew Weathers explicando el funcionamiento del algoritmo SHA-256, una función hash determinista «de un solo sentido» que se suele definir así:
Los algoritmos como el SHA-256 se definen como una función que «resume» una cadena de datos de cierta longitud (normalmente, larga) en una cadena más corta de longitud fija (normalmente más corta). Es algo parecido a una «suma de control» o «firma única», con ciertas virtudes peculiares: la misma información de entrada proporciona siempre la misma información de salida, de modo que dos entradas distintas no pueden producir el mismo hash (o es astronómicamente difícil que eso suceda). Todos los hashes tienen la misma probabilidad, entre otras cosas. Adicionalmente suelen ser de «un solo sentido»: con el hash de unos datos no se puede recrear cuáles eran los datos originales.
Aunque el ejemplo que propone de «función de un solo sentido» no sea perfecto (multiplicar dos números primos grandes y luego encontrar los factores del resultado, frente a hacer lo mismo con una suma, porque sumas pueden haber muchas) la idea se entiende. Sobre todo explica muy bien cómo cada hash es único, la infinidad que hay (bueno, 2256 de ellos) y como a «escala humana» eso es sencillamente inabarcable: los hashes SHA-256 de cualquier entrada nunca se han repetido, ni se repetirán. Y eso que es un algoritmo que hasta se puede calcular a mano.
La última parte está dedicada –con espléndido sarcasmo– a explicar su relevancia en el mundo del Bitcoin: dado que el ritmo al que se «minan» nuevos bitcoins depende de encontrar ciertos hashes que empiecen por 70 y tantos ceros (como ya nos explicó Aners Brownworth), si alguien hubiera crackeado el SHA-256 y pudiera «invertirlo» podría fabricar Bitcoins al ritmo que quisiera.
Teniendo en cuenta que a día de hoy un Bitcoin se cambia a unos ~11,000 dólares no habría razón para no aprovecharse un poco; sería prácticamente como tener una impresora de billetes pero en criptodivisas canjeables. Incluso para «disimular» y no hundir el mercado se podrían ir minando poco a poco, a ritmo poco sospechoso. Mmm…
La forma en la que Weathers explica esta teoría teniendo en cuenta que nadie sabe quien es realmente Satoshi Nakamoto (creador del protocolo Bitcoin) y que el SHA-256 procede de la NSA (Agencia de Seguridad Nacional estadounidense) es simplemente sarcástica y brillante.