El algoritmo HMAC significa código de autenticación de mensajes basado en hash o hash . Es el resultado del trabajo realizado en el desarrollo de un MAC derivado de funciones hash criptográficas. HMAC es una gran resistencia a los ataques de criptoanálisis ya que utiliza dos veces el concepto Hashing. HMAC consta de los beneficios gemelos de Hashing y MAC y, por lo tanto, es más seguro que cualquier otro código de autenticación. RFC 2104 ha emitido HMAC, y HMAC se ha hecho obligatorio para implementar en seguridad IP. El estándar FIPS 198 NIST también ha emitido HMAC.
Objetivos –
- Al igual que la función Hash, HMAC también pretende ser de una manera, es decir, fácil de generar resultados a partir de la entrada, pero complejo al revés.
- Su objetivo es verse menos afectado por las colisiones que las funciones hash.
- HMAC reutiliza los algoritmos como MD5 y SHA-1 y verifica para reemplazar las funciones hash integradas con funciones hash más seguras, en caso de que se encuentren.
- HMAC intenta manejar las claves de una manera más simple.
Algoritmo HMAC:
el funcionamiento de HMAC comienza con la recepción de un mensaje M que contiene bloques de longitud b bits. Una firma de entrada se rellena a la izquierda del mensaje y el todo se da como entrada a una función hash que nos da un MD de resumen de mensaje temporal. MD’ nuevamente se agrega a una firma de salida y al conjunto se le aplica una función hash nuevamente, el resultado es nuestro resumen de mensaje final MD.
Aquí hay una estructura simple de HMAC:
Aquí, H representa la función Hashing,
M es el mensaje original
Si y So son firmas de entrada y salida respectivamente,
Yi es el i-ésimo bloque en el mensaje original M, donde I varía de [1, L)
L = el recuento de bloques en M
K es la clave secreta utilizada para el hashing
IV es un vector inicial (una constante)
La generación de la firma de entrada y la firma de salida Si y So respectivamente.
A una función hash normal, HMAC agrega una instancia de compresión al procesamiento. Esta implementación estructural mantiene la eficiencia para valores MAC más cortos.
Publicación traducida automáticamente
Artículo escrito por KattamuriMeghna y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA