Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Watermark_Spoofing — Código de investigación y conjunto de datos (WSD) para evaluar el impacto de la marca de agua de audio en la anti-suplantación, utilizando wav2vec2 XLS-R y aprendizaje con preservación del conocimiento. | Kitploit
Herramientas/GitHubGitHub/alphawarheads/watermark_spoofing
Aprendizaje AutomáticoPapers e InvestigaciónSeguridad de IA
GitHubalphawarheads/watermark_spoofing

Watermark_Spoofing

Código de investigación y conjunto de datos (WSD) para evaluar el impacto de la marca de agua de audio en la anti-suplantación, utilizando wav2vec2 XLS-R y aprendizaje con preservación del conocimiento.

Ver Repositorio

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
2hace 10 mesesAún no revisado

EL IMPACTO DEL MARCADO DE AGUA DE AUDIO EN LAS CONTRAMEDIDAS ANTI-SPOOFING DE AUDIO

Este repositorio proporciona la implementación oficial de nuestro artículo: EL IMPACTO DEL MARCADO DE AGUA DE AUDIO EN LAS CONTRAMEDIDAS ANTI-SPOOFING DE AUDIO . Explora la demo interactiva y las visualizaciones aquí.

Qué incluye

  1. Watermark-Spoofing Dataset (WSD) — scripts y archivos de etiquetas para generar nuestros conjuntos de evaluación y entrenamiento con marca de agua.
  2. Knowledge-Preserving Watermark Learning (KPWL) — scripts para reproducir el framework KPWL y sus experimentos.

Watermark-Spoofing Dataset (WSD)

Derivamos el WSD de corpus públicos y lo comparamos con los datasets originales:

  • ASVspoof 2019 (LA) — división de entrenamiento utilizada para el entrenamiento del modelo. Descarga: https://datashare.is.ed.ac.uk/handle/10283/3336

  • ASVspoof 2021 (LA & DF) — utilizado para la evaluación.

    -LA: https://zenodo.org/record/4837263 -DF: https://zenodo.org/record/4835108

  • In-the-Wild — utilizado para la evaluación. Descarga: https://deepfake-total.com/in_the_wild

Configuración típica: entrenar en ASVspoof 2019 LA (train); evaluar en ASVspoof 2021 LA/DF (eval) e In-the-Wild.

Las utilidades de generación de datos se encuentran en data_generation/. Sigue el README de esa carpeta para reproducir WSD y sus variantes (divisiones de marca de agua vistas/no vistas).


Instalación (KPWL)

root@kitploit:~
# 1) Clone
git clone https://github.com/Alphawarheads/Watermark_Spoofing.git
cd Watermark_Spoofing

# 2) (Optional) Use the bundled Fairseq snapshot
unzip fairseq-a54021305d6b3c4c5959ac9395135f63202db8f1.zip

# 3) Conda env
conda create -n kpwl python=3.7 -y
conda activate kpwl

# 4) PyTorch (adjust CUDA/ROCm wheels as needed)
pip install torch==1.12.1 torchvision==0.13.1 torchaudio==0.12.1

# 5) Fairseq (editable)
cd fairseq-a54021305d6b3c4c5959ac9395135f63202db8f1
pip install --editable ./
cd ..

# 6) Project requirements
pip install -r requirements.txt

Notas: nuestros experimentos principales se entrenaron en 4 GPUs/DCUs.


wav2vec 2.0 XLS-R (300M) preentrenado

Descarga los pesos de XLS-R desde: https://github.com/pytorch/fairseq/tree/main/examples/wav2vec/xlsr


Evaluación

Los comandos siguientes generan tres archivos score.txt (uno por conjunto de evaluación). Estas puntuaciones se usan después para calcular el EER (%).

Consejo: usa siempre las banderas completas --eval_track y --eval_output (no las abrevies a --eval).

LA 2021

Original (sin marca de agua):

