Cadena de auditoría
Cada recibo de consentimiento está vinculado al anterior mediante una cadena HMAC. Esto hace que sea criptográficamente detectable si cualquier recibo en la secuencia ha sido alterado o eliminado.
Cómo funciona la cadena
Cada recibo contiene:
- Su propio
hmac— calculado sobre el contenido del recibo - Un
previous_receipt_id— referencia al recibo anterior de este visitante
El HMAC se calcula como:
hmac = HMAC-SHA256(
key: tenant_signing_key,
message: receipt_id + timestamp + choices_json + policy_version + previous_receipt_id
)
Para verificar que un recibo no ha sido manipulado, recalcule el HMAC con las mismas entradas y compare.
Verificar la cadena
ConsentForge proporciona un endpoint de verificación:
POST /api/v1/receipts/verify
Authorization: Bearer YOUR_API_TOKEN
{
"receipt_id": "rec_01HXYZ123456"
}
Respuesta:
{
"valid": true,
"chain_intact": true,
"receipts_verified": 3
}
chain_intact: true significa que cada recibo en la cadena hasta la primera decisión no está alterado.
Qué necesitan los auditores
Para una auditoría del RGPD, proporcione:
- Los ID de recibo del usuario en cuestión
- El resultado de la verificación (respuesta de la API anterior)
- El documento de versión de la política que estaba vigente en ese momento
Todo esto está disponible en Panel → Evidencia → Exportar.
Rotación de clave de firma
La clave de firma puede rotarse en Cuenta → Seguridad → Claves de firma. Después de la rotación:
- Los nuevos recibos se firman con la nueva clave
- Los recibos anteriores siguen siendo válidos — la clave anterior se conserva para fines de verificación
Las claves rotadas nunca se eliminan. La cadena de auditoría permanece verificable indefinidamente.