Generador HMAC
Genere firmas HMAC: autentique mensajes con una clave secreta.
Cómo usar Generador HMAC
- Ingrese el mensaje y la clave secreta.
- Elija el algoritmo hash: HMAC-SHA256 es el estándar.
- Genere la firma, reproducible a partir del mismo mensaje+clave.
- Verifique recalculando: haga coincidir el HMAC del remitente usando una comparación de tiempo constante; mantenga el lado secreto del servidor únicamente.
¿Cuál es Generador HMAC?
Un generador HMAC produce un código de autenticación de mensajes basado en hash: un hash calculado con una clave secreta, por lo que demuestra que un mensaje no fue alterado y que proviene de alguien que conoce la clave. HMAC-SHA256(mensaje, secreto) es la forma ubicua: mismo mensaje + misma clave = misma firma; cámbielo y cambiará.
La clave es lo que separa a HMAC de un hash simple. Cualquiera puede calcular SHA-256 de un mensaje; sólo los poseedores del secreto compartido pueden calcular el HMAC correcto, que es exactamente la razón por la que se autentica. Responde "¿esto vino de quien creo, sin cambios?" — la pregunta que los hashes simples no pueden hacer.
Sobre el Generador HMAC
Ingrese su mensaje y clave secreta, elija el hash (SHA-256 es estándar) y genere la firma HMAC.
Donde HMAC ejecuta las tuberías de Internet: verificación de webhook: Stripe, GitHub, Shopify e innumerables servicios firman cargas útiles de webhook con HMAC usando un secreto que solo usted y ellos conocen; su punto final vuelve a calcular el HMAC y lo compara, rechazando llamadas falsificadas o manipuladas (el uso canónico: verificar cada webhook de esta manera); Firma de solicitud de API: firma de AWS, muchos esquemas de autenticación de API HMAC la solicitud para que los servidores confirmen que proviene de un poseedor de clave real y que no se modificó en tránsito; integridad del token: la firma en JWT (HS256) es HMAC-SHA256; y cookies seguras y tokens CSRF: HMAC evita la manipulación del lado del cliente.
Dos elementos esenciales: el secreto debe permanecer secreto (la filtración permite a cualquiera falsificar firmas; trátela como una contraseña, solo en el lado del servidor), y la verificación debe utilizar una comparación de tiempo constante (comparar las firmas con filtraciones normales de cadenas iguales a la información de tiempo que los atacantes pueden explotar; las bibliotecas proporcionan funciones de comparación segura). Este generador es para probar y aprender; La producción utiliza la biblioteca criptográfica de su idioma. Consulte nuestro decodificador JWT para el lado del token y SHA-256 para el hash subyacente.