Generador HMAC
Mientras que las funciones de hash regulares como SHA-256 demuestran la integridad de los datos ("este archivo no ha sido modificado"), no demuestran el origen ("este archivo proviene de alguien en quien confío"). HMAC (Código de Autenticación de Mensajes Basado en Hash) resuelve esto combinando un mensaje con una clave secreta, produciendo una firma que solo alguien con la clave secreta podría haber generado. Esta herramienta crea firmas HMAC utilizadas en autenticación de API, verificación de webhooks y firmas digitales.
Cómo HMAC difiere del hash simple
Si hasheas un mensaje, cualquiera puede verificar que el hash coincida—simplemente lo recomputarían. Pero con HMAC, hasheas el mensaje combinado con una clave secreta. Un atacante que intercepte el mensaje y el hash no puede crear un HMAC válido para un mensaje modificado sin conocer la clave secreta. Esto hace que HMAC sea perfecto para situaciones donde necesitas demostrar tanto la integridad como la autenticidad.
Uso HMAC en el mundo real
Los API web frecuentemente utilizan HMAC para firmar solicitudes. Un cliente hashea su cuerpo de solicitud con su clave secreta de API e incluye la firma resultante en la solicitud. El servidor repite este cálculo y verifica que la firma coincida—demostrando que la solicitud proviene del cliente legítimo y no fue alterada. Los proveedores de webhooks utilizan el mismo enfoque: firman la carga útil del webhook con su secreto, y tú verificas la firma antes de procesar el webhook.
Selección de algoritmo
Esta herramienta soporta HMAC con SHA-1, SHA-256, SHA-384 y SHA-512. Prefiere SHA-256 o superior para nuevas aplicaciones. SHA-1 es más antiguo y menos seguro, aunque para HMAC específicamente (en lugar de hash simple), SHA-1 sigue siendo aceptable en algunos sistemas heredados.
Gestión de claves
La fortaleza de HMAC depende completamente de mantener en secreto la clave secreta. Si tu clave API o clave de firma se ve comprometida, los atacantes pueden forjar firmas válidas. Almacena las claves de forma segura (en variables de entorno o gestores de secretos), nunca las confirmes en control de versiones, y rótalas periódicamente.
Tiny Online Tools







