Data Security
La sécurité des données protège celles-ci contre les accès non autorisés, les falsifications et les pertes grâce au chiffrement, au contrôle des accès et aux audits, y compris pour les jeux de données et les poids de l’IA.
La sécurité des données protège les données numériques contre l’accès non autorisé, le vol, l’altération et la perte tout au long de leur cycle de vie, de la collecte et du stockage au traitement, au partage et à la suppression. Ses objectifs sont généralement décrits par le triptyque CIA : la confidentialité, qui garantit que seules les personnes et les systèmes autorisés peuvent lire les données ; l’intégrité, qui garantit qu’elles restent exactes et non altérées ; et la disponibilité, qui garantit qu’elles peuvent être utilisées au besoin. Le Cybersecurity Framework 2.0 du NIST, publié en février 2024, organise ces travaux en six fonctions : gouverner, identifier, protéger, détecter, répondre et rétablir. En apprentissage automatique, les données à protéger comprennent les données d’entraînement et leurs étiquettes, les poids du modèle qui encodent ce que le modèle a appris à partir de ces données, les images et les invites envoyées pour l’inférence, ainsi que les journaux qui les enregistrent.
Contrôles essentiels#
La sécurité des données combine plusieurs couches afin qu’une défaillance ne compromette pas tout :
- Chiffrement : les données au repos sont chiffrées avec des algorithmes comme AES-256, et les données en transit circulent via TLS.
- Contrôle d’accès : chaque personne et chaque service bénéficient des privilèges minimaux nécessaires, au moyen de rôles, de l’authentification multifacteur et d’identifiants à durée de vie courte plutôt que de mots de passe partagés.
- Gestion des clés et des secrets : les clés de chiffrement sont conservées dans un service de gestion des clés ou un module de sécurité matériel, séparément des données, et renouvelées selon un calendrier défini. Les clés API ne sont pas stockées dans le code source ni dans les notebooks.
- Vérifications d’intégrité et sauvegardes : les sommes de contrôle et les signatures numériques détectent les fichiers altérés, et les sauvegardes versionnées et immuables permettent de récupérer les données après une attaque par rançongiciel ou une suppression accidentelle.
- Journalisation d’audit : chaque lecture, écriture et modification d’autorisation est consignée afin de détecter et d’examiner les accès inhabituels, comme le téléchargement d’un jeu de données entier par un compte pendant la nuit.
Le chiffrement authentifié garantit à la fois la confidentialité et l’intégrité. Cet exemple utilise Fernet, du paquet Python cryptography, pour chiffrer une ligne de fichier d’étiquettes, puis détecter la modification d’un seul bit :
import base64
from cryptography.fernet import Fernet, InvalidToken
# En production, la clé provient d’un service de gestion des clés et n’est jamais stockée avec les données
cipher = Fernet(Fernet.generate_key())
label = b"0 0.48 0.63 0.21 0.37\n" # une ligne d’annotation YOLO
token = cipher.encrypt(label) # texte chiffré AES-128-CBC et balise HMAC-SHA256
print(cipher.decrypt(token) == label)
# Modifie un bit du texte chiffré stocké, comme le ferait une altération ou une corruption du disque
raw = bytearray(base64.urlsafe_b64decode(token))
raw[30] ^= 1
try:
cipher.decrypt(base64.urlsafe_b64encode(bytes(raw)))
except InvalidToken:
print("Integrity check failed: decryption refused")La première ligne affiche True, car le jeton intact est déchiffré et retrouve son étiquette d’origine. Après la modification d’un bit du texte chiffré, la balise HMAC ne correspond plus ; decrypt déclenche donc InvalidToken et affiche Integrity check failed: decryption refused sans renvoyer de données altérées.
Sécurité des données en apprentissage automatique#
Les systèmes d’IA présentent des surfaces d’attaque que les bases de données ordinaires n’ont pas :
- Empoisonnement des données : un attaquant qui peut écrire dans un jeu de données, une file d’annotation ou une source Web récupérée y insère des échantillons qui font mal fonctionner le modèle entraîné, souvent uniquement lorsqu’un déclencheur caché apparaît.
- Fichiers de modèle non sécurisés : les points de contrôle enregistrés avec pickle de Python peuvent exécuter du code arbitraire au chargement. PyTorch 2.6 a défini
torch.loadpar défaut surweights_only=True, qui refuse tout sauf les tenseurs et les types simples ; le format safetensors ne stocke que des tenseurs. - Attaques par inférence d’appartenance : interroger un modèle entraîné peut révéler si un enregistrement donné figurait dans son jeu d’entraînement ; les poids entraînés sur des données sensibles doivent donc être protégés autant que les données elles-mêmes.
- Injection de prompt : des instructions dissimulées dans des documents ou des pages Web peuvent amener une application LLM à révéler des données de son contexte ou à les envoyer à un attaquant via ses outils.
- IA parallèle : des employés collent des données confidentielles dans des outils d’IA que l’organisation n’a pas approuvés, en dehors de ses contrôles d’accès et de ses journaux.
Les données de vision par ordinateur présentent des enjeux plus importants, car les images de personnes, de maisons, de véhicules et de patients contiennent souvent des renseignements personnels. Dans le secteur de la santé, les examens que les hôpitaux américains utilisent pour l’analyse d’images médicales sont soumis à la règle de sécurité de la HIPAA, qui exige des mesures de protection administratives, physiques et techniques pour les renseignements médicaux protégés sous forme électronique. Le traitement des images sur la caméra avec l’IA en périphérie évite complètement de transmettre les vidéos brutes sur le réseau ; l’apprentissage fédéré entraîne un modèle partagé tandis que chaque site conserve ses données ; et l’IA confidentielle exécute l’entraînement ou l’inférence sur des données sensibles dans des enclaves matérielles chiffrées dans le cloud. Pour les jeux de données qui doivent rester sur le réseau d’une entreprise, l’intégration sur site d’Ultralytics Platform exécute l’ingestion des jeux de données, les aperçus et l’entraînement sur l’ordinateur de l’entreprise : le worker monte le dossier du jeu de données en lecture seule et établit une connexion sortante via HTTPS sans ouvrir de ports entrants, et les pixels des images n’atteignent jamais Platform, qui ne reçoit que les étiquettes, les métriques et le meilleur point de contrôle.
Sécurité des données et confidentialité des données#
La confidentialité des données porte sur la collecte, l’utilisation, le partage et la conservation licites des données personnelles, conformément aux informations communiquées aux personnes, en vertu de lois comme le RGPD. La sécurité des données fournit les protections techniques et organisationnelles dont dépendent les engagements en matière de confidentialité ; elle couvre toutes les données de valeur, notamment les secrets commerciaux, le code source et les poids de modèles qui ne contiennent aucun renseignement personnel. Les techniques de protection de la vie privée comme la confidentialité différentielle se situent à l’intersection des deux : elles limitent ce qu’un modèle ou une statistique diffusés peuvent révéler sur une personne donnée. Une violation est une défaillance de sécurité qui devient un incident de confidentialité lorsqu’elle expose des données personnelles : selon l’article 33 du RGPD, le responsable du traitement dispose de 72 heures à partir du moment où il prend connaissance d’une telle violation pour en informer son autorité de contrôle, sauf si la violation est peu susceptible de présenter un risque pour les droits et libertés des personnes.










