Cadeia de Auditoria
Cada recibo de consentimento está ligado ao anterior via uma cadeia HMAC. Isto torna criptograficamente detetável se algum recibo na sequência foi alterado ou eliminado.
Como funciona a cadeia
Cada recibo contém:
- O seu próprio
hmac— calculado sobre o conteúdo do recibo - Um
previous_receipt_id— referência ao recibo anterior para este visitante
O HMAC é calculado como:
hmac = HMAC-SHA256(
key: tenant_signing_key,
message: receipt_id + timestamp + choices_json + policy_version + previous_receipt_id
)
Para verificar que um recibo não foi adulterado, recalcule o HMAC com os mesmos inputs e compare.
Verificar a cadeia
O ConsentForge fornece um endpoint de verificação:
POST /api/v1/receipts/verify
Authorization: Bearer YOUR_API_TOKEN
{
"receipt_id": "rec_01HXYZ123456"
}
Resposta:
{
"valid": true,
"chain_intact": true,
"receipts_verified": 3
}
chain_intact: true significa que cada recibo na cadeia até à primeira decisão está inalterado.
O que os auditores precisam
Para uma auditoria RGPD, forneça:
- Os IDs de recibo para o utilizador em questão
- O resultado da verificação (resposta API acima)
- O documento de versão da política que estava ativo na altura
Tudo isto está disponível em Painel → Evidências → Exportar.
Rotação da chave de assinatura
A chave de assinatura pode ser rodada em Conta → Segurança → Chaves de Assinatura. Após a rotação:
- Os novos recibos são assinados com a nova chave
- Os recibos antigos permanecem válidos — a chave antiga é retida para fins de verificação
As chaves rodadas nunca são eliminadas. A cadeia de auditoria permanece verificável indefinidamente.