Skip to content
KitploitKITPLOIT
أدواتالمدونة
Log in
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

الخلاصاتاتصالالخصوصية© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/davidc1212/craw
إخفاء المعلوماتالتشفيرتعلم الآلةالأوراق والأبحاث
GitHubdavidc1212/craw

craw

إطار عمل قوي للعلامات المائية الصوتية يدمج الرسائل الثنائية في المخططات الطيفية للمطال، مع محاكاة هجمات قابلة للتفاضل، وتجميع Q-Former، وإخفاء PESQ، ورموز تصحيح الأخطاء لتحقيق المرونة ضد هجمات الترميز ومعالجة الإشارات.

عرض المستودع
752منذ 2 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

CRAW: العلامة المائية الصوتية القوية تجاه الترميزات

الشيفرة المصدرية لـ CRAW، وهي طريقة قوية للعلامة المائية الصوتية مبنية على التضمين في مجال مقدار STFT. يقوم المُرمِّز بتضمين رسالة ثنائية في مخطط الطيف المقداري لمقطع صوتي (تُحفظ الطور من الإشارة النظيفة)؛ ويستعيد المُفكِّك الرسالة في ظل مجموعة واسعة من الهجمات المتعلقة بمعالجة الإشارة، والترميزات العصبية، وإزالة الضوضاء، والمُركِّبات الصوتية (vocoders).

هذا المستودع هو تفرّع (fork) من TimbreWatermarking (NDSS 2024)، موسَّع بما يلي:

  • طبقة تشويه قوية — محاكاة هجمات قابلة للاشتقاق (الضوضاء، الترشيح، FACodec، MP3، البوابة الطيفية، ...) أثناء التدريب.
  • تجميع Q-Former — تجميع قائم على الانتباه للميزات المستخرجة للعلامة المائية، بدلاً من التجميع المتوسط البسيط.
  • إخفاء PESQ — في وقت الاستدلال، يقوم قناع لكل عيّنة باستعادة محتوى الطيف النظيف في الخلايا الأقل فائدة للقوة (بحسب مقدار تدرّج PESQ)، مقايضاً بكمية صغيرة قابلة للضبط من القوة مقابل تحسّن في الدقة (fidelity).
  • رموز تصحيح الأخطاء (ECC) — ترميزات التكرار، وReed–Solomon، وLDPC، وBCH التي تغلّف بتات الرسالة الخام.

هيكل المستودع

  • watermarking_model/ — جميع شيفرة نموذج العلامة المائية: البنية (model/)، والتدريب (train.py)، ومحاكاة الهجمات (distortions/، utils/distortions.py)، والتقييم (eval/)، ونصوص التصدير/التجارب (scripts/).

الإعداد

يتطلب Python 3.8.

الاعتماديات الخارجية المضمَّنة أدناه غير مجمَّعة في هذا المستودع. وهي مطلوبة فقط لهجمات FACodec/denoiser/TiCodec تحديداً — وليس للتحقق الأساسي من التضمين/فك الترميز (انظر الاستدلال أدناه). إذا كنت ترغب في تشغيل تلك الهجمات، فاستنسخ المستودعات العامة بنفسك إلى المسارات الموضحة:

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 (مجموعتا التدريب والاختبار) في التدريب والتقييم، ويُستخدم LJSpeech في تجارب النقل عبر النطاقات دون تدريب مسبق (zero-shot). تُضبط مسارات مجموعات البيانات في حقل path.raw_path ضمن إعداد التدريب الخاص بكل تجربة (watermarking_model/config/**/train_*.yaml) وعبر --audio_dir في سكربتات التقييم/التصدير — وجّه هذه المسارات إلى نسخك المحلية من LibriSpeech و LJSpeech.

التدريب

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 المدربة مسبقًا (الحقبة 20، المطابقة للنتائج الرئيسية للورقة) مضمّنة مباشرةً في هذا التسليم — دون حاجة إلى تنزيل — في watermarking_model/results/craw/ckpt/pth/ (يشير test.model_path في config/craw/model.yaml إلى هنا).

لتضمين رسالة في ملف WAV واحد وفك تشفيرها فورًا مرة أخرى (دون تطبيق أي هجوم) كفحص سريع للتحقق:

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 عتبة كشف خاصة بكل نموذج انطلاقًا من معدلات الإيجابيات الكاذبة على الصوت النقي، ويبلّغ عن TPR عند FPR مشترك؛ ويجمّع eval/compare_tpr.py النتائج عبر التجارب في جداول المقارنة الخاصة بالورقة مع اختبار دلالة بالبوتستراب المزدوج. وتولّد scripts/plot_ablation_sweep.py وscripts/plot_fidelity_sweep.py وscripts/visualize_mask.py وscripts/visualize_mask_zoom.py أشكال الورقة.

الاستشهاد

إذا استخدمت هذا الكود، يُرجى الاستشهاد بـ:

@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}
}

شكر وتقدير

مبني على TimbreWatermarking (NDSS 2024). يستخدم NaturalSpeech3 FACodec، وClearerVoice-Studio، وTiCodec، و EnCodec لهجمات الترميز/إزالة الضوضاء.

تنزيل الأداة