Sistema de verificación y generación de cadenas de auditoría inmutable utilizando SHA-256, Logic Clocks y Hashing Encadenado.
Este skill define el protocolo criptográfico para asegurar que el registro de auditoría (audit_log o audit_trail) sea inmutable y verificable. Cada entrada en el log depende criptográficamente de la anterior, haciendo imposible la alteración silenciosa de registros históricos (Anti-Tamper).
previous_hash: El hash del registro inmediatamente anterior (ordenado por logic_clock).logic_clock: Un entero incremental global (Lamport Clock simplificado) para ordenamiento causal.entity_data: Datos clave de la operación (ID, tabla, cambios).timestamp: ISO 8601.user_id: Actor.salt: Un secreto rotativo del sistema (opcional pero recomendado).{
"previous_hash": "a1b2c3...",
"logic_clock": 1042,
"timestamp": "2026-01-27T10:00:00Z",
"table_name": "invoices",
"record_id": 501,
"action": "UPDATE",
"changes": "{\"status\": \"paid\"}",
"user_id": 1
}
SELECT hash, logic_clock FROM audit_trail ORDER BY logic_clock DESC LIMIT 1.new_clock = last_clock + 1current_hash = SHA256(last_hash + new_clock + datapayload)logic_clock.n:
n.data y hash(n-1).n.stored_hash.verificar integridad: Ejecuta el chequeo completo de la cadena.auditar cambios [tabla]: Lista historial verificando hashes al vuelo.src/core/security/AuditService.ts (Implementación ideal)src/database/simple-db.ts (Persistencia actual)