Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
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.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
craw — Framework robusto di watermarking audio che incorpora messaggi binari negli spettrogrammi di magnitudine, con simulazione differenziabile degli attacchi, pooling Q-Former, mascheramento PESQ e codici di correzione degli errori per la resilienza contro attacchi codec e di elaborazione del segnale. | Kitploit
Strumenti/GitHubGitHub/davidc1212/craw
SteganografiaCrittografiaMachine LearningPaper e Ricerca
GitHubdavidc1212/craw

craw

Vedi Repository
7522 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 →

Informazioni

Framework robusto di watermarking audio che incorpora messaggi binari negli spettrogrammi di magnitudine, con simulazione differenziabile degli attacchi, pooling Q-Former, mascheramento PESQ e codici di correzione degli errori per la resilienza contro attacchi codec e di elaborazione del segnale.

Condividi

CRAW: Watermarking audio robusto ai codec

Codice sorgente per CRAW, un metodo di watermarking audio robusto basato sull'embedding nel dominio della magnitudine STFT. Un encoder incorpora un messaggio binario nello spettrogramma di magnitudine di una clip audio (la fase è preservata dal segnale pulito); un decoder recupera il messaggio sotto un'ampia gamma di attacchi di elaborazione del segnale, codec neurali, denoising e vocoder.

Questo repository è un fork di TimbreWatermarking (NDSS 2024), esteso con:

  • Livello di distorsione robusto — simulazione differenziabile degli attacchi (rumore, filtraggio, FACodec, MP3, spectral gating, ...) durante l'addestramento.
  • Pooling Q-Former — aggregazione basata su attention delle feature di watermark estratte, in sostituzione del semplice mean pooling.
  • Mascheramento PESQ — in fase di inferenza, una maschera per-campione ripristina il contenuto pulito dello spettrogramma nelle celle meno utili per la robustezza (in base alla magnitudine del gradiente PESQ), scambiando una piccola, regolabile quantità di robustezza con un guadagno di fedeltà.
  • Codici correttori di errore (ECC) — codec a ripetizione, Reed–Solomon, LDPC e BCH che avvolgono i bit grezzi del messaggio.

Struttura del repository

  • watermarking_model/ — tutto il codice del modello di watermarking: architettura (model/), addestramento (train.py), simulazione degli attacchi (distortions/, utils/distortions.py), valutazione (eval/), e script di export/esperimenti (scripts/).

Configurazione

Richiede Python 3.8.

Le dipendenze di terze parti incluse di seguito non sono raggruppate in questo repo. Sono necessarie solo specificamente per gli attacchi FACodec/denoiser/TiCodec — non per la verifica di base di embed/decode (vedi Inferenza di seguito). Se vuoi eseguire quegli attacchi, clona tu stesso i repository pubblici nei percorsi mostrati:

git clone https://github.com/lifeiteng/naturalspeech3_facodec.git watermarking_model/naturalspeech3_facodec
git clone https://github.com/modelscope/ClearerVoice-Studio.git watermarking_model/ClearerVoice-Studio
git clone https://github.com/y-ren16/TiCodec.git watermarking_model/codecs/ticodec_repo

Le dipendenze Python per la pipeline principale di addestramento/valutazione sono elencate in watermarking_model/requirements.txt. Per il rendering degli attacchi codec (EnCodec, TiCodec), consigliamo un ambiente conda separato per ciascun codec, poiché ognuno ha le proprie dipendenze — talvolta in conflitto; consultare le istruzioni di configurazione nella docstring di ciascuno script (codecs/encode_*.py).

Dati

L'addestramento e la valutazione utilizzano LibriSpeech (split train + test) e, per gli esperimenti cross-domain zero-shot, LJSpeech. I percorsi dei dataset sono impostati nel campo path.raw_path della configurazione di addestramento di ciascun esperimento (watermarking_model/config/**/train_*.yaml) e tramite --audio_dir negli script di eval/export — puntare questi alle proprie copie locali di LibriSpeech e LJSpeech.

Addestramento

cd watermarking_model
python3 train.py \
  -p config/process.yaml \
  -m config/craw/model.yaml \
  -t config/craw/train.yaml

Questo addestra il modello completo (strato di distorsione robusto + Q-Former + ECC a ripetizione) — la configurazione utilizzata per i risultati principali di CRAW. Il training viene registrato su Weights & Biases nel progetto craw; imposta WANDB_ENTITY/accedi tramite wandb login per il tuo account prima.

Il training utilizza un seed casuale fisso (2022, impostato in train.py per random/numpy/torch/torch.cuda) per la riproducibilità.

Il mascheramento PESQ viene applicato in fase di export/inferenza, non durante il training — vedi scripts/export_watermarked_dynamic.py --grad_mode spect_ft.

Inferenza

Un checkpoint CRAW pre-addestrato (epoca 20, corrispondente ai risultati principali del paper) è incluso direttamente in questa submission — nessun download necessario — in watermarking_model/results/craw/ckpt/pth/ (config/craw/model.yaml's test.model_path punta qui).

Per incorporare un messaggio in un singolo file WAV e decodificarlo immediatamente (senza attacco applicato) come rapido controllo di sanità:

cd watermarking_model
python3 -m scripts.infer \
  -p config/process.yaml \
  -m config/craw/model.yaml \
  -t config/craw/train.yaml \
  --input /path/to/clean.wav \
  --output /path/to/watermarked.wav \
  --ckpt 20

Questo stampa il messaggio incorporato/decodificato e l'accuratezza dei bit. Per la valutazione completa della suite di attacchi utilizzata nel paper, vedere eval/common_test.py di seguito.

Valutazione

eval/common_test.py esegue la suite completa di attacchi (elaborazione classica del segnale, codec neurali, denoiser, vocoder) contro un checkpoint addestrato e riporta l'accuratezza di decodifica e la fedeltà per ciascun attacco (SI-SNR, PESQ, STOI).

eval/tpr_eval.py calibra una soglia di rilevamento per modello a partire dai tassi di falsi positivi su audio pulito e riporta il TPR a un FPR condiviso; eval/compare_tpr.py aggrega i risultati tra gli esperimenti nelle tabelle comparative del paper con test di significatività paired-bootstrap. scripts/plot_ablation_sweep.py, scripts/plot_fidelity_sweep.py, scripts/visualize_mask.py e scripts/visualize_mask_zoom.py generano le figure del paper.

Citazione

Se utilizzi questo codice, cita:

@article{chernin2026craw,
  title={CRAW: Codec Robust Audio Watermarking},
  author={Chernin, David and Fetaya, Ethan},
  journal={arXiv preprint arXiv:2609.03107},
  year={2026},
  url={https://arxiv.org/abs/2609.03107}
}

Ringraziamenti

Basato su TimbreWatermarking (NDSS 2024). Utilizza NaturalSpeech3 FACodec, ClearerVoice-Studio, TiCodec e EnCodec per gli attacchi codec/denoiser.

Scarica lo strumento