$$\rightleftharpoonup{xx}$$
$$\longleftharp{xx}$$,
$$\longrightharp{xx}$$,
Coup monté
Nous avons considéré une tâche de classification supervisée avec un ensemble
de données , où
représente les caractéristiques d’entrée et
désigne les étiquettes de classe correspondantes pour un problème de classe K. Le jeu de données D est divisé en un jeu de données d’entraînement propre et un jeu de données de test.
L’objectif est de modifier le jeu de données d’entraînement propre en introduisant de petites perturbations imperceptibles δ de créer un ensemble
de données non apprenant , où
+ δ. La perturbation δ est limitée par
, ce qui garantit qu’elle ne modifie pas de manière significative l’utilité normale des données. L’objectif clé est de perturber l’apprentissage en forçant le modèle fθ, entraîné sur Du, à se concentrer sur des motifs non pertinents induits par le bruit plutôt que sur les caractéristiques significatives, ce qui entraîne une mauvaise généralisation sur un ensemble de données de test propre :

Simulation d’un environnement blockchain
Pour installer des outils blockchain, le framework Hardhat est utilisé pour simuler un réseau Ethereum sur un environnement local afin de déployer des contrats intelligents et de tester la génération d’exemples non apprenants. Pour lancer un réseau local, un réseau blockchain simulé avec plusieurs nœuds et comptes est initialisé. Chaque nœud se voit allouer des ressources comme l’Ether pour faciliter les simulations de transactions. Pour développer des contrats intelligents, ils sont mis en œuvre pour gérer dynamiquement les autorisations des utilisateurs. Les utilisateurs autorisés peuvent accéder aux données propres, tandis que les utilisateurs non autorisés sont limités à l’accès aux exemples non apprenants. Tout d’abord, configurez un environnement de développement basé sur Node.js v16.x et Hardhat 2.8.4, et utilisez le compilateur Solidity 0.8.17 pour terminer la compilation et l’optimisation du contrat intelligent. Le processus de compilation est exécuté par la ligne de commande à l’aide de npx hardhat compile pour générer des artefacts de build contenant l’ABI et le bytecode. Par la suite, déployez le contrat sur le réseau de test Sepolia en exécutant le script de déploiement npx hardhat run scripts/deploy.js --network sepolia, puis enregistrez l’adresse du contrat de sortie et le hachage de la transaction de déploiement. Au cours de la phase de test de performance, trois tests de base sont exécutés de manière séquentielle : le test du coût de transaction enregistre la consommation de gaz en invoquant de manière cyclique la méthode grantAccess du contrat ; le test de débit utilise l’outil Artillerie pour simuler les demandes des utilisateurs avec une charge croissante ; Les transactions de test et de validation, y compris le stockage et la récupération des données, sont effectuées pour valider la fonctionnalité du contrat intelligent.
Construction d’utilisateurs on-chain et de mécanismes d’autorisation
Les comptes d’utilisateurs uniques sont générés à l’aide de portefeuilles blockchain (par exemple, MetaMask), chacun comprenant une clé privée et une clé publique. La mise en œuvre du prototype utilise un environnement de blockchain simulé où les entités d’utilisateurs synthétiques téléchargent des ensembles de données accessibles au public sur le système décentralisé, en stockant uniquement les valeurs de hachage cryptographiques sur le registre distribué. Cela garantit l’intégrité des données sans stocker les données réelles sur la chaîne, ce qui serait inefficace et coûteux. Les données réelles sont stockées hors chaîne, généralement à l’aide de systèmes de stockage décentralisés tels que IPFS, ce qui garantit une gestion efficace des données tout en préservant la sécurité et la confidentialité. Pour les jetons non fongibles (NFT) et le contrôle d’accès, cette étude met en œuvre un mécanisme de contrôle d’accès à grain fin utilisant des NFT conformes à la norme ERC-721. Chaque ensemble de données d’exemples non apprenants est associé à un tokenId unique, qui agit comme une clé pour accéder aux données. Les utilisateurs demandent l’accès en soumettant des preuves Merkle. Ces preuves vérifient l’identité de l’utilisateur de manière sécurisée et décentralisée. Une fois la preuve validée, le contrat frappe un NFT unique et le transfère dans le portefeuille de l’utilisateur. Ce NFT représente le droit de l’utilisateur d’accéder aux données associées à cet exemple spécifique non apprenant. L’utilisation de NFT garantit que seuls les utilisateurs autorisés peuvent accéder aux données, sur la base d’un enregistrement décentralisé et immuable. Cela contraste avec le contrôle d’accès basé sur les rôles (RBAC) traditionnel, qui fonctionne généralement au niveau du groupe et peut ne pas fournir la granularité nécessaire pour les applications de haute sécurité30.
Le contrat intelligent vérifie en permanence les autorisations d’accès via la fonction ownerOf, en vérifiant la propriété du NFT pour s’assurer que seuls les utilisateurs autorisés peuvent accéder aux données propres. Les administrateurs peuvent révoquer l’accès en détruisant le NFT via la fonction revokeAccess, ce qui garantit une flexibilité dans la gestion de l’accès des utilisateurs au fil du temps. Le flux de travail opérationnel se compose de quatre étapes critiques : (1) les utilisateurs soumettent des demandes d’accès contenant des preuves de Merkle ; (2) le contrat vérifie la validité de ces preuves ; (3) une fois la validation réussie, le contrat frappe le NFT correspondant ; (4) les utilisateurs récupèrent des données chiffrées à l’aide de l’identifiant de contenu (CID) IPFS intégré aux métadonnées du NFT. En tirant parti des NFT, nous obtenons plusieurs avantages par rapport aux mécanismes de contrôle d’accès traditionnels, tels qu’un contrôle d’autorisation précis (au niveau des données ou au niveau du groupe), une meilleure capacité d’audit (enregistrements immuables sur la chaîne) et la transférabilité des autorisations (transactions sur le marché NFT).
Des contrats multi-signatures sont mis en œuvre pour mettre à jour le hachage racine de Merkle, empêchant ainsi la falsification non autorisée des données. Le système intègre des mécanismes anti-Sybil en liant chaque ensemble de données à un tokenId unique, garantissant ainsi que les acteurs malveillants ne peuvent pas générer de jetons frauduleux pour accéder à des données non autorisées. Les UE sont chiffrés à l’aide d’AES-256 avant d’être téléchargés sur le réseau IPFS (InterPlanetary File System). Les hachages de données cryptés sont stockés sur la chaîne, tandis que les ensembles de données complets restent sur IPFS, ce qui réduit la surcharge de stockage de la blockchain. L’approche hybride consistant à combiner le stockage on-chain et off-chain établit un équilibre entre la garantie de la disponibilité des données et la réduction des coûts de stockage, une préoccupation courante dans les applications basées sur la blockchain.
Les contrats intelligents sont utilisés pour gérer dynamiquement les autorisations des utilisateurs. Chaque utilisateur n’a accès à des données propres que s’il détient le NFT approprié, qui sert de jeton d’autorisation. Les contrats intelligents enregistrent tous les accès aux données dans des journaux d’événements, offrant ainsi une traçabilité complète. Ces journaux sont immuables et peuvent être audités, offrant transparence et responsabilité. Le contrat intelligent utilise la fonction grantAccess pour valider les demandes d’accès. Le contrat vérifie si l’utilisateur détient le NFT approprié et, s’il est valide, lui donne accès aux données demandées. Chaque événement d’accès est enregistré sur la blockchain, ce qui garantit que toutes les activités de récupération de données sont vérifiables. Chaque événement d’accès aux données est enregistré en temps réel par le contrat intelligent, ce qui déclenche un événement AccessGranted. Cet événement contient des informations importantes telles que l’adresse du portefeuille de l’utilisateur, l’horodatage de l’accès et le tokenId NFT correspondant. La nature dynamique des contrats intelligents permet une gestion en temps réel des autorisations. Ceci est particulièrement utile dans les applications décentralisées, où le contrôle d’accès doit être très flexible et adaptable aux conditions changeantes.
Pour répondre aux préoccupations de confidentialité dans les environnements publics de blockchain, le système stocke des vignettes basse résolution (par exemple, 64 x 64 pixels) sur la blockchain, tandis que les images originales haute résolution sont cryptées et stockées hors chaîne sur IPFS. Seuls les utilisateurs autorisés qui possèdent le NFT correspondant peuvent récupérer les clés de décryptage permettant d’accéder aux données haute résolution. Les utilisateurs non autorisés reçoivent des versions des données avec des perturbations DEM en temps réel, ce qui garantit qu’ils ne peuvent pas accéder aux données d’origine.
Générer une perturbation d’image
Chargez des ensembles de données CIFAR10, CIFAR100 et ImageNet. Les images des ensembles de données sont uniformément redimensionnées et converties en tenseur PyTorch, et le tenseur de l’image est normalisé à l’aide de la moyenne et de l’écart-type. Initialisez un bruit aléatoire δ1, en utilisant une distribution gaussienne pour générer la perturbation initiale. Un bruit aléatoire est appliqué à chaque image x, et la perte entre l’étiquette cible et la prédiction du modèle est calculée en fonction de la perte d’entropie croisée. Dans un ensemble de données de classe C, pour un échantillon i, yi est la valeur de l’étiquette cible, pi est la probabilité de prédiction du modèle, qui quantifie la différence entre la distribution de probabilité prédite par le modèle et l’étiquette réelle, en maximisant la perte de sorte que le modèle produit de fausses prédictions. La perte d’entropie croisée est de :

