Definición de hash (función)
Hash es una función matemática que transforma una entrada (o input) de datos de cualquier tamaño en una salida de longitud fija, conocida como valor hash, código hash, resumen o simplemente hash. Aplicar una función hash a datos es una práctica fundamental en informática, empleada en diversos contextos como criptografía, verificación de integridad, indexación de datos y sumas de comprobación.
Los valores devueltos por una función hash permiten identificar, comparar o verificar datos de manera eficiente. Por ejemplo, al descargar un archivo de Internet, es común que el sitio proporcione un valor hash (como SHA-256) para que el usuario pueda comprobar la integridad del archivo descargado.
Las funciones hash suelen emplearse junto a una tabla hash, una estructura de datos que permite búsquedas rápidas de información. Por ejemplo, en una base de datos, las funciones hash facilitan la localización de registros específicos sin necesidad de recorrer toda la colección.
Comparación con tecnologías similares:
- Las funciones hash se diferencian de las sumas de comprobación y huellas digitales en que están optimizadas para diferentes propósitos: las sumas de comprobación buscan detectar errores accidentales, mientras que las funciones hash criptográficas buscan prevenir modificaciones maliciosas.
- A diferencia de la compresión, un hash no permite recuperar los datos originales, ya que es un proceso unidireccional.
Un ejemplo notable de uso es la base de datos HashKeeper, que actúa como un catálogo de huellas digitales de archivos, facilitando la identificación de archivos conocidos mediante sus valores hash.
Las funciones hash se caracterizan por su rapidez y eficiencia. Al aplicar la función sobre un conjunto de datos, el resultado se obtiene casi instantáneamente, lo cual es ideal para aplicaciones que requieren alto rendimiento, como sistemas de archivos, bases de datos y caches.
Verificación de integridad:
Uno de los usos más comunes de las funciones hash es la verificación de integridad de datos. Por ejemplo, si se calcula el hash de un archivo antes y después de transferirlo, y ambos valores coinciden, se puede confiar en que el archivo no ha sido alterado.
Hash en criptografía:
En criptografía, las funciones hash son esenciales para almacenar contraseñas de forma segura. Cuando se almacena una contraseña, se guarda su hash en lugar del texto original, lo que impide obtener la contraseña original a partir del hash (por ejemplo, usando SHA-256). Además, se utilizan en la generación de claves criptográficas y firmas digitales.
Ejemplo: Al registrarse en un sitio web, la contraseña del usuario se almacena como un hash. Si un atacante accede a la base de datos, solo verá los hashes, no las contraseñas reales.
Ventajas:
- Rapidez y eficiencia computacional.
- Facilitan la verificación de integridad y autenticidad de datos.
- Permiten el almacenamiento seguro de contraseñas.
- Son útiles para la indexación y búsqueda eficiente de datos.
Desventajas:
- Las colisiones: diferentes entradas pueden producir el mismo hash.
- Los hashes no son reversibles; no pueden recuperar los datos originales.
- Algunos algoritmos antiguos (como MD5 o SHA-1) han demostrado ser vulnerables a ataques.
Origen del término hash
El término proviene de la palabra inglesa "hash", que significa picar y mezclar, haciendo referencia a cómo la función mezcla los datos de entrada para producir una salida aparentemente aleatoria. H. P. Luhn, empleado de IBM, fue el primero en emplear el concepto en un memorándum en 1953, y su uso se popularizó en la década siguiente. No existe una traducción directa al español, por lo que se utilizan los términos "hash" y "hashing" en la literatura técnica.
Hashing en criptografía
El hashing es fundamental en criptografía porque enmascara los datos originales, generando un valor que no puede revertirse para obtener la entrada original. Una función hash criptográfica debe ser resistente a colisiones, rápida de calcular y no invertible. Por ejemplo, los algoritmos SHA-256 y SHA-3 cumplen con estos requisitos.
Un uso clave es la verificación de integridad y autenticidad de mensajes mediante HMAC (Código de Autenticación de Mensajes basado en Hash). HMAC combina una función hash criptográfica con una clave secreta para asegurar que los datos no hayan sido modificados y provengan de una fuente legítima.
Las colisiones de las funciones hash
Dado que los valores hash tienen longitud fija y las entradas pueden ser de cualquier tamaño, es inevitable que diferentes datos produzcan el mismo hash. Esto se denomina colisión. Por ejemplo, en una función hash que mapea nombres a valores entre 0 y 15, tanto "Juan" como "Patricia" pueden generar el mismo hash.
Las colisiones se gestionan mediante técnicas como el uso de múltiples funciones hash, tablas de desbordamiento o el aumento del tamaño del hash. Elegir algoritmos modernos y robustos minimiza el riesgo de colisiones.

