Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
Anti-Tamper-Perturbation — [ICCV 2025] Protezione anti-manomissione contro la generazione non autorizzata di immagini individuali | Kitploit
Strumenti/GitHubGitHub/seeyn/anti-tamper-perturbation
SteganografiaPaper e RicercaApprendimento e FormazioneSicurezza dell'IAAttacco Avversario
GitHubseeyn/anti-tamper-perturbation

Anti-Tamper-Perturbation

[ICCV 2025] Protezione anti-manomissione contro la generazione non autorizzata di immagini individuali

Vedi Repository
619 mesi faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

🛡️ Protezione Anti-Manomissione per la Generazione Non Autorizzata di Immagini Individuali

Codice Ufficiale per l'Articolo ICCV 2025
📄 Protezione Anti-Manomissione per la Generazione Non Autorizzata di Immagini Individuali

Pagina 1 del PDF

⚙️ Configurazione dell'Ambiente

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

🔐 Avvio di ATP

  1. Scarica i dataset CelebA-HQ e VGGFace2. I link per i dataset sono disponibili su CelebA-HQ, VGGFace2. Per l'addestramento del modello di autorizzazione, è necessario scaricare anche FFHQ

  2. Scarica i pesi del modello di autorizzazione e la maschera guida

  3. Imposta il percorso di weights in configs/authorization.yaml e il percorso di mask in configs/protection.yaml

  4. Esegui

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

Consigliamo di integrare CAAT con ATP, che offre un buon equilibrio tra efficienza di generazione e prestazioni di protezione. Forniamo anche il codice per integrare MetaCloak, Anti-DreamBooth e AdvDM.

📁 Struttura della Directory di Output

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

🔍 Verifica

  1. Imposta il percorso di weights in configs/verification.yaml

  2. ✅ Senza Purificazione: Esegui

root@kitploit:~
cd authorization
python verify.py --message_dir path_to_authorization_messages  --input_dir path_to_atp_protected_image --method CAAT
  1. 🔓 Con Purificazione
  • Trasformazione Naive: Esegui
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
  • Purificazione Avanzata: GridPure
  1. Prima esegui GridPure
  2. Esegui
root@kitploit:~
cd authorization
python verify.py --message_dir path_to_authorization_messages  --input_dir path_to_atp_protected_image --method GridPure

Output di esempio:

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

"Pass Verification Identity Num" può essere utilizzato per calcolare il Protect Success Rate (PSR). Quando avviene la purificazione e l'identità non supera la verifica, consideriamo la protezione riuscita.

🧑‍🎨 Generazione

Se le immagini superano la verifica, possono essere utilizzate per la generazione.

  1. ✅ Senza Purificazione: Esegui
root@kitploit:~
 cd generation
 python generate.py --input_dir path_to_image_for_generation --method CAAT --device cuda:0

I risultati vengono salvati nella directory "DREAMBOOTH".

  1. 🔓 Con Purificazione

Sebbene le immagini purificate non vengano utilizzate per la generazione nei nostri esperimenti a causa del loro completo fallimento nel superare la verifica, includiamo comunque il codice per gli algoritmi di base per consentire il confronto.

Per JPEG e Resize, esegui:

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

Per GridPure, devi prima eseguire GridPure, quindi utilizzare le immagini purificate per eseguire:

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

🧾 Calcolo delle Metriche

  1. Scarica l'ID embedding da celebahq, vggface.

  2. Modifica le impostazioni definite in ./configs/metrics.yaml. Devi definire il percorso dell'immagine da valutare (instance_dir), il percorso della directory per salvare il file di registrazione dei risultati di valutazione (output_dir), il prompt utilizzato per la generazione e il percorso dell'ID embedding(id_emb_path).

  3. Scarica LIQE.pt da url. Posizionalo in ./metrics/LIQE/checkpoints

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

Il risultato della valutazione verrà salvato nella output_dir definita in metrics.yaml

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

Output di esempio:

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

(Modificando il codice di eval_dir.py dalle righe 67 a 68 (commentate), puoi anche valutare il risultato della generazione purificata dalla trasformazione naive.)

📈 Addestramento

Puoi anche addestrare il tuo modello di autorizzazione.

Modifica le impostazioni in ./configs/authorization.yaml

root@kitploit:~
cd authorization

bash scripts/train.sh 

📚 Riconoscimenti

Per costruire questo progetto, abbiamo preso in prestito codice da: LIQE, GridPure, ANTIDB, METACLOAK, CAAT, HiDDeN, BasicSR.

Grazie per il loro eccellente lavoro!

📌 Se trovi utile questo progetto per la tua ricerca, considera di citare il nostro articolo.

© 2025 The Board of Trustees of the University of Illinois. Tutti i diritti riservati.

Scarica lo strumento
ArgumentDescriptionExample
--deviceDecide su quale GPU eseguire il modellocuda:0, cuda:1
--input_dirPercorso delle immagini di input pulite./data/clean/
--output_dirPercorso in cui salvare le immagini perturbate./data/perturbed/
--methodMetodo di perturbazione della protezioneCAAT, ANTIDB, ADVDM,METACLOAK
--input-maskPercorso della maschera./mask/050_mask.pt
ArgumentDescriptionExample
--message_dir_dirPercorso della directory dei messaggi di autorizzazione./data/Authorization_messages
--input_dirPercorso delle immagini per la verifica./data/perturbed/
--methodMetodo di perturbazione della protezioneCAAT, ANTIDB, ADVDM,METACLOAK
--noise-argsMetodo di perturbazione della protezione2, 50
--noise-typeMetodo di perturbazione della protezioneJPEG, Resize
ArgumentDescriptionExample
--datasetDataset per la valutazioneCelebA-HQ, VGGFace2
--methodMetodo di perturbazione della protezioneCAAT, ANTIDB, ADVDM,METACLOAK