Aller au contenu

Comment fonctionne la réversibilité

TokenVeil remplace chaque valeur détectée par un jeton typé et peut remettre la valeur réelle ensuite. Cette page explique comment cela reste fiable au fil de sessions longues et multi-étapes, ce qui compte pour les outils agentiques où les jetons traversent de nombreux tours.

Une valeur détectée est remplacée par un jeton de forme fixe, portant son type et un numéro, par exemple <PERSON_1> ou <IBAN_CODE_1>. Au sein d’une session, la table est stable : la même valeur réelle donne toujours le même jeton, donc le texte reste cohérent d’un tour à l’autre. La correspondance entre jetons et valeurs réelles est stockée chiffrée sur votre instance et n’est adressable que par l’identifiant de session, un jeton de capacité opaque à haute entropie, non énumérable.

La désanonymisation ne dépend pas de l’endroit où se trouve un jeton. Elle résout chaque jeton de forme fixe contre la table de session, où qu’il apparaisse. C’est ce qui la fait tenir dans les sessions d’agent :

  • si le modèle déplace un jeton dans sa réponse, il est quand même résolu,
  • s’il l’intègre dans du code ou du JSON, il est quand même résolu,
  • s’il répète le même jeton sur plusieurs appels d’outil, chaque occurrence résout vers la même valeur réelle.

Parce que la restauration est une résolution globale contre une table à état, et non un rejeu positionnel, les sessions multi-étapes ne dérivent pas.

Le seul cas à assumer honnêtement est un modèle qui mute un jeton au lieu de le réutiliser tel quel : le couper, le renommer, changer sa casse, ou inventer une variante. Les mutations courantes comme les différences de casse sont gérées. Un jeton que le modèle a réellement réécrit ou halluciné est le cas limite résiduel, et c’est exactement le genre de comportement qu’un pilote sur votre trafic d’agent réel sert à éprouver.

Aujourd’hui, la table est cloisonnée à une session : la même valeur est stable au sein d’une session et reçoit un jeton différent dans une autre. Une clé de portée configurable, par exemple un jeton stable au sein d’un espace de travail ou d’un dossier et différent ailleurs, est une extension définie et non une refonte.