Una función hash que mapea o asigna números a enteros del 0 al 15. En este caso hay una colisión entre Juan y Patricia.
Hashing en compresión
En compresión de datos, las funciones hash pueden emplearse para identificar fragmentos duplicados y reducir el tamaño del archivo. Por ejemplo, en la compresión de imágenes con pérdida, se puede utilizar un hash para representar bloques similares y ahorrar espacio, aunque no permite recuperar el contenido original.
Valores hash como sumas de verificación
Los valores hash se usan como sumas de comprobación (checksums) para validar la integridad de archivos. Por ejemplo, al descargar un programa, se puede comparar el hash publicado con el hash calculado localmente. Si coinciden, el archivo no ha sido alterado.
Hash para indexar datos
Las funciones hash son ampliamente usadas para indexar datos en estructuras como tablas hash. Al aplicar la función hash a un dato, se obtiene una clave que permite acceder rápidamente a la información, mejorando la eficiencia de búsqueda y almacenamiento.
Resumen: hash
El hash es una función que convierte datos de cualquier tamaño en un valor de longitud fija. Se utiliza en criptografía, compresión, verificación de integridad y búsqueda eficiente de datos. Aunque se relaciona con sumas de comprobación y huellas digitales, tiene aplicaciones y características propias. Ejemplo: HashKeeper cataloga archivos mediante sus valores hash.
¿Qué es una función hash y cómo funciona?
Una función hash es un algoritmo determinista que toma una entrada y la transforma en un valor de salida de longitud fija. Un pequeño cambio en la entrada produce un hash completamente diferente, lo que facilita la detección de modificaciones.
¿Para qué se utiliza la función hash en criptografía?
En criptografía, las funciones hash garantizan la integridad y autenticidad de los datos. Se usan para almacenar contraseñas, crear firmas digitales y generar claves. Por ejemplo, al almacenar contraseñas, solo se guarda el hash, no la contraseña original.
¿Cuál es la relación entre la función hash y la compresión de datos?
Aunque ambos procesos reducen información, la compresión permite recuperar los datos originales, mientras que el hash no. Sin embargo, las funciones hash pueden usarse en algoritmos de compresión para identificar duplicados y optimizar el almacenamiento.
¿Cómo se utiliza la función hash en la generación de suma de comprobación?
La suma de comprobación se obtiene aplicando una función hash a los datos. Si el hash calculado antes y después de una transferencia coincide, los datos no han sido alterados.
¿En qué consiste la indexación de datos mediante funciones hash?
Mediante el uso de funciones hash, se asigna una clave única a cada dato, permitiendo búsquedas rápidas y eficientes en grandes volúmenes de información, como en bases de datos o sistemas de archivos.
¿Cuáles son algunos ejemplos de algoritmos de funciones hash comunes?
Algunos algoritmos populares son MD5, SHA-1, SHA-256 y SHA-3. SHA-256 y SHA-3 son recomendados para aplicaciones que requieren alta seguridad, mientras que MD5 y SHA-1 han quedado obsoletos por vulnerabilidades conocidas.
Terminología relacionada
• Criptografía
Autor: Leandro Alegsa
Actualizado: 15-07-2025
¿Cómo citar este artículo?
Alegsa, Leandro. (2025). Definición de hash. Recuperado de https://www.alegsa.com.ar/Dic/hash.php