Skip to main content
Kairo Shield firma cada entrega con HMAC-SHA256 del cuerpo raw (JSON compacto, UTF-8).

Encabezado de firma

El valor incluye el prefijo sha256= seguido del digest hexadecimal.

Pasos de verificación

  1. Lea el body sin parsear (bytes/string raw).
  2. Calcule HMAC-SHA256(body, secret) en hexadecimal.
  3. Compare con el valor del encabezado sin el prefijo sha256=.
  4. Use comparación en tiempo constante (hmac.compare_digest, hash_equals, timingSafeEqual).
  5. Si no coincide, responda 401 Unauthorized y no procese el payload.
No use el body ya parseado por su framework para calcular la firma. Cualquier cambio de espacios o orden de claves invalidará la verificación.

Ejemplo conceptual (Python)

Consulte Ejemplos por lenguaje para PHP, Node.js y Java.

Idempotencia

Use X-Kairo-Delivery como clave de deduplicación. Kairo Shield puede reintentar entregas fallidas.