Aller au contenu principal

Coffre PII et crypto-shredding

Gérez les données personnelles identifiables dans les appels Audact grâce au chiffrement et au crypto-shredding : chiffrez les segments de données personnelles, déchiffrez-les à la demande et effacez définitivement les informations d’une personne concernée.

Ce guide couvre les fonctionnalités de l’API et du tableau de bord pour gérer les données personnelles identifiables dans les appels Audact par le chiffrement et l’effacement (crypto-shredding).

Vue d’ensemble

Lorsque le chiffrement est activé pour votre espace de travail, Audact détecte et chiffre les données personnelles sur place dans les transcriptions et les preuves des appels :

  • Les segments sont chiffrés : les BSN, IBAN, numéros de carte, e-mails, numéros de téléphone, dates de naissance et adresses postales sont remplacés par des jetons chiffrés, par ex. ⟦pii:v1:EMAIL:…⟧.
  • Le texte autour reste lisible : vous pouvez toujours voir le contexte ; seules les valeurs privées sont chiffrées.
  • Vous pouvez le déchiffrer : le bouton « Déchiffrer les données personnelles » de n’importe quelle page d’appel affiche le texte en clair.
  • Vous pouvez l’effacer : via « Effacer une personne concernée » ou en appelant l’API, vous détruisez les clés de chiffrement et rendez toutes les occurrences irrécupérables.

1. Normalisation du hash côté client

Lorsque vous effacez les données d’une personne, vous fournissez uniquement un hash de son identifiant, jamais la valeur en clair. Le hash est calculé côté client, dans votre navigateur (ou votre SDK), de sorte qu’Audact ne reçoit jamais la valeur d’origine.

Comment fonctionne le hachage

Chaque type d’identifiant (nom, e-mail, téléphone) est d’abord normalisé, puis haché :

TypeNormalisationExemple
E-mailsuppression des espaces en début et fin, minuscules, Unicode NFC"Jörg@Example.com" → "jörg@example.com"
Téléphoneformat E.164 (chiffres et + uniquement)"+31 6 1234 5678" → "+31612345678"
Nomsuppression des espaces en début et fin, Unicode NFC, minuscules, réduction des espaces internes" John Smith " → "john smith"

Après normalisation, le hash client est SHA-256(normalized_value) sous forme de chaîne hexadécimale de 64 caractères.

Exemples détaillés

Exemple 1 : hash d’un e-mail

Input:         Foo.Bar@Example.COM
Normalized:    foo.bar@example.com
SHA-256:       00a9fee7604744049b5f777d65021e214480af944b16c1580893c5c6eed2d45a

Copiez la chaîne SHA-256 ci-dessus dans le formulaire « Effacer une personne concernée », ou transmettez-la à votre client API :

bash

curl -X POST https://api.audact.ai/v1/pii/shred \
  -H "Authorization: Bearer ${API_KEY}" \
  -H "Content-Type: application/json" \
  -d '{
    "identifier_type": "email",
    "identifier_hash": "00a9fee7604744049b5f777d65021e214480af944b16c1580893c5c6eed2d45a"
  }'

Exemple 2 : hash d’un numéro de téléphone

Input:         +31 6 1234 5678
Normalized:    +31612345678
SHA-256:       fab7be8a931d1088a82f6acf9e468aaf6a3accc07d5112ee5d6fca93281e1583

Les numéros de téléphone doivent être au format E.164 (+ suivi de chiffres uniquement). Si votre valeur contient des espaces, des tirets ou des parenthèses, ils sont supprimés avant le hachage. Les formats invalides (par ex. des numéros nationaux sans indicatif de pays, comme 0612345678) renvoient une erreur.

Exemple 3 : hash d’un nom

Input:         Émile
Normalized:    émile
SHA-256:       a56b363ca23dd9db9bd117840f28aab076b474f8cbea85416f715281dc809d56

Les noms sont insensibles à la casse et les signes diacritiques sont conservés (aucune conversion « é » → « e »). Les espaces multiples sont réduits à un seul. Les espaces en début et en fin sont supprimés.

Important : Audact ne détecte pas automatiquement les noms prononcés pendant les appels. L’effacement d’un nom ne fonctionne que pour les noms que vous avez fournis comme identifiants au début de l’appel ou via l’API de lien d’identité. Si un nom a été mentionné en passant sans avoir été enregistré, il n’est pas chiffré et ne peut pas être effacé par ce mécanisme.


