Ir al contenido principal
GuíaBuenas prácticasIntermedio

Cifrado, hashing y HMAC: entender las diferencias

Aprende cuándo utilizar cifrado, hashing, HMAC o PBKDF2 para confidencialidad, integridad, autenticación y contraseñas.

Publicado el 23 de septiembre de 2026Lectura : 2 minPor Yann Bastien
Mostrar el índice
  1. El cifrado protege la confidencialidad
  2. El hashing crea una huella
  3. HMAC combina hash y secreto
  4. PBKDF2 es más que un hash simple de contraseña
  5. ¿Qué mecanismo utilizar?
  6. Errores comunes

Cifrado, hashing y HMAC utilizan funciones criptográficas, pero resuelven problemas diferentes. La primera pregunta es: ¿qué necesitas proteger o verificar?

  • usa cifrado cuando la información deba permanecer secreta y recuperarse después;
  • usa hashing para crear una huella reproducible;
  • usa HMAC para autenticar un mensaje con un secreto compartido;
  • usa una función de derivación como PBKDF2 para derivar un valor desde una contraseña.

El cifrado protege la confidencialidad

El cifrado transforma datos legibles en texto cifrado mediante una clave. Con la clave y los parámetros correctos, la operación puede revertirse.

AES es un algoritmo de cifrado simétrico. La herramienta AES permite explorar este modelo.

El cifrado es adecuado cuando se necesita recuperar el valor original. Un hash no lo sustituye porque no está diseñado para descifrarse.

El hashing crea una huella

Una función hash transforma una entrada en un resumen de tamaño fijo. La misma entrada con el mismo algoritmo produce el mismo resultado.

El generador de hash y la herramienta de comparación cubren estos usos.

Un hash por sí solo no demuestra que el resumen proceda de una parte autorizada. Quien pueda sustituir los datos y el hash puede recalcular ambos.

HMAC combina hash y secreto

HMAC utiliza una función hash junto con una clave secreta. Las partes que comparten ese secreto pueden calcular y verificar un código de autenticación.

El generador y verificador HMAC muestra la diferencia.

HMAC no oculta el mensaje. Protege integridad y autenticidad, no confidencialidad.

PBKDF2 es más que un hash simple de contraseña

Las funciones hash generales son deliberadamente rápidas, lo que facilita intentos masivos de contraseñas.

PBKDF2 aplica repetidamente una función pseudoaleatoria con una sal y un número de iteraciones. La herramienta PBKDF2 muestra el papel de contraseña, sal, iteraciones y longitud de salida.

La sal no es una contraseña adicional y puede almacenarse junto al valor derivado.

¿Qué mecanismo utilizar?

Necesidad Mecanismo ¿Reversible? ¿Secreto necesario?
Ocultar datos y recuperarlos después AES Sí Sí
Crear una huella Hash No No
Autenticar un mensaje con secreto compartido HMAC No Sí
Derivar un valor de una contraseña PBKDF2 No Contraseña

Los mecanismos pueden coexistir en un mismo sistema.

Errores comunes

Codificar no es cifrar. Base64 no aporta confidencialidad.

Hashing no es cifrado. Un hash no es texto cifrado.

HMAC no oculta el mensaje. Lo autentica mediante un secreto.

Las contraseñas normalmente no deberían almacenarse como datos descifrables.

Para un contexto más amplio, consulta Seguridad web: protecciones esenciales.

¿Te ha resultado útil este artículo?