L’influence de la perturbation de l’image sur la prédiction calculée en fonction de la fonction de perte, la propagation inverse met à jour la perturbation, et la plage de perturbation et la valeur de la perturbation sont constamment mises à jour par le biais de plusieurs itérations. Pour le taux d’apprentissage η, la formule de mise à jour de la perturbation est la suivante :

Générer des perturbations de texte
Chargez des modèles BERT pré-entraînés pour générer des plongements de texte. Un réseau TextFeatureExtractor personnalisé composé de deux blocs Transformer et d’une couche entièrement connectée est utilisé pour extraire des entités à partir d’intégrations de texte générées par des modèles BERT. Entrez les informations utilisateur et l’horodatage de l’utilisateur d’accès dans le modèle BERT pré-entraîné et générez dynamiquement du bruit de texte via le réseau TextFeatureExtractor personnalisé.
L’image d’entrée I est introduite dans le modèle multimodal Qwen2.5-VL-7B-Instruct. Guidé par une invite structurée, le modèle génère une description textuelle concise Tq. Ce texte généré Tq est entré dans le modèle de langage pré-entraîné BERT-base-uncased. Grâce à des invites de réécriture spécifiques à une tâche, le système génère du texte
perturbé qui préserve la sémantique tout en modifiant l’expression. Un réseau TextFeatureExtractor mappe le texte
perturbé dans un vecteur d’incorporation sémantique de haute dimension Eg.
Générer des perturbations multi-cibles
Pour assurer la compatibilité entre les plongements de texte et les perturbations d’image, nous ajustons la forme de l’intégration de texte pour qu’elle corresponde aux dimensions de la perturbation d’image. Soit ET et Eq les plongements de texte, et PL la perturbation de l’image. Le processus de remodelage garantit que ET et Eq sont transformés à la même dimensionnalité que PL :
, où C, H, W sont les dimensions de PL. Définissez un module de fusion attention-mécanisme qui fusionne les perturbations d’intégration de texte et les perturbations d’image, en ajustant dynamiquement les perturbations en fonction des poids d’attention du texte. La fusion est :