2. Flux de déchiffrement et de destruction

Déchiffrer les données personnelles

Le tableau de bord affiche les valeurs chiffrées sous forme de pastilles (icône 🔒 Email). Pour afficher le texte en clair :

  1. Ouvrez la page de détail de l’appel.
  2. Cliquez sur « Déchiffrer les données personnelles » (en haut à droite, à côté du statut de l’appel).
  3. Requête groupée unique : toutes les valeurs chiffrées de la page sont déchiffrées en une seule requête et restent visibles pendant 5 minutes, puis sont automatiquement effacées de l’affichage.
  4. Le déchiffrement est audité : la chaîne de preuves de l’appel enregistre qui l’a déchiffré et quand.

API :

bash

curl -X POST https://api.audact.ai/v1/calls/${CALL_ID}/pii/decrypt \
  -H "Authorization: Bearer ${API_KEY}" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "BSN: ⟦pii:v1:BSN:…⟧, Email: ⟦pii:v1:EMAIL:…⟧"
  }'

Réponse :

json

{
  "text": "BSN: 123-45-6789, Email: alice@example.com",
  "decrypted": 2,
  "erased": 0
}

Si une identité a été détruite avant que vous ne déchiffriez, vous obtenez [ERASED_EMAIL] à la place du texte en clair. La réponse indique également combien de valeurs ont été effacées.

Détruire les données personnelles

Pour effacer définitivement les données d’une personne de votre espace de travail :

Via le tableau de bord (carte « Effacer une personne concernée »)

  1. Choisissez un type : nom, e-mail ou téléphone.
  2. Saisissez la valeur (en clair). Elle est hachée dans votre navigateur ; Audact ne la voit jamais.
  3. Vérifiez le hash avant de confirmer (pour vos archives).
  4. Confirmez avec ERASE (action destructrice).
  5. Résultat : nombre d’identités détruites et nombre d’appels concernés.

Via l’API

bash

curl -X POST https://api.audact.ai/v1/pii/shred \
  -H "Authorization: Bearer ${API_KEY}" \
  -H "Content-Type: application/json" \
  -d '{
    "identifier_type": "email",
    "identifier_hash": "00a9fee7604744049b5f777d65021e214480af944b16c1580893c5c6eed2d45a"
  }'

Réponse :

json

{
  "shred_id": "12345678-…",
  "identities_shredded": 1,
  "calls_affected": 7,
  "shredded_at": "2026-10-15T14:30:00Z"
}

Destruction par appel

Pour détruire toutes les identités d’un seul appel :

  1. Ouvrez la page de détail de l’appel.
  2. Allez dans l’onglet « Données personnelles ».
  3. Cliquez sur « Détruire toutes les identités de cet appel » (rôle de propriétaire requis).
  4. Confirmez avec SHRED.

⚠️ Avertissement : la destruction d’une identité e-mail ou téléphone efface cette valeur dans chaque appel de votre espace de travail où elle apparaît, et pas seulement dans celui-ci. C’est voulu : l’e-mail d’un appelant est la même valeur dans tous les appels, et l’effacer les protège tous.


3. Interrupteur : chiffrement ou occultation

Votre espace de travail dispose d’un paramètre « Chiffrement des données personnelles » sous Paramètres → Confidentialité et effacement.

Ce qu’il fait

  • ACTIVÉ (par défaut) : les nouveaux appels chiffrent les segments détectés. Vous pouvez ensuite les déchiffrer et les détruire.
  • DÉSACTIVÉ : les nouveaux appels occultent les segments détectés (ils apparaissent sous la forme [REDACTED_EMAIL] et sont irrécupérables). C’est le comportement actuel.

Remarques importantes

  • L’interrupteur ne vaut que pour la suite : les appels existants conservent le mode (activé ou désactivé) en vigueur à leur démarrage. Basculer l’interrupteur n’affecte que les nouveaux appels.
  • Pas de mode en clair : l’interrupteur n’a que deux états : chiffré ou occulté. Il n’existe pas de mode en clair où les données seraient stockées sans chiffrement.
  • Configurations rechiffrées : activer ou désactiver l’interrupteur déclenche un nouveau chiffrement de chaque configuration de votre espace de travail (visible dans l’historique des modifications sous la forme « N configurations rechiffrées »).
  • Le chiffrement exige des clés : si Audact ne peut pas préparer les clés de chiffrement lorsque vous passez sur ACTIVÉ, l’erreur « Les clés de chiffrement n’ont pas pu être préparées » s’affiche et le paramètre reste sur DÉSACTIVÉ. Contactez le support si le problème persiste.

