Definición: ¿Qué significa el código de autenticación de mensajes hash (HMAC)?
Un código de autenticación de mensajes hash (HMAC) es un código de autenticación de mensajes que utiliza una clave criptográfica junto con una función hash. El algoritmo real detrás de un código de autenticación de mensajes con hash es complicado, y el hash se realiza dos veces. Esto ayuda a resistir algunas formas de análisis criptográfico. Un código de autenticación de mensajes con hash se considera más seguro que otros códigos de autenticación de mensajes similares, ya que los datos transmitidos y la clave utilizada en el proceso se procesan por separado.
Techinfo explica el código de autenticación de mensajes hash (HMAC)
De manera similar a otros códigos de autenticación de mensajes, un código de autenticación de mensajes hash puede verificar simultáneamente la autenticación del mensaje y la integridad de los datos asociados con él. El tamaño de la clave secreta utilizada determina la fuerza criptográfica del código de autenticación de mensajes hash. Un código de autenticación de mensajes hash puede hacer uso de funciones hash criptográficas iterativas como SHA-1 y MD-5 junto con la clave secreta. El código de autenticación de mensajes hash proporciona una clave pública y privada tanto para el servidor como para el cliente. Aunque se conoce la clave pública, la clave privada solo la conoce el cliente y el servidor específicos. Todo el proceso comienza cuando el cliente crea un código de autenticación de mensaje hash único basado en los datos solicitados y procesa los datos solicitados junto con una clave privada. Esto se envía como parte de la solicitud al servidor, que a su vez compara los dos códigos de autenticación de mensajes hash y, si se encuentran iguales, permite que se confíe en el cliente y se ejecute la solicitud. Todo el proceso también se conoce como un apretón de manos secreto.
Uno de los beneficios clave del código de autenticación de mensajes hash es que se ve menos afectado por las colisiones y se considera una fuerza bruta para obtener la clave criptográfica secreta. El código de autenticación de mensajes hash proporciona una técnica conveniente para verificar si los datos han sido alterados y la autenticidad del usuario.
Sin embargo, un inconveniente asociado con el código de autenticación de mensajes hash es la ausencia de privacidad, que también se puede obtener con cifrado completo.