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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
wycheproof — مشروع Wycheproof يختبر مكتبات التشفير ضد الهجمات المعروفة. | Kitploit
أدوات/GitHubGitHub/c2sp/wycheproof
التحليل الثابتتحليل الثغرات الأمنيةتحليل الكودالتشفيرالأوراق والأبحاثالتعلم والتعليم
GitHubc2sp/wycheproof

wycheproof

مشروع Wycheproof يختبر مكتبات التشفير ضد الهجمات المعروفة.

عرض المستودع
3.1k331منذ يوم واحدتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

مشروع Wycheproof

مشروع Wycheproof هو مستودع مُدار من المجتمع لمتجهات الاختبار التي يمكن لمطوّري مكتبات التشفير استخدامها للاختبار ضد الهجمات المعروفة، وتناقضات المواصفات، ومختلف أخطاء التنفيذ الأخرى.

تُحفظ متجهات الاختبار كبيانات JSON لمتجهات الاختبار، مع ملفات مخطط JSON مصاحبة توثّق بنية بيانات متجهات الاختبار.

البدء

  1. استنسخ هذا المستودع. قد ترغب أيضاً في دمج Wycheproof كوحدة فرعية في Git أو إعداد أتمتة بطريقة أخرى لتتبّع التغييرات بمرور الوقت.
  2. اكتب (أو ولّد من ملفات مخطط JSON) رمزاً لتحميل بيانات المتجهات بالشكل المناسب للغة/مشروع التنفيذ الخاص بك.
  3. لكل خوارزمية تهمّك، حدد المدخلات إلى واجهات برمجة التشفير الخاصة بك، والمخرجات الناتجة، مع ربطها بما توفّره متجهات الاختبار.
  4. مرّر عبر متجهات الاختبار المنطبقة، وتأكد من أن النتائج التي تُنتجها واجهة برمجة التطبيقات الخاصة بك عند إعطائها بيانات الإدخال ذات الصلة تطابق النتائج المتوقعة في متجهات الاختبار.
  5. للحصول على أفضل النتائج، ادمج هذه العملية في خط التكامل المستمر (CI) الخاص بك بحيث تُجرى الاختبارات لكل المساهمات/التغييرات الجديدة.

قد تجد أنه من المفيد فحص كيفية قيام مشاريع أخرى مثل pyca/cryptography التي قامت بدمج متجهات اختبار Wycheproof.

التغطية

يحتوي مشروع Wycheproof على متجهات اختبار لأشهر خوارزميات التشفير، بما في ذلك

  • AEGIS
  • AES-EAX
  • AES-FF1
  • AES-GCM
  • AES-SIV
  • ARIA
  • ASCON v1.2 (ليس بعد SP 800-232)
  • Camellia
  • ChaCha20-Poly1305
  • التشفير المُجزّأ (Cobblestone)
  • XChaCha20-Poly1305
  • DH
  • DHIES
  • DSA
  • ECDH
  • ECDSA
  • EdDSA
  • ECIES
  • HKDF
  • HMAC
  • KMAC
  • MORUS
  • PBKDF2
  • RSA
  • SEED
  • SipHash
  • SM4
  • VMAC
  • X25519, X448
  • BLS-12-381
  • ML-KEM (CRYSTALS-Kyber)
  • ML-DSA (CRYSTALS-Dilithium)

تكتشف متجهات الاختبار ما إذا كانت المكتبة عرضة للعديد من الهجمات، بما في ذلك

  • هجمات المنحنيات غير الصالحة
  • القيم العشوائية (nonces) المنحازة في مخططات التوقيع الرقمي
  • بالطبع، جميع هجمات Bleichenbacher
  • والمزيد -- لدينا أكثر من 80 حالة اختبار

نرحب بالمساهمات ببيانات متجهات اختبار جديدة وبخوارزميات جديدة.

المساهمة

إذا كنت ترغب في المساهمة، فيرجى قراءة CONTRIBUTING وإرسال طلبات السحب إلينا. يمكنك أيضاً الإبلاغ عن الأخطاء أو طلب اختبارات جديدة عبر مشكلات GitHub.

أولويات التطوير

نحن في عملية إحياء تطوير وصيانة مشروع Wycheproof كمشروع C2SP مع تركيز متجدد على بيانات متجهات الاختبار. أولوياتنا المباشرة هي:

  1. إكمال أوصاف مخطط JSON لجميع متجهات الاختبار.
  2. تحسين الدعم التوثيقي والأدواتي للمساهمين الخارجيين لتقديم بيانات اختبار جديدة إلى ملفات المتجهات الحالية.
  3. تطوير مجتمع من المستهلكين المُتلقين الذين يمكنهم المساعدة في قيادة صيانة ومراجعة بيانات متجهات الاختبار الجديدة.
  4. إضافة تغطية إضافية للخوارزميات وحالات الاختبار إلى بيانات متجهات الاختبار.

الأسئلة الشائعة

لماذا يُسمى المشروع "Wycheproof"؟

سُمي مشروع Wycheproof على اسم جبل Wycheproof، أصغر جبل في العالم. كان الدافع الرئيسي للمشروع وقت إنشائه هو امتلاك هدف قابل للتحقيق. كلما كان الجبل أصغر، زادت احتمالية القدرة على تسلقه.

