Règlement (UE) 2016/679 (RGPD)
Responsabilité, intégrité et effacement : où le RGPD exige des enregistrements, et comment Logsiegel fait les deux à la fois
Le RGPD n'impose pas expressément un journal, mais il exige que vous puissiez démontrer ce que vous avez fait des données, et que vous effaciez ces données sur demande. Un journal inaltérable et une obligation d'effacement semblent se contredire. Logsiegel est construit de façon qu'ils ne se contredisent pas.
Qui est concerné
Tout responsable du traitement et tout sous-traitant dont le système d'IA traite des données à caractère personnel, donc en pratique tout exploitant d'un agent en contact avec des clients (et, en Suisse, la nLPD pose des exigences comparables). Particulièrement pertinent lorsque le système prend ou prépare des décisions produisant des effets pour les personnes concernées.
Ce que la réglementation exige en matière d'enregistrements
Quatre endroits où des enregistrements sont soit exigés, soit indispensables :
| Référence | Exigence |
|---|---|
| Art. 5, par. 2 | Obligation de rendre compte : le responsable du traitement doit non seulement assurer le respect des principes, mais être en mesure de le démontrer. |
| Art. 5, par. 1, f, et art. 32, par. 1, b | Intégrité et confidentialité : les données doivent être protégées contre toute altération non autorisée ; la sécurité du traitement comprend l'intégrité des systèmes et des services. |
| Art. 32, par. 1, d | Une procédure visant à tester, analyser et évaluer régulièrement l'efficacité des mesures de sécurité. |
| Art. 17 | Droit à l'effacement. Les données à caractère personnel doivent être effacées sur demande, y compris dans les journaux, sauf exception applicable. |
| Art. 22 et art. 15, par. 1, h | Pour les décisions individuelles automatisées : droit de contester la décision, d'exprimer son point de vue et d'obtenir des informations sur la logique sous-jacente. Sans enregistrement de la décision prise, de sa date et de son fondement, ces droits restent lettre morte. |
| Art. 33, par. 5 | Les violations de données à caractère personnel doivent être documentées, de manière à permettre à l'autorité de contrôle de vérifier le respect des obligations. |
Ce que Logsiegel y apporte aujourd'hui
- Uniquement des métadonnées dans le journal. Seules des métadonnées d'événement et des empreintes salées entrent dans la chaîne ; entrées et sorties sont stockées à part, chiffrées entrée par entrée. Une entrée peut être vidée de son contenu par destruction de sa clé (effacement cryptographique), sans que la chaîne se brise. Savoir si une empreinte salée reste une donnée personnelle après destruction de la clé relève de votre analyse en protection des données ; la conception lui donne la meilleure position de départ qu'un journal inaltérable puisse offrir.
- Effacement sans rupture de chaîne.
logsiegel shred --seq Ndétruit la clé de l'entrée. Le contenu disparaît, la vérification du journal continue de passer. Obligation d'effacement et détection des falsifications ne s'excluent donc plus. - Masquage des données personnelles avant le stockage. Un détecteur enfichable masque les identifiants dans les entrées et les sorties conservées, avant qu'elles ne soient chiffrées.
- Enregistrement inaltéré, vérifiable. Chaque entrée est chaînée par empreinte à la précédente ; à intervalles réguliers, une racine de Merkle est calculée et signée en Ed25519 (point de contrôle). Toute modification, réorganisation ou troncature ultérieure fait échouer
logsiegel verify. C'est la démonstration technique de l'intégrité au sens de l'art. 32. - Un justificatif pour la personne concernée. Qui conteste une décision automatisée reçoit le justificatif de cette décision précise : horodatage, modèle, empreintes, point de contrôle signé. Vérifiable hors ligne, sans qu'aucune autre personne concernée n'apparaisse.
- Dossier lisible.
logsiegel exportécrit le journal sous forme de dossier Markdown, pour les personnes qui ne veulent pas passer par la ligne de commande. Pour les demandes de l'autorité de contrôle.
Ce qui est en préparation prévu
- Règles de conservation avec effacement cryptographique déclenché par les délais, pour que les durées de conservation soient respectées automatiquement et de manière démontrable.
- Liaison de mandat : des justificatifs indiquant pour le compte de qui un agent a agi, raccordés à des attestations vérifiables et aux écosystèmes d'identité électronique.
Ce que Logsiegel ne fait pas
- Registre des activités de traitement, analyse d'impact, contrats de sous-traitance. Obligations distinctes, outils distincts.
- Base légale et qualification. Aucun journal ne vous dira si votre traitement est licite, ni si l'art. 22 s'applique.
- L'appréciation de l'empreinte résiduelle. Savoir si une empreinte salée reste une donnée à caractère personnel après destruction de la clé relève de votre analyse, à la lumière des lignes directrices en vigueur du Comité européen de la protection des données.
- L'exhaustivité. Ce qui est prouvé, c'est que l'enregistré est inaltéré, jamais que tout a été enregistré. C'est une question d'intégration : l'adaptateur doit se trouver à un endroit par lequel chaque action passe obligatoirement (LiteLLM aujourd'hui, proxy MCP en préparation).
- La protection contre l'exploitant lui-même. Qui détient la clé de signature pourrait réécrire le journal et le signer à nouveau. Cela se remarque précisément lorsqu'une autre partie détient un point de contrôle ou un justificatif antérieur. Faites donc sortir les points de contrôle de chez vous ; le contreseing par un témoin indépendant est le prochain niveau.
- L'appréciation juridique. Savoir si votre système relève de la réglementation, quelles obligations s'appliquent concrètement et si un justificatif suffit dans un cas donné relève de votre analyse juridique ou de votre service conformité, pas de cet outil.
Comment le mettre en œuvre
1. Installer et créer un journal
Le SDK est en Python, sous Apache 2.0, sans serveur et sans compte. L'origine (origin) désigne le système dont l'activité est journalisée.
pip install logsiegel
logsiegel init ./trail --origin "acme.example/support-agent"
2. Brancher l'adaptateur là où chaque action doit passer
Si votre trafic d'IA passe par LiteLLM, chaque complétion devient une entrée inference signable, et les erreurs sont enregistrées comme anomaly. Les interventions humaines, vous les journalisez expressément comme un événement distinct.
import litellm
from logsiegel.integrations.litellm_logger import LogsiegelLogger
litellm.callbacks = [LogsiegelLogger("/var/lib/logsiegel/prod", store_payload=True)]
3. Ne stocker les contenus que masqués et chiffrés
Avec store_payload=True, entrées et sorties sont stockées chiffrées à côté du journal, entrée par entrée ; le détecteur de données personnelles masque au préalable. Sans cette option, le journal ne contient que des empreintes. Exemple : python examples/pii_demo.py dans le dépôt.
4. Détruire l'entrée en cas de demande d'effacement
La clé de l'entrée est détruite, le contenu est donc irrécupérable. verify continue de passer, car la chaîne repose sur des empreintes, pas sur des contenus.
logsiegel shred ./trail --seq 1284
logsiegel verify ./trail # toujours PASS
5. Remettre le justificatif en cas de demande
Au lieu d'extraits de base de données, vous remettez un seul justificatif. La partie adverse le vérifie dans le navigateur sur logsiegel.com/verifier ou en ligne de commande, dans les deux cas hors ligne.
logsiegel receipt ./trail --seq 1284 --out receipt.json
logsiegel verify-receipt receipt.json --pubkey logsiegel.pub
Autres réglementations : AI Act DORA NIS 2 ISO/IEC 27001 ISO/IEC 42001 GoBD eIDAS Vue d'ensemble
État du droit : septembre 2026. Cette page est une appréciation technique par le projet, ni un conseil juridique ni une déclaration de conformité. Merci de vérifier les références sur le texte en vigueur. Corrections bienvenues via une issue GitHub.