wolfSSL

wolfSSL مكتبة صغيرة الحجم، محمولة، ومدمجة، تدعم بروتوكولات SSL/TLS، وموجهة لمطوري الأنظمة المدمجة. وهي تطبيق مفتوح المصدر لبروتوكول TLS (SSL 3.0، TLS 1.0، 1.1، 1.2، 1.3، و DTLS 1.0، 1.2، و1.3) مكتوب بلغة البرمجة C. تتضمن المكتبة مكتبات عميل SSL/TLS، وتطبيق خادم SSL/TLS، بالإضافة إلى دعم واجهات برمجة تطبيقات متعددة، بما في ذلك تلك المُعرّفة بواسطة SSL و TLS . كما تتضمن wolfSSL واجهة توافق مع OpenSSL تضم أكثر وظائف OpenSSL استخدامًا. [ 4 ] [ 5 ]

المنصات

يتوفر wolfSSL حاليًا لأنظمة التشغيل التالية: Microsoft Windows ، و Linux ، وmacOS ، وSolaris ، و ESP32 ، و ESP8266 ، وThreadX ، وVxWorks ، وFreeBSD ، وNetBSD ، وOpenBSD ، وأنظمة Linux المدمجة ، وYocto Project ، و OpenEmbedded ، وWinCE ، وHaiku ، وOpenWrt ، و iPhone ، و Android ، و Wii ، و GameCube من خلال دعم DevKitPro، وQNX ، وMontaVista ، وإصدارات Tron ، و NonStop OS ، وOpenCL ، وMicroC/OS-II من Micrium ، و FreeRTOS ، وSafeRTOS ، و Freescale MQX ، و Nucleus ، و TinyOS ، و TI-RTOS ، و HP-UX ، وuTasker، وuT-kernel، وembOS، و INtime ، وmbed ، وRIOT ، وCMSIS-RTOS، وFROSTED، و Green Hills INTEGRITY ، وKeil RTX، TOPPERS، PetaLinux، Apache Mynewt ، و PikeOS ، [ 6 ] Deos، Azure Sphere OS، Zephyr، AIX، و Cesium.

تاريخ

يعود تاريخ wolfSSL إلى عام 2004. كان OpenSSL متاحًا آنذاك، وكان مرخصًا بترخيص مزدوج بموجب ترخيص OpenSSL وترخيص SSLeay . [ 7 ] في المقابل، تم تطوير yaSSL وترخيصه بترخيص مزدوج بموجب كل من الترخيص التجاري وترخيص GPL. [ 8 ] قدم yaSSL واجهة برمجة تطبيقات (API) أكثر حداثة، ودعمًا للمطورين على غرار البرامج التجارية، وكان مزودًا بطبقة توافق مع OpenSSL. [ 4 ] كان MySQL أول مستخدم رئيسي لـ wolfSSL/CyaSSL/yaSSL . [ 9 ] من خلال دمجه مع MySQL، حقق yaSSL انتشارًا واسعًا للغاية وصل إلى الملايين.

في فبراير 2019، تم تعيين دانيال ستينبيرج ، مبتكر cURL ، من قبل مشروع wolfSSL للعمل على cURL. [ 10 ]

البروتوكولات

تقوم مكتبة wolfSSL الخفيفة لبروتوكول SSL بتنفيذ البروتوكولات التالية: [ 11 ]

ملاحظات البروتوكول:

  • SSL 2.0 – تم إيقاف (حظر) استخدام SSL 2.0 في عام 2011 بموجب RFC 6176. لا يدعم wolfSSL ذلك.
  • SSL 3.0 – تم إيقاف (حظر) استخدام SSL 3.0 في عام 2015 بموجب RFC 7568. واستجابةً لهجوم POODLE ، تم تعطيل SSL 3.0 افتراضيًا منذ إصدار wolfSSL 3.6.6، ولكن يمكن تفعيله باستخدام خيار وقت الترجمة. [ 12 ]

الخوارزميات

يستخدم wolfSSL مكتبات التشفير التالية:

wolfCrypt

يستخدم wolfSSL بشكل افتراضي خدمات التشفير التي يوفرها wolfCrypt. [ 13 ] يوفر برنامج wolfCrypt خوارزميات التشفير التالية: RSA ، DSA ، ECC ، DSS ، Diffie-Hellman ، EDH ، ECDH-ECDSA، ECDHE-ECDSA، ECDH-RSA، ECDHE-RSA، NTRU (مهملة وتم إزالتها)، DES ، Triple DES ، AES (CBC، CTR، CCM، GCM، OFB، XTS، GMAC، CMAC)، Camellia ، IDEA ، ARC4 ، HC-128 ، ChaCha20 ، MD2 ، MD4 ، MD5 ، SHA-1 ، SHA-2 ، SHA-3 ، BLAKE2 ، RIPEMD-160 ، Poly1305 ، SM2، SM3 ، SM4 ، توليد الأرقام العشوائية، دعم الأعداد الصحيحة الكبيرة، التشفير/فك التشفير الأساسي 16/64، HMAC . PBKDF2 ، وخوارزميات التشفير ما بعد الكمومية: ML-KEM (معتمد بموجب FIPS 203) و ML-DSA (معتمد بموجب FIPS 204).

  • أنواع منحنيات ECC: SECP، SECPR2، SECPR3، BRAINPOOL، KOBLITZ
  • أطوال مفاتيح تصحيح الأخطاء (ECC): 112، 128، 160، 192، 224، 239، 256، 320، 384، 512، 521

