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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
craw — 강력한 오디오 워터마킹 프레임워크로, 이진 메시지를 크기 스펙트로그램에 임베딩하며, 미분 가능한 공격 시뮬레이션, Q-Former 풀링, PESQ 마스킹, 그리고 코덱 및 신호 처리 공격에 대한 복원력을 위한 오류 정정 코드를 갖추고 있습니다. | Kitploit
도구/GitHubGitHub/davidc1212/craw
SteganographyCryptographyMachine LearningPapers & Research
GitHubdavidc1212/craw

craw

강력한 오디오 워터마킹 프레임워크로, 이진 메시지를 크기 스펙트로그램에 임베딩하며, 미분 가능한 공격 시뮬레이션, Q-Former 풀링, PESQ 마스킹, 그리고 코덱 및 신호 처리 공격에 대한 복원력을 위한 오류 정정 코드를 갖추고 있습니다.

저장소 보기
9일 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CRAW: Codec Robust Audio Watermarking

CRAW의 소스 코드로, STFT-크기-영역 임베딩을 기반으로 한 강건한 오디오 워터마킹 방법입니다. 인코더는 이진 메시지를 오디오 클립의 크기 스펙트로그램에 임베딩하며(위상은 클린 신호에서 보존됨), 디코더는 다양한 신호 처리, 신경 코덱, 노이즈 제거 및 보코더 공격 하에서 메시지를 복구합니다.

이 저장소는 TimbreWatermarking (NDSS 2024)의 포크로, 다음과 같은 기능이 확장되었습니다:

  • 강건한 왜곡 계층 — 학습 중 미분 가능한 공격 시뮬레이션 (노이즈, 필터링, FACodec, MP3, 스펙트럴 게이팅 등).
  • Q-Former 풀링 — 추출된 워터마크 특징의 주의 기반 집계로, 단순 평균 풀링을 대체합니다.
  • PESQ 마스킹 — 추론 시, 샘플별 마스크가 강건성에 가장 덜 유용한 셀에서 클린 스펙트로그램 콘텐츠를 복원하며(PESQ-그래디언트 크기 기준), 작고 조정 가능한 양의 강건성을 충실도 향상과 교환합니다.
  • 오류 정정 코드(ECC) — 반복, Reed–Solomon, LDPC 및 BCH 코덱이 원시 메시지 비트를 감쌉니다.

저장소 구조

  • watermarking_model/ — 모든 워터마킹 모델 코드: 아키텍처(model/), 학습(train.py), 공격 시뮬레이션(distortions/, utils/distortions.py), 평가 (eval/), 및 내보내기/실험 스크립트(scripts/).

설정

Python 3.8이 필요합니다.

아래의 번들된 타사 종속성은 이 저장소에 포함되어 있지 않습니다. 이는 특히 FACodec/denoiser/TiCodec 공격에만 필요하며 — 기본 임베드/디코드 검증에는 필요하지 않습니다(아래 Inference 참조). 해당 공격을 실행하려면 공개 저장소를 직접 아래 경로에 클론하세요:

root@kitploit:~
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

주요 학습/평가 파이프라인을 위한 Python 종속성은 watermarking_model/requirements.txt에 나열되어 있습니다. 코덱 공격 렌더링(EnCodec, TiCodec)의 경우, 각 코덱마다 별도의 conda 환경을 권장합니다. 각 코덱은 고유한 — 때로는 충돌하는 — 종속성을 가지기 때문입니다. 각 스크립트의 docstring(codecs/encode_*.py)에 있는 설정 지침을 참조하세요.

데이터

학습 및 평가에는 LibriSpeech(train + test 분할)와, 제로샷 교차 도메인 실험에는 LJSpeech가 사용됩니다. 데이터셋 경로는 각 실험의 학습 구성(watermarking_model/config/**/train_*.yaml)의 path.raw_path 필드와 eval/export 스크립트의 --audio_dir을 통해 설정됩니다 — 이를 로컬에 있는 LibriSpeech 및 LJSpeech 사본으로 지정하세요.

학습

root@kitploit:~
cd watermarking_model
python3 train.py \
  -p config/process.yaml \
  -m config/craw/model.yaml \
  -t config/craw/train.yaml

이 명령은 전체 모델(강건한 왜곡 계층 + Q-Former + 반복 ECC)을 학습합니다 — CRAW의 주요 결과에 사용된 구성입니다. 학습 로그는 Weights & Biases의 craw 프로젝트에 기록됩니다. 먼저 WANDB_ENTITY를 설정하고 wandb login을 통해 자신의 계정으로 로그인하세요.

학습은 재현성을 위해 고정된 무작위 시드(2022, train.py에서 random/numpy/torch/torch.cuda에 설정됨)를 사용합니다.

PESQ 마스킹은 학습 중이 아닌 내보내기/추론 시점에 적용됩니다 — scripts/export_watermarked_dynamic.py --grad_mode spect_ft를 참조하세요.

추론

사전 학습된 CRAW 체크포인트(epoch 20, 논문의 주요 결과와 일치)는 이 제출물에 직접 번들되어 있어 다운로드가 필요 없으며, watermarking_model/results/craw/ckpt/pth/에 있습니다(config/craw/model.yaml의 test.model_path가 이 경로를 가리킵니다).

하나의 WAV 파일에 메시지를 임베드하고 즉시 디코드하여(공격 없이) 빠른 sanity check를 수행하려면:

root@kitploit:~
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

이 명령은 임베드/디코드된 메시지와 비트 정확도를 출력합니다. 논문에 사용된 전체 공격 스위트 평가는 아래 eval/common_test.py를 참조하세요.

평가

eval/common_test.py는 학습된 체크포인트에 대해 전체 공격 스위트(고전적 신호 처리, 신경 코덱, 노이즈 제거기, 보코더)를 실행하고 공격별 디코드 정확도와 충실도(SI-SNR, PESQ, STOI)를 보고합니다.

eval/tpr_eval.py는 클린 오디오의 오탐률에서 모델별 탐지 임계값을 보정하고 공유 FPR에서 TPR을 보고합니다. eval/compare_tpr.py는 실험 간 결과를 집계하여 쌍체 부트스트랩 유의성 검정으로 논문의 비교 표를 생성합니다. scripts/plot_ablation_sweep.py, scripts/plot_fidelity_sweep.py, scripts/visualize_mask.py 및 scripts/visualize_mask_zoom.py는 논문의 그림을 생성합니다.

감사의 말

TimbreWatermarking (NDSS 2024)을 기반으로 구축되었습니다. 코덱/노이즈 제거 공격에 NaturalSpeech3 FACodec, ClearerVoice-Studio, TiCodec 및 EnCodec을 사용합니다.

도구 다운로드