4. Rôles et autorisations

L’accès aux fonctionnalités PII est contrôlé par les rôles de l’espace de travail :

ActionRôle minimalCe qu’elle fait
Voir les pastilles chiffrées (🔒 Email)ViewerVoir les valeurs chiffrées dans les appels ; ne permet pas de déchiffrer
Déchiffrer les données personnellesViewerAffichage temporaire en clair (effacé automatiquement après 5 min)
Lier un identifiantDeveloperEnregistrer un nom, un e-mail ou un numéro de téléphone comme identité d’une personne concernée
Détruire une personne concernée (effacer les données)OwnerDétruire les données d’une personne dans tous les appels
Consulter le journal des effacementsViewerVoir l’historique de qui a détruit quoi et quand
Activer ou désactiver le chiffrementOwnerModifier le mode de l’espace de travail

Les sessions d’emprunt d’identité (le personnel de l’organisation agissant comme un tenant) héritent du rôle du jeton et sont auditées au nom de l’utilisateur de l’organisation.


5. Portée de l’effacement : noms et personnes concernées

Pourquoi l’effacement d’un nom est plus limité

Audact dispose de sept détecteurs de segments : BSN, IBAN, carte, e-mail, téléphone, date de naissance et adresse postale. Parmi eux :

  • E-mail, téléphone, adresse postale, date de naissance, BSN, IBAN, carte sont détectés automatiquement dans les transcriptions d’appels.
  • Les noms ne sont PAS détectés automatiquement. Les noms n’existent que si vous les fournissez au début de l’appel ou via l’API de lien d’identité.

Conséquence : l’effacement d’un nom ne concerne que les identités que vous avez enregistrées, et non chaque mention de ce nom dans un appel.

Exemple

Call 123 subject identities:
  - Phone: +31612345678 (auto-detected at call start)
  - Name: "Alice Smith" (supplied at call init)
  - Email: alice@example.com (detected in conversation)

Evidence:
  "Caller information:
   BSN: [Encrypted]
   Phone: +31612345678
   Name: Alice Smith
   Email: [Encrypted]"

Si vous détruisez alice@example.com :

  • Cet e-mail est effacé dans chaque appel de votre espace de travail où il apparaît.
  • La transcription affiche désormais : Email: [ERASED_EMAIL]
  • Le BSN et l’adresse restent chiffrés (toujours déchiffrables).

Si vous détruisez alice smith (le hash du nom) :

  • Seule l’identité de nom que vous avez enregistrée est effacée.
  • La transcription affiche désormais : Name: [ERASED_NAME]
  • Mais si l’appelant est désigné par son nom ailleurs dans l’appel (par ex. « Alice a appelé à 14 h »), cette mention n’est PAS chiffrée et n’est PAS effacée.

Bonne pratique

Pour une protection renforcée des données, enregistrez tous les identifiants que vous connaissez au début de l’appel :

json

{
  "call_type": "inbound",
  "identifiers": [
    {"type": "email", "hash": "<client-hash-of-email>"},
    {"type": "phone", "hash": "<client-hash-of-phone>"},
    {"type": "name", "hash": "<client-hash-of-name>"}
  ]
}

Ainsi, chaque segment détecté lié à cette personne est chiffré sous un jeu de clés qui inclut l’identité de nom, de sorte qu’une seule destruction du nom efface tout.


Voir aussi

  • Conservation des données — délai d’effacement, bascule valable pour la suite uniquement, et enregistrements.
  • SDK Python — audact.pii.client_hash(type, value) / audact.pii.normalize_identifier(type, value)
  • SDK TypeScript — import { clientHash, normalizeIdentifier } from "@audactcore/sdk" ; utilisez await clientHash(type, value) et normalizeIdentifier(type, value)
  • SDK Go — audact.ClientHash / audact.NormalizeIdentifier

Source mise à jour: 19 octobre 2026