root@kitploit:~
TRACK=LA
PROTOCOLS=/public/home/qinxy/.../ASVspoof2021.LA.cm.eval.trl.txt
DATABASE_PATH=/public/home/qinxy/AudioData/Antispoofing/ASVspoof2021/ASVspoof2021_LA_eval/flac/
EVAL_OUTPUT=/public/home/qinxy/.../test2/${COMMENT}_eval_ori_LA21.txt
CUDA_VISIBLE_DEVICES=0,1,2,3 \
torchrun --standalone --nproc_per_node=4 \
    main_multinodes.py --track="$TRACK" --is_eval --eval \
  --model_path models/model_4dcu_kpwl.pth \
  --protocols_path="$PROTOCOLS" \
  --database_path="$DATABASE_PATH" \
  --eval_output="$EVAL_OUTPUT"

Watermark-Spoof (Visto):

root@kitploit:~
TRACK=LA
PROTOCOLS=/public/home/qinxy/zhangzs/watermarking/The-A-Files-master/protocols/tagged/LA21/protocol_wm_75_only.txt
DATABASE_PATH=/public/home/qinxy/AudioData/Antispoofing/LA21_phase1/
EVAL_OUTPUT=/public/home/qinxy/.../test2/${COMMENT}_eval_wm_seen_LA21.txt

Watermark-Spoof (No visto):

root@kitploit:~
TRACK=LA
PROTOCOLS=/public/home/qinxy/zhangzs/watermarking/The-A-Files-master/protocols/tagged_phase2/LA21/split/protocol_wm_75_only.txt
DATABASE_PATH=/public/home/qinxy/AudioData/Antispoofing/LA21_phase2/
EVAL_OUTPUT=/public/home/qinxy/.../test2/${COMMENT}_eval_wm_unseen_LA21.txt

Consulta eval.sh para el conjunto completo de scripts de evaluación.


Prueba con nuestros modelos preentrenados:

  • Descargar KPWL entrenado
  • Descargar Baseline entrenado

Fusionar puntuaciones y evaluar

  • _wm_ en un nombre de archivo = puntuaciones producidas en audio con marca de agua.
  • _ori_ en un nombre de archivo = puntuaciones producidas en audio original (sin marca de agua).
root@kitploit:~
# If auto_merge_scores is not in the same file, import it:
# from your_module import auto_merge_scores

TRACK = "ITW"     # one of {"LA21", "DF21", "ITW"}
comment = "ori"   # label used in your score filenames

outs = auto_merge_scores(
    track=TRACK,
    score_wm_path=f"/public/.../test2/{comment}_train_eval_wm_SLS_{TRACK}.txt",
    score_ori_path=f"/public/.../test2/{comment}_train_eval_ori_SLS_{TRACK}.txt",
)

print("Output Results:")
for p in outs:
    print(" -", p)

Consulta el README en generate_data/ para obtener detalles sobre cómo se construyen los protocolos.


Entrenamiento

Preentrenamiento de la línea base (original)

root@kitploit:~
CUDA_VISIBLE_DEVICES=0,1,2,3 \
torchrun --standalone --nproc_per_node=4 \
  main_multinodes.py \
  --track=DF --lr=0.000001 --batch_size=5 --loss=WCE \
  --num_epochs=50 --comment 4dcu_baseline

Ajuste fino de KPWL

root@kitploit:~
CUDA_VISIBLE_DEVICES=0,1,2,3 \
torchrun --standalone --nproc_per_node=4 \
    main_kpwl.py \
  --eval_track=DF --lr=5e-7 --batch_size=5 --num_epochs=2 \
  --model_path best_model.pth \
  --comment model_4dcu_kpwl

Agradecimientos y código de terceros

Este repositorio se basa en e incorpora componentes modificados de los siguientes proyectos de código abierto:

SLSforASVspoof-2021-DF — https://github.com/QiShanZhang/SLSforASVspoof-2021-DF.git

The-A-Files — https://github.com/pawel-kaczmarek/The-A-Files.git

Partes del código están adaptadas de estos repositorios. Todo el código de terceros permanece bajo sus licencias originales; consulta los archivos LICENSE de los proyectos originales y conserva todos los avisos de derechos de autor aplicables. Si falta algún detalle de atribución o licencia, infórmanos y lo corregiremos de inmediato.

Contacto / Cita Si usas este repositorio o WSD/KPWL en tu investigación, cita el artículo y enlaza de vuelta a este repositorio.

Descargar herramienta