Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
Anti-Tamper-Perturbation — [ICCV 2025] Protection anti-altération pour la génération non autorisée d'images individuelles | Kitploit
Outils/GitHubGitHub/seeyn/anti-tamper-perturbation
StéganographieArticles et RechercheApprentissage et ÉducationSécurité de l'IAAttaque Adversariale
GitHubseeyn/anti-tamper-perturbation

Anti-Tamper-Perturbation

[ICCV 2025] Protection anti-altération pour la génération non autorisée d'images individuelles

Voir le dépôt
61il y a 9 moisPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

🛡️ Protection anti-altération pour la génération non autorisée d'images individuelles

Code officiel pour l'article ICCV 2025
📄 Protection anti-altération pour la génération non autorisée d'images individuelles

Page 1 of PDF

⚙️ Configuration de l'environnement

root@kitploit:~
conda create --name ATP --file requirements.txt
conda activate ATP

🔐 Lancer ATP

  1. Téléchargez les jeux de données CelebA-HQ et VGGFace2. Les liens pour ces jeux de données se trouvent sur CelebA-HQ, VGGFace2. Pour l'entraînement du modèle d'autorisation, FFHQ doit également être téléchargé

  2. Téléchargez les poids du modèle d'autorisation et le masque de guidage

  3. Définissez le chemin weights dans configs/authorization.yaml et le chemin mask dans configs/protection.yaml

  4. Exécutez

root@kitploit:~
python perturb.py --device cuda:0 --input_dir path_to_cleanData --output_dir path_to_perturbedData --method CAAT --input-mask path_to_mask

Nous recommandons d'intégrer CAAT avec ATP, ce qui offre un bon équilibre entre l'efficacité de génération et les performances de protection. Mais nous fournissons également du code pour intégrer MetaCloak, Anti-DreamBooth et AdvDM.

📁 Structure du répertoire de sortie

root@kitploit:~
output_dir/
├── Authorized/  # Authorized images
|       ├ {id}/ # Authorized images separated by id
|       ├ Authorization_messages/ # Authorization messages for each image
└── ATP_{method}/     # Protected Images by ATP+{method}
         ├ {id}/ # ATP Perturbed images separated by id

🔍 Vérification

  1. Définissez le chemin weights dans configs/verification.yaml

  2. ✅ Sans purification : exécutez

root@kitploit:~
cd authorization
python verify.py --message_dir path_to_authorization_messages  --input_dir path_to_atp_protected_image --method CAAT
  1. 🔓 Sous purification
  • Transformation naïve : exécutez
root@kitploit:~
cd authorization
python verify.py --message_dir path_to_authorization_messages  --input_dir path_to_atp_protected_image --method CAAT --noise-args 2 --noise-type Resize
root@kitploit:~
cd authorization
python verify.py --message_dir path_to_authorization_messages  --input_dir path_to_atp_protected_image --method CAAT --noise-args 70 --noise-type JPEG
  • Purification avancée : GridPure
  1. Exécutez d'abord le GridPure
  2. Exécutez
root@kitploit:~
cd authorization
python verify.py --message_dir path_to_authorization_messages  --input_dir path_to_atp_protected_image --method GridPure

Exemple de sortie :

root@kitploit:~
Average Bit-Error: 0.44984375 Unauthorized image Ratio: 1.0 Pass Verification Identity Num: 0

« Pass Verification Identity Num » peut être utilisé pour calculer le taux de succès de protection (PSR). Une fois que la purification a eu lieu et que l'identité ne parvient pas à passer la vérification, nous considérons qu'il s'agit d'une protection réussie.

🧑‍🎨 Génération

Si les images passent la vérification, elles peuvent être utilisées pour la génération.

  1. ✅ Sans purification : exécutez
root@kitploit:~
 cd generation
 python generate.py --input_dir path_to_image_for_generation --method CAAT --device cuda:0

Les résultats sont enregistrés dans le répertoire « DREAMBOOTH ».

  1. 🔓 Sous purification

Bien que les images purifiées ne soient pas utilisées pour la génération dans nos expériences en raison de leur échec complet à passer la vérification, nous incluons tout de même le code des algorithmes de référence pour permettre la comparaison.

Pour JPEG et Resize, exécutez :

root@kitploit:~
 cd generation
 python generate.py --input_dir path_to_image_for_generation --method CAAT --device cuda:0 --purification naive

Pour GridPure, vous devez d'abord exécuter le GridPure, puis utiliser les images purifiées pour exécuter :

root@kitploit:~
 cd generation
 python generate.py --input_dir path_to_image_for_generation --method CAAT --device cuda:0 --purification gridpure

🧾 Calcul des métriques

  1. Téléchargez les embeddings d'identité depuis celebahq, vggface.

  2. Modifiez les paramètres définis dans ./configs/metrics.yaml. Vous devez définir le chemin vers l'image à évaluer(instance_dir) et le chemin du répertoire pour stocker le fichier d'enregistrement des résultats d'évaluation(output_dir), le prompt utilisé pour la génération, le chemin de l'embedding d'identité(id_emb_path).

  3. Téléchargez LIQE.pt depuis url. Placez-le dans ./metrics/LIQE/checkpoints

root@kitploit:~
 cd metrics
 python eval_dir.py --dataset CelebA-HQ --method CAAT

Le résultat de l'évaluation sera enregistré dans le output_dir que vous définissez dans metrics.yaml

root@kitploit:~
 python show.py --path evaluation_results

Exemple de sortie :

root@kitploit:~
CLIP-IQAC       LIQE            ISM             FDFR             PSR
-0.176525       1.033371        0.489084        0.406250        0.859375

(En modifiant le code eval_dir.py des lignes 67 à 68 (commentées), vous pouvez également évaluer le résultat de génération purifié issu de la transformation naïve.)

📈 Entraînement

Vous pouvez également entraîner votre propre modèle d'autorisation.

Modifiez les paramètres dans ./configs/authorization.yaml

root@kitploit:~
cd authorization

bash scripts/train.sh 

📚 Remerciements

Pour construire ce projet, nous avons emprunté des codes à : LIQE, GridPure, ANTIDB, METACLOAK, CAAT, HiDDeN, BasicSR.

Merci pour leur excellent travail !

📌 Si vous trouvez ce projet utile pour vos recherches, merci de considérer citer notre article.

© 2025 The Board of Trustees of the University of Illinois. Tous droits réservés.

Télécharger l’outil
ArgumentDescriptionExemple
--deviceDécide sur quel GPU exécuter le modèlecuda:0, cuda:1
--input_dirChemin vers les images d'entrée propres./data/clean/
--output_dirChemin pour enregistrer les images perturbées./data/perturbed/
--methodMéthode de perturbation de protectionCAAT, ANTIDB, ADVDM,METACLOAK
--input-maskChemin vers le masque./mask/050_mask.pt
ArgumentDescriptionExemple
--message_dir_dirChemin vers le répertoire des messages d'autorisation./data/Authorization_messages
--input_dirChemin vers les images à vérifier./data/perturbed/
--methodMéthode de perturbation de protectionCAAT, ANTIDB, ADVDM,METACLOAK
--noise-argsMéthode de perturbation de protection2, 50
--noise-typeMéthode de perturbation de protectionJPEG, Resize
ArgumentDescriptionExemple
--datasetJeu de données pour l'évaluationCelebA-HQ, VGGFace2
--methodMéthode de perturbation de protectionCAAT, ANTIDB, ADVDM,METACLOAK