يتضمن wolfCrypt أيضًا دعمًا لخوارزميات X25519 و Ed25519 ، بالإضافة إلى خوارزميات X448 و Ed448 .

يعمل wolfCrypt كتطبيق تشفير خلفي للعديد من حزم البرامج والمكتبات الشائعة، بما في ذلك MIT Kerberos [ 14 ] (حيث يمكن تمكينه باستخدام خيار البناء).

تم التحقق من صحة wolfCrypt وفقًا لمعيار FIPS ويحمل شهادتين FIPS 140-2 (#2425 [ 15 ] و#3389 [ 16 ] ) وشهادتين FIPS 140-3 (#4718 [ 17 ] و#5041 [ 18 ] ).

NTRU

يتضمن CyaSSL+ تشفير المفتاح العام NTRU [ 19 ] . وقد جاءت إضافة NTRU إلى CyaSSL+ نتيجةً للشراكة بين yaSSL وSecurity Innovation. [ 19 ] يعمل NTRU بكفاءة عالية في بيئات الأجهزة المحمولة والمدمجة نظرًا لصغر حجم البتات اللازمة لتوفير نفس مستوى الأمان الذي توفره أنظمة المفتاح العام الأخرى. إضافةً إلى ذلك، فهو غير معروف بتعرضه لهجمات الحوسبة الكمومية. تتوفر العديد من مجموعات التشفير التي تستخدم NTRU مع CyaSSL+، بما في ذلك AES-256 وRC4 وHC-128.

ما بعد الكم

توفر مكتبة wolfSSL دعمًا لمجموعة من خوارزميات التشفير ما بعد الكمومية، بما في ذلك آلية تغليف مفتاح Kyber (KEM)، المدمجة مع منحنيات ECC الموصى بها من قبل المعهد الوطني للمعايير والتكنولوجيا (NIST) للحفاظ على التوافق مع معيار FIPS. تشمل مستويات ML-KEM المدعومة المستوى 1 (ML-KEM-512)، والمستوى 3 (ML-KEM-768)، والمستوى 5 (ML-KEM-1024). بالنسبة للتوقيعات الرقمية، تُنفذ wolfSSL خوارزمية ML-DSA في المستويات 2 و3 و5؛ وخوارزمية FALCON في المستويين 1 و5؛ وخوارزميات SLH-DSA وLMS/HSS وXMSS/XMSS^MT. كما تدعم المكتبة أيضًا مخططات تبادل مفاتيح TLS الهجينة، التي تجمع بين ECDHE وML-KEM في مستويات الأمان المناسبة، بالإضافة إلى شهادات الخوارزمية المزدوجة ومصادقة TLS 1.3 ثنائية الخوارزمية.

تكامل الأجهزة

دعم العناصر الآمنة

يدعم wolfSSL العناصر الآمنة التالية :

الدعم التقني

يدعم wolfSSL تقنيات الأجهزة التالية:

الترخيص

wolfSSL مرخص بترخيص مزدوج: بموجب كل من ترخيص GPL-3.0 أو أحدث وترخيص تجاري.

انظر أيضاً

مراجع

  1. "سجل تغييرات wolfSSL" . 10 أغسطس 2017.
  2. "الإصدار 5.9.2" . 25 يونيو 2026. تم الاطلاع عليه بتاريخ 26 يونيو 2026 .
  3. "الترخيص" . GitHub .
  4. 1 2 wolfSSL – منتجات الاتصالات المدمجة
  5. "ما تحتاج معرفته عن بروتوكول TLS 1.3 ومكتبات SSL/TLS الخاصة بـ wolfSSL" . www.allaboutcircuits.com . تاريخ الاطلاع: 28 ديسمبر 2018 .
  6. "مكتبة wolfSSL المدمجة لبروتوكول SSL/TLS | منتجات wolfSSL" . 4 أغسطس 2017. تم الاطلاع عليه بتاريخ 31 يناير 2019 .
  7. OpenSSL: المصدر، الترخيص
  8. wolfSSL – الترخيص
  9. "MySQL، بناء MySQL مع دعم الاتصالات الآمنة" . مؤرشف من الأصل بتاريخ 2017-07-06 . تم الاطلاع عليه بتاريخ 2016-06-12 .
  10. انضم دانيال ستينبرغ، مؤسس وكبير مهندسي cURL، إلى wolfSSL
  11. wolfSSL – الوثائق | دليل CyaSSL – الفصل 4 (الميزات)
  12. "wolfSSL 3.6.6 متوفر الآن" .
  13. wolfSSL – الوثائق | دليل wolfSSL – الفصل 10 (مرجع استخدام wolfCrypt)
  14. كيربيروس: بروتوكول مصادقة الشبكة
  15. {{[title=الشهادة رقم 2425|url= https://csrc.nist.gov/projects/cryptographic-module-validation-program/Certificate/2425 }}
  16. {{[title=الشهادة رقم 3389|url= https://csrc.nist.gov/Projects/cryptographic-module-validation-program/Certificate/3389 }}
  17. {{[title=الشهادة رقم 4718|url= https://csrc.nist.gov/projects/cryptographic-module-validation-program/certificate/4718 }}
  18. {{[title=الشهادة رقم 5041|url= https://csrc.nist.gov/projects/cryptographic-module-validation-program/certificate/5041 }}
  19. 1 2 NTRU CryptoLabs رابط قديم مؤرشف بتاريخ 2013-02-02 على archive.today
  20. wolfSSL – wolfSSL مع Intel® SGX