El término función de hash tiene su origen histórico en la informática, donde representa una función que comprime una cadena de entrada arbitraria en una cadena de longitud fija. Cualquier cambio en los datos de entrada modificará (con muy alta probabilidad) el valor hash. Las funciones hash con esta propiedad tienen una variedad de usos genéricos en computación, pero cuando se emplea en criptografía, deben satisfacer algunas propiedades adicionales. Las funciones de hash criptográficas se pueden utilizar para proporcionar integridad del mensaje, para proteger la autenticidad de la información, para proteger contra la amenaza de repudio y para preservar las contraseñas. A diferencia de los algoritmos de clave secreta y de clave pública, las funciones hash, también llamados resúmenes de mensajes, no utilizan ninguna clave criptográfica.
Los requisitos básicos para una función hash criptográfica son:
El valor de hash representa de forma concisa el documento a partir del cual se calcula. Puede pensarse en un resumen del mensaje como “huella digital” de un documento habitualmente más grande.
La principal aplicación de una función hash criptográfica es su uso en la firma digital. Además, un hash puede hacerse público sin revelar el contenido del documento a partir del cual se ha generado dicho hash.