¿Qué es un HMAC y cómo funciona?
HMAC se utiliza ampliamente en el desarrollo web moderno para firmar solicitudes API, autenticar Webhooks y proteger endpoints de API. A diferencia de un hash estándar (como SHA-256), que solo verifica que los datos no se hayan alterado, un HMAC demuestra que el remitente conoce la clave secreta compartida.
Cuando un endpoint de API (como los Webhooks de GitHub o Stripe) envía datos a tu servidor, calcula un HMAC del payload usando tu clave secreta de webhook y lo envía en un encabezado. Tu servidor me vuelve a calcular el HMAC localmente para verificar que el mensaje es auténtico y no ha sido manipulado.