OpenSSL 3.0.0 دارای تعدادی تغییر و پیشرفت عمده است

پس از سه سال توسعه و 19 نسخه آزمایشی انتشار نسخه جدید OpenSSL 3.0.0 اخیراً اعلام شد که دارای بیش از 7500 تغییر توسط 350 توسعه دهنده کمک می کند و همچنین نشان دهنده تغییر قابل توجهی در شماره نسخه است و به دلیل انتقال به شماره گذاری سنتی است.

از این پس ، رقم اول (Major) در شماره نسخه فقط در صورت نقض سازگاری در سطح API / ABI و دومی (Minor) در صورت افزایش عملکرد بدون تغییر 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 غیرفعال است و باید گزینه enable-fips فعال باشد.

در libcrypto مفهوم ارائه دهندگان خدمات متصل پیاده سازی شد که جایگزین مفهوم موتورها شد (ENGINE API منسوخ شده بود). با کمک فروشندگان ، می توانید پیاده سازی الگوریتم خود را برای عملیات مانند رمزگذاری ، رمزگشایی ، تولید کلید ، محاسبه MAC ، ایجاد و تأیید امضای دیجیتال اضافه کنید.

همچنین مشخص شده است که پشتیبانی اضافه شده برای CMPکه می توان از آن برای درخواست گواهی از سرور CA ، تمدید گواهی ها و لغو گواهینامه ها استفاده کرد. کار با CMP توسط ابزار جدید openssl-cmp انجام می شود ، که همچنین پشتیبانی از قالب CRMF و انتقال درخواست ها از طریق HTTP / HTTPS را پیاده سازی می کند.

همچنین یک رابط برنامه نویسی جدید برای تولید کلید ارائه شده است: EVP_KDF (کلید مشتق تابع API) ، که ادغام پیاده سازی های جدید KDF و PRF را ساده می کند. API قدیمی EVP_PKEY ، که از طریق آن الگوریتم های رمزنگاری ، TLS1 PRF و HKDF در دسترس بود ، به عنوان یک لایه میانی که در بالای API های EVP_KDF و EVP_MAC پیاده سازی شده است ، دوباره طراحی شده است.

و در اجرای پروتکل TLS توانایی استفاده از سرویس گیرنده و سرور TLS ساخته شده در هسته لینوکس را ارائه می دهد برای سرعت بخشیدن به عملیات برای فعال کردن پیاده سازی TLS ارائه شده توسط هسته لینوکس ، گزینه "SSL_OP_ENABLE_KTLS" یا تنظیم "enable-ktls" باید فعال باشد.

از طرف دیگر ذکر شده است که بخش قابل توجهی از API به طبقه منسوخ منتقل شده است- استفاده از تماس های منسوخ شده در کد پروژه باعث ایجاد هشدار در هنگام تدوین می شود. این سطح پایین API به الگوریتم های خاصی مرتبط است رسماً منسوخ اعلام شده اند.

پشتیبانی رسمی در OpenSSL 3.0.0 اکنون فقط برای API های سطح بالای EVP ارائه شده است که از انواع خاصی از الگوریتم ها گرفته شده است (این API شامل ، به عنوان مثال ، توابع EVP_EncryptInit_ex ، EVP_EncryptUpdate و EVP_EncryptFinal). API های منسوخ در یکی از نسخه های بعدی بعدی حذف خواهند شد. پیاده سازی الگوریتم های قدیمی ، مانند MD2 و DES ، که از طریق EVP API موجود است ، به یک ماژول جداگانه "قدیمی" منتقل شده است که به طور پیش فرض غیرفعال است.

سرانجام اگر شما علاقه مند به دانستن بیشتر در مورد آن هستید ، شما می توانید جزئیات را بررسی کنید در لینک زیر.


محتوای مقاله به اصول ما پیوست اخلاق تحریریه. برای گزارش یک خطا کلیک کنید اینجا.

اولین کسی باشید که نظر

نظر خود را بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخشهای موردنیاز علامتگذاری شدهاند با *

*

*

  1. مسئول داده ها: میگل آنخل گاتون
  2. هدف از داده ها: کنترل هرزنامه ، مدیریت نظرات.
  3. مشروعیت: رضایت شما
  4. ارتباط داده ها: داده ها به اشخاص ثالث منتقل نمی شوند مگر با تعهد قانونی.
  5. ذخیره سازی داده ها: پایگاه داده به میزبانی شبکه های Occentus (EU)
  6. حقوق: در هر زمان می توانید اطلاعات خود را محدود ، بازیابی و حذف کنید.