ما المشاريع المستهلكة التي تستخدم متجهات اختبار Wycheproof؟

تُستخدم متجهات اختبار Wycheproof بشكلٍ ما من قبل عدد من مشاريع ومكتبات التشفير المهمة. وهي دون ترتيب معين تشمل:

  • OpenSSL
  • BoringSSL
  • aws-lc
  • LibreSSL
  • NSS
  • pyca/cryptography
  • Botan
  • Go cryptography
  • swift-crypto
  • RustCrypto
  • Graviola
  • Tink
  • PyCryptdome
  • OpenTitan
  • Zig
  • liboqs
  • bc-rust
  • leancrypto
  • Odin

إذا كان مشروعك يستخدم متجهات اختبار من Wycheproof، فلا تتردد في فتح PR لإضافته إلى القائمة أعلاه!

هل عثر اختبار Wycheproof على أخطاء بارزة؟

انظر إلى doc/bugs.md للاطلاع على بعض الأخطاء التاريخية البارزة التي تم اكتشافها باستخدام منصات اختبار Wycheproof، أو بيانات متجهات الاختبار.

أين يوجد دليل testvectors/؟

قمنا مؤخراً بدمج الدليلين testvectors/ و testvectors_v1/ في دليل واحد موحّد مع نهج واحد متسق للمخططات.

يمكن للمستخدمين الذين يحتاجون بيانات متجهات الاختبار الأصلية ("v0") استنساخ هذا المستودع من الوسم wycheproof-v0-vectors، لكن يُشجَّعون على التفكير في التحديث لاستخدام testvectors_v1/ للاستفادة من التحديثات المستقبلية. إذا كانت هناك ميزات/تغطية اختبار من testvectors/ مفقودة في testvectors_v1/، أو كانت هناك مشكلة أخرى تمنع تحديثك، فيرجى فتح مشكلة تصف احتياجاتك.

هل جميع المتجهات لديها مخططات؟

في وقت كتابة هذا، تفتقر ملفات testvectors_v1 التالية إلى المخططات:

  • testvectors_v1/aes_ff1_base*_test.json
  • testvectors_v1/aes_ff1_radix*_test.json
  • testvectors_v1/ecdsa_secp256k1_sha256_bitcoin_test.json
  • testvectors_v1/pbes2_hmacsha*_aes_*_test.json
  • testvectors_v1/pbkdf2_hmacsha*_test.json
  • testvectors_v1/rsa_pss_*_sha*_mgf*_params_test.json
  • testvectors_v1/rsa_pss_misc_params_test.json

ستكون المساهمة بمخططات للمتجهات المذكورة أعلاه موضع ترحيب كبير.

هل هناك وثائق إضافية حول متجهات الاختبار؟

تتوفر بعض الوثائق القديمة لـ الملفات، التنسيقات والأنواع، لكنها ليست بالضرورة متزامنة مع الحالة الحالية لمتجهات الاختبار.

بشكل عام، يُفضَّل الرجوع إلى ملفات المخطط لأنها مُختبَرة في CI لضمان تطابق محتويات ملفات متجهات الاختبار مع مخططها المُعلَن.

أين يوجد رمز منصة الاختبار؟

تاريخياً، تضمن Wycheproof أيضاً منصات اختبار (مثلاً لتطبيقات تشفير Java وJavascript) اختبرت مجموعة متنوعة من الهجمات مباشرة ضد التطبيقات. منذ الانتقال إلى دعم المجتمع، تمت إزالة هذه المنصات (لكنها لا تزال موجودة في سجل git للأطراف المهتمة في cd27d64). تركيزنا الحالي ينصب على متجهات الاختبار المستقلة عن التنفيذ.

اختبار مكتبات التشفير الخارجية مباشرةً يعني أن العيوب لا تُكتشف إلا بعد أن يتم إيداعها في المستودع، وربما إصدارها، من قِبل المشاريع التي تحت الاختبار. بدلاً من ذلك، نشجع المشاريع المستهلكة على اختبار أكوادها بانتظام باستخدام متجهات اختبار Wycheproof كجزء من عملية التطوير الخاصة بها. يساعد هذا النهج في اكتشاف العيوب قبل أن تتحول إلى ثغرات (CVEs)، ويعني أن الميزات الجديدة تُختبر فوراً، ويساعد على توزيع عبء الصيانة. وهذا يسمح للقائمين على Wycheproof بالتركيز على متجهات الاختبار بدلاً من تتبع التطوير في المشاريع المستهلكة العديدة مع الحفاظ في الوقت نفسه على عدد متزايد باستمرار من منصات الاختبار الخاصة بلغات ومشاريع محددة.

قد يجد المهتمون بمنصات الاختبار أن العمل المستمر الذي يقوم به Daniel Bleichenbacher في Rooterberg مثيراً للاهتمام.

بأي ترخيص يُقدَّم Wycheproof؟

حقوق الطبع والنشر 2016-2026 لمؤلفي Wycheproof، متاح بموجب رخصة Apache 2.0.

من أنشأ Wycheproof؟

تم إنشاء مشروع Wycheproof في الأصل وصيانته بواسطة:

  • Daniel Bleichenbacher
  • Thai Duong
  • Emilia Kasper
  • Quan Nguyen
  • Charles Lee
تنزيل الأداة