يأتي OpenSSL 3.0.0 مع مجموعة من التغييرات والتحسينات الرئيسية

بعد ثلاث سنوات من التطوير و 19 نسخة تجريبية تم الإعلان مؤخرًا عن إصدار الإصدار الجديد من OpenSSL 3.0.0 التي يحتوي على أكثر من 7500 تغيير ساهم بها 350 مطورًا وهذا يمثل أيضًا تغييرًا كبيرًا في رقم الإصدار وذلك بسبب الانتقال إلى الترقيم التقليدي.

من الآن فصاعدًا ، سيتغير الرقم الأول (الرئيسي) في رقم الإصدار فقط عند انتهاك التوافق على مستوى API / ABI ، والثاني (ثانوي) عند زيادة الوظائف دون تغيير API / ABI. سيتم شحن التحديثات التصحيحية مع تغيير الرقم الثالث (التصحيح). تم اختيار الرقم 3.0.0 مباشرة بعد 1.1.1 لتجنب الاصطدامات مع وحدة FIPS قيد التطوير لـ OpenSSL ، والتي تم ترقيمها 2.x.

التغيير الرئيسي الثاني للمشروع كان الانتقال من رخصة مزدوجة (OpenSSL و SSLeay) لترخيص Apache 2.0. اعتمد ترخيص OpenSSL الأصلي المستخدم سابقًا على ترخيص Apache 1.0 القديم وتطلب ذكرًا صريحًا لـ OpenSSL في المواد الترويجية عند استخدام مكتبات OpenSSL ، وملاحظة خاصة إذا تم شحن OpenSSL مع المنتج.

جعلت هذه المتطلبات الترخيص السابق غير متوافق مع GPL ، مما يجعل من الصعب استخدام OpenSSL في مشاريع GPL المرخصة. للتحايل على عدم التوافق هذا ، اضطرت مشاريع GPL إلى تطبيق اتفاقيات ترخيص محددة ، حيث تم استكمال النص الرئيسي لـ GPL بفقرة تسمح صراحة للتطبيق بالارتباط بمكتبة OpenSSL مع الإشارة إلى أن GPL لا تنطبق على الالتزام بـ OpenSSL.

ما الجديد في OpenSSL 3.0.0

بالنسبة للجزء من المستجدات التي تم تقديمها في OpenSSL 3.0.0 ، يمكننا أن نجد ذلك تم اقتراح وحدة FIPS جديدة ، أن يتضمن تنفيذ خوارزميات التشفير التي تفي بمعيار الأمان FIPS 140-2 (من المقرر أن تبدأ عملية اعتماد الوحدة هذا الشهر ، ومن المتوقع الحصول على شهادة FIPS 140-2 العام المقبل). الوحدة الجديدة أسهل في الاستخدام ولن يكون الاتصال بالعديد من التطبيقات أكثر صعوبة من تغيير ملف التكوين. بشكل افتراضي ، يتم تعطيل FIPS ويتطلب تمكين خيار fips.

في libcrypto ، تم تنفيذ مفهوم مزودي الخدمة المتصلين التي حلت محل مفهوم المحركات (تم إهمال واجهة برمجة تطبيقات المحرك). بمساعدة البائعين ، يمكنك إضافة تطبيقات الخوارزمية الخاصة بك لعمليات مثل التشفير وفك التشفير وإنشاء المفاتيح وحساب MAC وإنشاء التوقيعات الرقمية والتحقق منها.

كما تم تسليط الضوء على ذلك إضافة دعم لـ CMPأن يمكن استخدامه لطلب الشهادات من خادم CA وتجديد الشهادات وإبطال الشهادات. يتم العمل مع CMP بواسطة الأداة المساعدة الجديدة openssl-cmp ، والتي تنفذ أيضًا دعم تنسيق CRMF ونقل الطلبات عبر HTTP / HTTPS.

أيضا تم اقتراح واجهة برمجة جديدة لتوليد المفاتيح: EVP_KDF (واجهة برمجة تطبيقات وظيفة اشتقاق المفتاح) ، والتي تبسط دمج تطبيقات KDF و PRF الجديدة. تمت إعادة تصميم واجهة برمجة التطبيقات EVP_PKEY القديمة ، والتي من خلالها توفرت خوارزميات التشفير ، و TLS1 PRF و HKDF ، كطبقة وسيطة مطبقة أعلى واجهات برمجة التطبيقات EVP_KDF و EVP_MAC.

وفي تنفيذ البروتوكول يوفر TLS القدرة على استخدام عميل وخادم TLS المدمجين في Linux kernel لتسريع العمليات. لتمكين تطبيق TLS الذي يوفره Linux kernel ، يجب تمكين الخيار "SSL_OP_ENABLE_KTLS" أو إعداد "enable-ktls".

من ناحية أخرى ذكر ذلك تم نقل جزء كبير من واجهة برمجة التطبيقات إلى فئة تم إيقاف العمل بها- سيؤدي استخدام المكالمات الموقوفة في كود المشروع إلى إنشاء تحذير أثناء التجميع. ال مستوى منخفض من API مرتبطة بخوارزميات معينة أعلن رسميا عفا عليها الزمن.

يتوفر الدعم الرسمي في OpenSSL 3.0.0 الآن فقط لواجهات برمجة تطبيقات EVP عالية المستوى ، المستمدة من أنواع معينة من الخوارزميات (تتضمن واجهة برمجة التطبيقات هذه ، على سبيل المثال ، وظائف EVP_EncryptInit_ex و EVP_EncryptUpdate و EVP_EncryptFinal). ستتم إزالة واجهات برمجة التطبيقات القديمة في أحد الإصدارات الرئيسية التالية. تم نقل تطبيقات الخوارزمية القديمة ، مثل MD2 و DES ، المتوفرة من خلال EVP API ، إلى وحدة نمطية "قديمة" منفصلة ، والتي يتم تعطيلها افتراضيًا.

أخيرا إذا كنت مهتمًا بمعرفة المزيد عنها ، يمكنك التحقق من التفاصيل في الرابط التالي.


اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.