où α est l’ajustement dynamique des paramètres du mécanisme d’attention. δT est la perturbation du texte générée par le Eq et le ET. Ajouter un terme de régularisation au processus de formation pour éviter le surapprentissage. Le terme de régularisation est la norme L2 de l’encastrement du texte, qui pénalise les perturbations. La fonction de perte multi-objectif combine la perte d’entropie croisée et la perturbation de fusion, et la fonction de perte multi-objectif est la suivante :

Les objectifs de la fonction de perte sont les suivants :

où λ est un coefficient de régularisation utilisé pour contrôler la force de pénalité de la perturbation, dans le but d’inhiber une perturbation excessive ou un surapprentissage. Dans l’étude des attaques adverses, il a été constaté que
c’est la limite de perturbation perceptible à l’œil humain. Le processus d’entraînement et d’évaluation est défini, y compris la génération de perturbations, le calcul des pertes, l’entraînement du modèle, etc.
Expériences comparatives
Nous avons effectué une évaluation complète du bruit dynamique minimisant les erreurs (DEM) proposé par rapport à trois méthodes existantes : le bruit minimisant les erreurs (EM), les perturbations antagonistes transférables (TAP) et le bruit stable minimisant les erreurs (SEM). Ces méthodes ont été testées sur trois ensembles de données de référence : CIFAR-10, CIFAR-100 et un sous-ensemble d’ImageNet, à l’aide de quatre architectures de réseaux neuronaux largement adoptées : VGG-16, ResNet-18, ResNet-50 et DenseNet-121, afin d’assurer diverses conditions expérimentales.
De plus, nous avons examiné la robustesse de ces méthodes en appliquant des modèles de débruitage basés sur la diffusion pour éliminer le bruit défensif et en mesurant la précision des exemples débruités sur les ensembles de données de test. Cette étape visait à évaluer la capacité de chaque méthode à résister aux attaques de récupération et à maintenir l’intégrité de la confidentialité des données dans des conditions contradictoires. Les résultats indiquent que notre MNT surpasse les autres méthodes en termes de robustesse et de précision sur tous les ensembles de données et architectures, démontrant ainsi son efficacité en tant que cadre de préservation de la vie privée.