Una función de hash es una transformación que a partir de unos datos de entrada de longitud variable m devuelve una secuencia de caracteres de tamaño fijo, conocida como el valor hash h (es decir, h = H(m)). Cualquier cambio en los datos de entrada cambia el valor del hash. Las funciones hash con esta propiedad se emplean en computación; cuando se emplean en criptografía, las funciones de hash deben tener algunas propiedades adicionales.
Los requisitos básicos para una función hash criptográfica son:
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.