Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
Watermark_Spoofing | Kitploit
도구/GitHubGitHub/alphawarheads/watermark_spoofing
Machine LearningPapers & ResearchAI Security
GitHubalphawarheads/watermark_spoofing

Watermark_Spoofing

저장소 보기
210개월 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

오디오 워터마킹이 오디오 안티-스푸핑 대응책에 미치는 영향

이 저장소는 본 논문 오디오 워터마킹이 오디오 안티-스푸핑 대응책에 미치는 영향 의 공식 구현을 제공합니다. 대화형 데모와 시각화 자료는 여기에서 확인하세요.

구성 내용

  1. 워터마크-스푸핑 데이터셋 (WSD) — 워터마킹된 평가 및 학습 세트를 생성하기 위한 스크립트와 라벨 파일.
  2. 지식 보존 워터마크 학습 (KPWL) — KPWL 프레임워크와 실험을 재현하기 위한 스크립트.

워터마크-스푸핑 데이터셋 (WSD)

WSD는 공개 말뭉치로부터 파생되었으며, 원본 데이터셋을 기준으로 벤치마킹되었습니다:

  • ASVspoof 2019 (LA) — 모델 학습에 사용되는 학습 분할. 다운로드: https://datashare.is.ed.ac.uk/handle/10283/3336

  • ASVspoof 2021 (LA & DF) — 평가에 사용.

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

  • In-the-Wild — 평가에 사용. 다운로드: https://deepfake-total.com/in_the_wild

일반적인 구성: **ASVspoof 2019 LA (train)**으로 학습하고, ASVspoof 2021 LA/DF (eval) 및 In-the-Wild로 평가합니다.

데이터 생성 유틸리티는 data_generation/에 있습니다. 해당 폴더의 README를 따라 WSD 및 그 변형(seen/unseen 워터마크 분할)을 재현할 수 있습니다.


설치 (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

참고: 주요 실험은 4 GPUs/DCUs에서 학습되었습니다.


사전 학습된 wav2vec 2.0 XLS-R (300M)

XLS-R 가중치 다운로드: https://github.com/pytorch/fairseq/tree/main/examples/wav2vec/xlsr


평가

아래 명령어는 세 개의 score.txt 파일(평가 세트당 하나)을 생성합니다. 이 점수는 이후 EER (%) 계산에 사용됩니다.

팁: 항상 전체 플래그인 --eval_track과 --eval_output을 사용하세요(--eval로 줄여 쓰지 마세요).

LA 2021

원본(워터마크 없음):

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"

워터마크-스푸핑 (Seen):

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

워터마크-스푸핑 (Unseen):

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

전체 평가 스크립트 세트는 eval.sh를 참조하세요.


사전 학습된 모델 테스트:

  • 학습된 KPWL 다운로드
  • 학습된 베이스라인 다운로드

점수 병합 및 평가

  • 파일 이름의 _wm_ = 워터마크된 오디오에서 생성된 점수.
  • 파일 이름의 _ori_ = 원본(워터마크 없음) 오디오에서 생성된 점수.
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)

프로토콜 구성 방법에 대한 자세한 내용은 generate_data/의 README를 참조하세요.


학습

베이스라인 사전 학습 (원본)

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

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

감사의 말 및 서드파티 코드

이 저장소는 다음 오픈소스 프로젝트를 기반으로 하며, 이들의 수정된 구성 요소를 통합합니다:

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

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

코드의 일부는 이러한 저장소에서 차용되었습니다. 모든 서드파티 코드는 원래 라이선스 아래에 유지되며, 상위 LICENSE 파일을 참조하고 적용 가능한 모든 저작권 고지를 유지하시기 바랍니다. 귀속 또는 라이선스 세부 정보가 불완전한 경우 알려주시면 신속히 수정하겠습니다.

문의 / 인용 연구에서 이 저장소 또는 WSD/KPWL을 사용하는 경우, 논문을 인용하고 이 저장소로 다시 링크해 주시기 바랍니다.

도구 다운로드