¿Qué es un Hash?

Qué-es-una-función-Hash
8 min read

Puede que en muchas conversaciones sobre criptomonedas hayas escuchado hablar sobre Hash y Función Hash. En este artículo te contaremos todo sobre el Hash y su papel en el mundo de las criptomonedas.

Para tener una idea general debemos saber que un Hash viene a ser el resultado de una Función Hash. Las Funciones Hash son un tipo de operación criptográfica creada, por lo que serían identificadores únicos. Estos identificadores se derivan de la información sacada de cada bloque blockchain.

El principal objetivo de las funciones Hash es la codificación de datos para llegar a crear una cadena de caracteres única. Una función se puede crear sin importar la cantidad de datos implementados en ella. Estas funciones hashes se utilizan sobre todo en la tecnología de la cadena de bloques aportando una mayor seguridad a la misma.

¿Quién creó las funciones Hash?

Los hashes comenzaron a cobrar sentido en el año 1953 cuando Hans Peter Luhn, un informático alemán pensó en una forma de encontrar rápidamente documentos y validarlos. No obstante, no fue hasta el año 1961 que se desarrolló la primera función Hash. Wesley Peterson desarrolló la función Cyclic Redundancy Check o Comprobación de Redundancia Cíclica.

El principal objetivo de esta función era comprobar los datos que se transmitían en redes como Internet. Esta función logró una gran adopción debido a su fácil implementación y actualmente sigue siendo un estándar industrial.

Posteriormente se siguieron creando nuevas funciones a partir del desarrollo de la primera. Entre dichas funciones destaca MD2. Esta fue creada por el criptógrafo y profesor en el MIT, Ronald Rivest en el año 1989. La función fue de las primeras funciones criptográficas y aportó un alto nivel de seguridad en Internet. A partir de esta función se creó MD5 que se implementa en ambientes donde la seguridad no es el principal objetivo.

Para 1992 el proyecto europeo RIPE creó la función hash criptográfica RIPEMD. Esta función tenía la tarea de sustituir la función MD4.
Actualmente sigue considerándose un estándar altamente seguro, sobre todo en
RIPEMD-256, RIPEMD-160 y RIPEMD-320.

En el año 1993 la NSA creó SHA, el estándar actual de hashes criptográficos. El objetivo de su creación era autentificar documentos electrónicos. Actualmente esta función y sus derivadas son consideradas las más seguras hasta la fecha. Entre sus derivadas podemos destacar a SHA-256 como tecnología fundamental que abrió paso a la existencia del Bitcoin.

Qué-es-una-función-Hash

¿Cómo funciona una función Hash?

Las funciones Hash, como era de esperarse, funcionan basándose en procesos lógicos y muy complejos. Dichos procesos lógicos suelen funcionar desde un ordenador desde el cual se toma cualquier serie de datos y se procesan tras introducirlos en la función. Pero… ¿Qué hace la función?.

Mediante este proceso se busca obtener una serie de caracteres que cuentan con una longitud fija y única para los datos introducidos. Cabe destacar que es imposible realizar este proceso del revés, es decir, no podemos procesar los resultados de una función hash para obtener los datos iniciales. Debido a esto se entiende que el proceso de creación de hashes es un proceso con sentido único.

Al ser un proceso de un solo sentido nos permite crear pruebas de autenticidad. Si creamos un documento y lo sometemos al hashing saldrá un resultado irreversible. Si alguien edita, copia o modifica el documento el hash cambiará con lo cual siempre sabremos cuando un documento ha sido modificado.

Qué-es-una-función-Hash

Seguridad de las funciones Hash 


En cuanto a la seguridad, las funciones hash son
extremadamente seguras. Esto se debe a que están creadas para mejorar la seguridad en la información digital. Su principal objetivo es mantener alejados a los atacantes e impedir que realicen ataques a la información que están destinados a proteger los hashes.

Estos altos niveles de seguridad provienen de características como las que encontramos en el mundo de la criptografía. Ambas tecnologías se basan en los mismos conceptos. No obstante, cabe destacar que las funciones hash no son totalmente inquebrantables

Para tener una idea podemos poner el ejemplo de la función MD5. Esta función aportaba una seguridad destacable y su uso se extendió a todo Internet. Sin embargo, en el año 1996 acabó siendo obsoleta, ya que se logró romper la seguridad de la función. 

Actualmente existen funciones como RIPEMD-160 y SHA-256 las cuales garantizan una gran seguridad basándose en la complejidad de su funcionamiento. Por si no nos convence su fama de seguridad podemos atender a lo que necesitaríamos para quebrantarlas. Solo nos harían falta miles de años y supercomputadoras actuales trabajando sin parar. De modo que sí, se puede decir que son inquebrantables.

A pesar de que estas últimas funciones garantizan la alta seguridad que se necesita, se siguen investigando nuevas formas de garantizar la seguridad en los procesos digitales.

Características

 

Es fácil reconocer una función Hash por sus características. A continuación veremos algunas de las principales.

  • Facilidad de cálculo. Son fáciles de calcular gracias a la eficiencia que presentan los algoritmos de Hash. Estos no requieren grandes potencias de cálculo para calcularse.
  • Función tipo avalancha. Esto significa que, en caso de que se ejecute cualquier mínimo cambio en la entrada de datos se generará un Hash distinto al original.
  • Los Hashes son irreversibles. Como ya hemos mencionado antes, no es posible (en teoría) obtener los datos originales a través del resultado de una función Hash. Gracias a esto los Hashes son totalmente seguros.
  • Presentan resistencia débil al igual que fuerte en cuanto a colisiones. Esto significa que no es posible calcular un Hash que nos lleve a otro Hash igual. Estos se denominan pre-imagen y segunda imagen, conceptos de los que parte la seguridad de los hashes.

 

En resumen, las funciones Hash son muy útiles en el mundo digital. Debido a su rapidez y eficiencia, a que son únicos y a que son económicos en el sentido computacional, los Hashes se han convertido en la pieza clave de las criptomonedas

Sin ir más lejos, en el whitepaper de Bitcoin, Satoshi Nakamoto explicó detalladamente el por qué los Hashes se utilizan para las criptomonedas y cómo utilizarlos. Desde el lanzamiento de Bitcoin la tecnología blockchain ha evolucionado totalmente, no obstante, partes de ella se siguen manteniendo. Entre ellas el uso de los Hashes y la criptografía, ya que son fuertes herramientas que protegen la seguridad de la red.

QUIZÁS TE INTERESE…