Hash

La función criptográfica hash es un algoritmo matemático que transforma un bloque arbitrario de datos en una nueva serie de caracteres con una longitud fija. Es clave en la tecnología Blockchain. 

***

 

Qué es

Un hash o función hash es cualquier función matemática utilizada para mapear datos de tamaño arbitrario a un conjunto de datos de tamaño fijo.

Para algunos autores, es como la huella digital de un texto.

La palabra viene del idioma inglés y se traduce como “picadillo”. La idea es que una vez que algo se pica en muchas partes, como por ejemplo cuando se ralla un trozo de queso, es imposible volver a tener el bloque de queso original a partir de los pedazos rallados. En el caso de las funciones hash, estas son funciones unidireccionales las cuales tienen como propiedad la imposibilidad de volver a formar los datos de entrada con los datos retornados por la función.

Los valores devueltos por estas funciones son llamados valores o códigos hash, o bien, hashes.

Las funciones hash son utilizadas generalmente en conjunción a tablas de hashes, una estructura de datos común en software para búsquedas rápidas de datos. Las funciones hash aceleran las búsquedas al detectar registros duplicados dentro de un archivo grande.

Asimismo, las funciones hash son útiles en criptografía y Blockchain dado que permiten verificar fácilmente que datos de entrada correspondan a valores hash, si no se tiene la información de entrada, es deliberadamente difícil reconstruirla a partir del valor hash. También se utilizan los hashes para asegurar la integridad de datos transmitidos por una red, como es el caso de las cadenas de bloques.

hash
Funciona como una suerte de huella, al ser único. Imagen de Youtube

Características

Explica Bit2Me Academy que entre las principales características se pueden mencionar:

  1. Son fáciles de calcular. Esos algoritmos son muy eficientes y no requieren de grandes potencia de cálculo para ejecutarse.
  2. Son comprensibles. Sin importar el tamaño de la entrada de datos, el resultado siempre será una cadena de longitud fija. Por ejemplo, en el caso de SHA-256, la cadena tendrá una longitud de 64 caracteres.
  3. Funcionamiento tipo avalancha. Cualquier mínimo cambio en la entrada de datos, origina un hash distinto a la entrada de datos original.
  4. Resistencia débil y fuerte a colisiones. Es imposible calcular un hash, que permita encontrar otro igual. Mejores conocidos como pre-imagen y segunda preimagen, es el concepto base de la seguridad de los hashes.
  5. Son irreversibles. Tomar uno y obtener los datos que dieron origen al mismo, en la práctica no puede ser posible. Esto es uno de los principios que hacen a los hashes seguros.

Sobre SHA

SHA (Secure Hash Algorithm) es el estándar actual de hashes criptográficos. Se trata de una familia de funciones publicadas por el Instituto Nacional de Normas y Tecnología de Estados Unidos como parte de su proyecto interno para autentificar documentos electrónicos. SHA y sus derivadas son consideradas las funciones hash más seguras hasta el momento. Para el ecosistema cripto es importante SHA-256, por ser fundamental en la tecnología que hizo posible Bitcoin.

Artículo de Angel León/DiarioBitcoin

« Volver al índice del glosario

Related posts