
openssl openssl-4.0.3
مكتبة TLS وتشفير للأغراض العامة
مرحبًا بك في مشروع OpenSSL
[![github actions ci badge]][github actions ci]
OpenSSL هي مجموعة أدوات مفتوحة المصدر قوية، بمستوى تجاري، وكاملة الميزات لبروتوكولات أمن طبقة النقل (TLS، المعروف سابقًا بـ SSL)، وبروتوكول Datagram TLS (DTLS)، وبروتوكول QUIC.
تعتمد تطبيقات البروتوكولات على مكتبة تشفير عامة الغرض كاملة القوة، والتي يمكن استخدامها أيضًا بشكل مستقل. كما تتضمن وحدة تشفير معتمدة ومتوافقة مع معايير FIPS.
ينحدر OpenSSL من مكتبة SSLeay التي طورها Eric A. Young و Tim J. Hudson.
الصفحة الرئيسية الرسمية لمشروع OpenSSL هي www.openssl.org.
جدول المحتويات
نظرة عامة
تتضمن مجموعة أدوات OpenSSL:
-
libssl تطبيق لجميع إصدارات بروتوكول TLS حتى TLSv1.3 ([RFC 8446])، وإصدارات بروتوكول DTLS حتى DTLSv1.3 ([RFC 9147])، وبروتوكول QUIC الإصدار 1 ([RFC 9000]).
-
libcrypto مكتبة تشفير عامة الغرض كاملة القوة. تشكل الأساس لتطبيق TLS، ولكن يمكن استخدامها أيضًا بشكل مستقل.
-
openssl أداة سطر أوامر OpenSSL، سكين الجيش السويسري للمهام التشفيرية، والاختبار والتحليل. يمكن استخدامها من أجل
- إنشاء معاملات المفاتيح
- إنشاء شهادات X.509 وطلبات توقيع الشهادات (CSRs) وقوائم إبطال الشهادات (CRLs)
- حساب ملخصات الرسائل
- التشفير وفك التشفير
- اختبارات SSL/TLS/DTLS واختبارات العميل والخادم
- اختبارات عميل QUIC
- التعامل مع البريد الموقّع أو المشفّر بـ S/MIME
- والمزيد...
التنزيل
للاستخدام الإنتاجي
يمكن تنزيل حزم الشيفرة المصدرية للإصدارات الرسمية من openssl-library.org/source/. لا يوزع مشروع OpenSSL مجموعة الأدوات بصيغة ثنائية.
ومع ذلك، تتوفر لتنوع كبير من أنظمة التشغيل إصدارات مجمّعة مسبقًا من مجموعة أدوات OpenSSL. وعلى وجه الخصوص، على Linux وأنظمة Unix الأخرى، يُنصح عادةً بالربط مع المكتبات المشتركة المجمّعة مسبقًا التي يوفرها الموزّع أو البائع.
كما نحتفظ بقائمة بأطراف ثالثة تنتج ملفات OpenSSL الثنائية لأنظمة تشغيل متنوعة (بما في ذلك Windows) على صفحة [Binaries] في الويكي الخاص بنا.
للاختبار والتطوير
على الرغم من أن الاختبار والتطوير يمكن نظريًا أن يتمّا أيضًا باستخدام حزم الشيفرة المصدرية، فإن امتلاك نسخة محلية من مستودع git مع كامل تاريخ المشروع يمنحك رؤية أعمق بكثير لقاعدة الشيفرة.
مستودع OpenSSL Git الرئيسي خاص. توجد نسخة مرآة عامة على GitHub في github.com/openssl/openssl، والتي يتم تحديثها تلقائيًا من المستودع السابق عند كل إيداع.
يمكن الحصول على نسخة محلية من مستودع Git عن طريق استنساخها من مرآة GitHub باستخدام
git clone https://github.com/openssl/openssl.git
إذا كنت تنوي المساهمة في OpenSSL، سواء لإصلاح الأخطاء أو للمساهمة بميزات جديدة، فأنت بحاجة إلى عمل fork لمرآة GitHub واستنساخ نسختك العامة بدلاً من ذلك.
git clone https://github.com/yourname/openssl.git
هذا ضروري لأن جميع تطوير OpenSSL في الوقت الحاضر يتم عبر طلبات السحب (pull requests) على GitHub. لمزيد من التفاصيل، راجع المساهمة.
البناء والتثبيت
بعد الحصول على الشيفرة المصدرية، ألقِ نظرة على ملف INSTALL للحصول على تعليمات مفصلة حول بناء وتثبيت OpenSSL. بالنسبة لبعض المنصات، يتم تعديل تعليمات التثبيت بوثيقة خاصة بالمنصة.
- ملاحظات لمنصات UNIX-like
- ملاحظات لمنصات Android
- ملاحظات لمنصات Windows
- ملاحظات لمنصة DOS مع DJGPP
- ملاحظات لمنصة OpenVMS
- ملاحظات حول Perl
- ملاحظات حول Valgrind
يمكن العثور على ملاحظات محددة حول الترقية إلى OpenSSL 3.x من الإصدارات السابقة في صفحة الدليل ossl-guide-migration(7ossl).
التوثيق
ملفات README
توجد بعض ملفات README.md في المستوى الأعلى من توزيعة الشيفرة المصدرية تحتوي على معلومات إضافية حول مواضيع محددة.
- معلومات حول تطبيق بروتوكول OpenSSL QUIC
- معلومات حول بنية OpenSSL Provider
- معلومات حول استخدام وحدة OpenSSL FIPS المعتمدة
دليل OpenSSL
توجد بعض الصفحات التعليمية والتمهيدية حول بعض مواضيع OpenSSL المهمة ضمن [دليل OpenSSL].
صفحات الدليل
صفحات الدليل للفرع الرئيسي وجميع الإصدارات المستقرة الحالية متاحة عبر الإنترنت.
العروض التوضيحية
توجد العديد من العروض التوضيحية للشيفرة المصدرية لاستخدام قدرات OpenSSL المتنوعة في المجلد الفرعي demos.
الويكي
يوجد GitHub Wiki وهو غير نشط كثيرًا حاليًا.
الترخيص
OpenSSL مرخّص بموجب Apache License 2.0، مما يعني أن لك الحرية في الحصول عليه واستخدامه لأغراض تجارية وغير تجارية طالما أنك تستوفي شروطه.
راجع ملف LICENSE.txt لمزيد من التفاصيل.
الدعم
توجد طرق متنوعة للتواصل. تعتمد القناة الصحيحة على متطلباتك. راجع ملف SUPPORT لمزيد من التفاصيل.
المساهمة
إذا كنت مهتمًا وراغبًا في المساهمة في مشروع OpenSSL، فيرجى إلقاء نظرة على ملف CONTRIBUTING.
الجوانب القانونية
تفرض عدد من الدول قيودًا على استخدام أو تصدير التشفير. إذا كنت من المحتمل أن تخضع لمثل هذه القيود، فيجب عليك طلب مشورة قانونية قبل محاولة تطوير أو توزيع شيفرة تشفيرية.
حقوق النشر
حقوق النشر (c) 1998-2026 لمؤلفي مشروع OpenSSL
حقوق النشر (c) 1995-1998 Eric A. Young, Tim J. Hudson
جميع الحقوق محفوظة.