Chaîne d'audit
Chaque reçu de consentement est lié au précédent via une chaîne HMAC. Cela rend cryptographiquement détectable si un reçu dans la séquence a été altéré ou supprimé.
Comment fonctionne la chaîne
Chaque reçu contient :
- Son propre
hmac— calculé sur le contenu du reçu - Un
previous_receipt_id— référence au reçu précédent pour ce visiteur
Le HMAC est calculé comme :
hmac = HMAC-SHA256(
key: tenant_signing_key,
message: receipt_id + timestamp + choices_json + policy_version + previous_receipt_id
)
Pour vérifier qu'un reçu n'a pas été falsifié, recalculez le HMAC avec les mêmes entrées et comparez.
Vérifier la chaîne
ConsentForge fournit un endpoint de vérification :
POST /api/v1/receipts/verify
Authorization: Bearer VOTRE_TOKEN_API
{
"receipt_id": "rec_01HXYZ123456"
}
Réponse :
{
"valid": true,
"chain_intact": true,
"receipts_verified": 3
}
chain_intact: true signifie que chaque reçu dans la chaîne jusqu'à la première décision est inaltéré.
Ce dont les auditeurs ont besoin
Pour un audit RGPD, fournissez :
- Le(s) ID(s) de reçu pour l'utilisateur en question
- Le résultat de la vérification (réponse API ci-dessus)
- Le document de version de politique qui était actif à l'époque
Tout cela est disponible dans Tableau de bord → Preuves → Exporter.
Rotation de la clé de signature
La clé de signature peut être changée dans Compte → Sécurité → Clés de signature. Après rotation :
- Les nouveaux reçus sont signés avec la nouvelle clé
- Les anciens reçus restent valides — l'ancienne clé est conservée à des fins de vérification
Les clés rotées ne sont jamais supprimées. La chaîne d'audit reste vérifiable indéfiniment.