SHA-256, el algoritmo que usa la red Bitcoin

Existen muchos sistemas para codificar la información y uno de ellos es el SHA-256, que es el algoritmo usado por Bitcoin para garantizar la integridad de la información almacenada en un bloque, entre otras cosas.

Como casi todos los avances en materia de criptografía, los gobiernos del mundo han tenido un papel fundamental debido a las guerras. SHA, Secure Hash Algorithm (o Algoritmo de Hash Seguro), es uno de estos avances. Es un algoritmo criptográfico de Hash desarrollado por la Agencia de Seguridad Nacional de los Estados Unidos (NSA) y el National Institute of Standards and Technology (NIST) con el objetivo de generar hashes únicos en base a un estándar con el que se pudieran cifrar las comunicaciones. Fue un avance para garantizar la privacidad del contenido en el procesamiento de información.

En 1993 salió a la luz el primer protocolo SHA, también llamado coloquialmente SHA-0. Dos años más tarde se publicó una variante mejorada más resistente, el SHA-1. Algunos años más tarde se lanzó SHA-2, que tiene cuatro variantes según el número de bits, como son SHA-224, SHA-256, SHA-384 y SHA-512.

Un algoritmo hash funciona en una sola dirección: esto quiere decir que de cualquier contenido podemos generar su hash (su ‘huella dáctilar digital’) pero de un hash no hay forma de generar el contenido asociado a él, salvo probando al azar hasta dar con el contenido.

Entre las diferentes formas de crear hashes, el algoritmo usado por SHA-256 es uno de los más usados por su equilibrio entre seguridad y coste computacional de generación, pues es un algoritmo muy eficiente para la alta resistencia de colisión que tiene.

Otra de las particularidades del algoritmo de hash SHA-256 es que la longitud del hash resultante es siempre igual, no importa lo extenso que sea el contenido que uses para generar el hash: ya sea de una letra o todas las palabras del libro de Harry Potter entero, el resultado siempre es una cadena de 40 de letras y números (con una codificación de 256 bits, 32 bytes).

Esta es la función de un hash: generar un resumen. No te pierdas el capítulo dedicado al Hash para entender de forma simple y más detallada todo esto.

En Bitcoin el SHA-256 se utiliza para el proceso de minería (creación de bitcoins), pero también en el proceso de generar direcciones bitcoin. Esto es así por el gran nivel de seguridad que ofrece. 

Dentro de la red blockchain todos los nodos tendrían una copia del hash de 40 caracteres que representa la información que representa, por ejemplo, a todo un bloque. Una vez esa información está validada por la red (o lo que es lo mismo, ya ha quedado registrada en la cadena) cualquier manipulación de esa información intentando modificar algún carácter del hash validado, sería detectada de forma inmediata y se descartaría.

Ejemplo de un Hash de tipo SHA-256:

Si quieres hacer pruebas puedes acceder a esta página de generación de contraseñas basadas en SHA-256, haciendo click aquí.

¿QUIERES APRENDER BITCOIN?
Recibe todos los nuevos artículos en tu mail

SUSCRIBIRME AHORA
Bit2Me Academy le desea feliz viaje al Universo Bitcoin
➜ ¿TE PARECE ÚTIL ESTE ARTÍCULO? COMPARTE EL CONOCIMIENTO:
2018-10-08T23:48:11+00:00
¿QUIERES APRENDER BITCOIN?
Recibe todos los nuevos artículos en tu mail

SUSCRIBIRME AHORA
Bit2Me Academy le desea feliz viaje al Universo Bitcoin
close-link
Esta web usa cookies y servicios de terceros. Revise toda la Información Legal y Términos en el pie de esta página. ACEPTO