Chiffrement contextuel pour les pipelines de LLM et de bases de données vectorielles
Une plateforme d'AI d'entreprise devait activer des fonctionnalités basées sur les LLM (chat, recherche, analyse de documents) tout en garantissant que les données sensibles — PII, dossiers financiers, informations de santé — restaient chiffrées tout au long du pipeline, y compris lorsqu'elles étaient stockées sous forme d'embeddings vectoriels dans une base de données vectorielle.
Discutez de Votre Projet
Le Défi
L'utilisation de LLM et de bases de données vectorielles avec des données sensibles a introduit de nouveaux risques de sécurité :
- Attaques par inversion d'embedding — Des recherches ont montré que les embeddings vectoriels pouvaient être rétro-ingénierés pour reconstruire le texte original, exposant les PII stockées dans les bases de données vectorielles
- Fuite de contexte des LLM — Les données sensibles envoyées aux LLM pourraient apparaître dans les réponses à d'autres utilisateurs si elles ne sont pas correctement isolées
- Exigences de conformité — GDPR, HIPAA et SOC2 exigeaient le chiffrement au repos et en transit, mais les bases de données vectorielles stockaient des représentations mathématiques, et non des champs de texte traditionnels
- Fonctionnalité de recherche — Le chiffrement du texte avant l'embedding détruisait la signification sémantique, rendant la recherche de similarité inutile
- Gestion des clés — Les clés de chiffrement par tenant nécessitaient une rotation sans ré-embedding de l'ensemble des jeux de données
- Piste d'audit — Chaque accès aux données sensibles déchiffrées devait être journalisé pour la conformité
Notre Solution
Nous avons mis en œuvre une architecture de chiffrement contextuel qui chiffre sélectivement les champs sensibles avant le stockage tout en préservant la capacité de recherche sémantique grâce à une approche en couches — en chiffrant les PII dans les métadonnées tout en conservant le contenu assaini et non sensible disponible pour l'embedding.
Architecture
- Moteur de chiffrement : AES-256-GCM avec des clés de chiffrement par tenant
- Gestion des clés : AWS KMS pour la génération, la rotation et le contrôle d'accès des clés
- Détection des PII : Classificateur de PII basé sur le NER (Named Entity Recognition)
- Base de données vectorielle : Milvus pour la recherche de similarité sur des embeddings assainis
- Couche LLM : Contexte assaini envoyé au LLM, champs sensibles réinjectés après génération
- Système d'audit : Chaque événement de déchiffrement est journalisé avec l'utilisateur, l'horodatage et le but
- Base de données : PostgreSQL pour les métadonnées chiffrées
Stratégie de chiffrement contextuel
Classification des données
Avant que toute donnée n'entre dans le pipeline, un classificateur de PII catégorise chaque champ par niveau de sensibilité :
- Hautement sensible (par exemple, identifiants gouvernementaux, numéros de compte financier, identifiants médicaux) — Chiffré, jamais intégré, jamais envoyé au LLM
- PII sensibles (par exemple, noms complets, adresses e-mail, numéros de téléphone) — Chiffrées au repos, remplacées par des placeholders avant l'embedding
- Contextuel (par exemple, titres de poste, noms d'entreprise) — Chiffré au repos, disponible pour l'embedding avec consentement
- Non-sensible (par exemple, descriptions de produits, informations publiques) — Stocké et intégré tel quel
Couches de chiffrement
Couche 1 : Chiffrement au niveau du champ au reposLes champs sensibles sont chiffrés avec AES-256-GCM avant le stockage. Chaque tenant obtient une clé de chiffrement de données (DEK) dédiée gérée via une hiérarchie de clés via AWS KMS. Les champs « shadow » stockent des hachages recherchables pour des recherches de correspondance exacte sans nécessiter de déchiffrement.
Couche 2 : Assainissement avant l'embeddingLes PII sont détectées et remplacées par des placeholders préservant le type avant que le texte ne soit envoyé au modèle d'embedding. Cela préserve la signification sémantique pour la recherche de similarité tout en supprimant les informations identifiables. Le mappage de l'original au placeholder est stocké chiffré aux côtés de l'enregistrement vectoriel.
Couche 3 : Injection de contexte après la génération par le LLMLe LLM reçoit un contexte assaini avec des placeholders pour générer des réponses. Après la génération, le système réinjecte les valeurs réelles du stockage chiffré dans la réponse. Cela empêche les données sensibles d'entrer dans les données d'entraînement du LLM ou d'être mises en cache par le fournisseur.
Sécurité de la base de données vectorielle
Conception de la collection
Les collections de vecteurs stockent des embeddings assainis aux côtés des métadonnées originales chiffrées. L'isolation des tenants est assurée via des clés de partition, les métadonnées de chaque tenant étant chiffrées à l'aide de sa propre clé. La couche API valide la propriété du tenant avant toute opération de déchiffrement.
Gestion et rotation des clés
Hiérarchie des clés
Une hiérarchie de clés multi-niveaux est utilisée : une clé maîtresse dans AWS KMS enveloppe les clés de chiffrement de clés par tenant, qui à leur tour enveloppent les clés de chiffrement de données par tenant utilisées pour le chiffrement au niveau du champ. Cela permet une rotation efficace des clés sans rechiffrer toute la chaîne de clés.
Processus de rotation des clés
- Nouvelle DEK générée — Nouvelle clé de chiffrement de données créée sous la clé de chiffrement de clé existante
- Nouvelles écritures — Toutes les nouvelles données chiffrées avec la nouvelle clé ; l'ancienne clé reste valide pour les lectures
- Rechiffrement en arrière-plan — Tâche par lots rechiffrant les enregistrements existants avec la nouvelle clé
- Retrait de l'ancienne DEK — Une fois tous les enregistrements migrés, l'ancienne clé est marquée comme inactive
- Journal d'audit — Événement de rotation journalisé avec horodatages et nombre d'enregistrements affectés
Audit et conformité
Journal d'audit de déchiffrement
Chaque événement de déchiffrement enregistre qui l'a demandé, ce qui a été déchiffré, quand, pourquoi (contexte de la requête) et quelle clé a été utilisée — fournissant une piste de conformité complète.
Droit à l'effacement GDPR
Le système prend en charge la suppression complète des données à la fois dans la base de données relationnelle et dans la base de données vectorielle, avec une rotation optionnelle des clés pour garantir cryptographiquement l'absence d'accès résiduel. Toutes les opérations de suppression sont enregistrées dans une piste d'audit GDPR.
Fonctionnalités clés
- Chiffrement au niveau du champ — AES-256-GCM sur les champs sensibles, pas sur des enregistrements entiers
- Assainissement des PII — Les placeholders préservent la signification sémantique pour les embeddings
- Réinjection post-LLM — Les données sensibles ne sont jamais envoyées aux fournisseurs de LLM
- Clés par tenant — Clés de chiffrement isolées avec gestion AWS KMS
- Rotation des clés — Rotation sans interruption avec rechiffrement en arrière-plan
- Sécurité des embeddings — Les embeddings assainis empêchent les attaques par inversion sur les PII
- Piste d'audit — Chaque déchiffrement est journalisé pour les rapports de conformité
- Conformité GDPR — Effacement automatisé sur les stockages chiffrés et la base de données vectorielle
Résultats
Stack Technologique
caseStudyDetail.more Études de Cas
Découvrez plus de nos implémentations techniques
Traitement de factures assisté par l'IA avec OCR et intégration QuickBooks
Une entreprise de taille moyenne, traitant des centaines de factures fournisseurs chaque mois, devait éliminer la saisie manuelle des données en extrayant automatiquement les données des factures à l'aide de l'IA/OCR et en les synchronisant directement dans QuickBooks pour la tenue de livres et le suivi des paiements.
Insertion d'annonces côté client (CSAI) avec analyse des marqueurs SCTE-35 et intégration de lecteurs multiplateformes
Une plateforme de streaming vidéo devait implémenter l'insertion d'annonces côté client (CSAI) sur les applications web, mobiles et de télévision connectée — permettant des expériences publicitaires personnalisées au niveau de l'appareil avec un support complet d'interaction publicitaire (superpositions cliquables, bannières complémentaires, boutons de saut) que l'insertion côté serveur ne peut pas offrir.
Prêt à Transformer Votre Entreprise ?
Discutons de la façon dont nous pouvons appliquer des solutions similaires à vos défis.