.\" -*- coding: UTF-8 -*- .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Pod::Man v6.0.2 (Pod::Simple 3.45) .\" .\" Standard preamble: .\" ======================================================================== .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .ie n \{\ . ds C` "" . ds C' "" 'br\} .el\{\ . ds C` . ds C' 'br\} .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .de IX .. .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .if n .ds AD l .\" .\" Required to disable full justification in groff 1.23.0. .\" ======================================================================== .\" .IX Title "OSSL\-GUIDE\-LIBSSL\-INTRODUCTION 7ssl" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH OSSL\-GUIDE\-LIBSSL\-INTRODUCTION 7ssl "7 أبريل 2026" 3.6.2 OpenSSL .if n .ad l .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .nh .SH الاسم ossl\-guide\-libssl\-introduction, ssl \&\- دليل OpenSSL: مقدمة إلى libssl .SH مقدمة .IX Header مقدمة مكتبة OpenSSL \f(CW\*(C`libssl\*(C'\fP تقدم تطبيقات لعدة بروتوكولات اتصالات شبكية آمنة. تحديدًا، تقدم SSL/TLS (SSLv3، TLSv1، TLSv1.1، TLSv1.2 و TLSv1.3)، DTLS (DTLSv1 و DTLSv1.2) و QUIC (جانب العميل فقط). تعتمد المكتبة على \f(CW\*(C`libcrypto\*(C'\fP لعملياتها التشفيرية الأساسية (انظر \fBossl\-guide\-libcrypto\-introduction\fP\|(7)). .PP مجموعة واجهات برمجة التطبيقات (APIs) التي توفرها \f(CW\*(C`libssl\*(C'\fP مشتركة عبر جميع بروتوكولات الشبكة المختلفة هذه، لذا يمكن لمطور مألوف بكتابة تطبيقات باستخدام أحد هذه البروتوكولات الانتقال إلى استخدام آخر بسهولة نسبية. .PP تطبيق مكتوب لاستخدام \f(CW\*(C`libssl\*(C'\fP سيتضمن ملف الرأس \fI\fP وسيستخدم عادةً هيكلين رئيسيين للبيانات، وهما \fBSSL\fP و \&\fBSSL_CTX\fP. .PP يُستخدم كائن \fBSSL\fP لتمثيل اتصال بنظير بعيد. بمجرد إنشاء اتصال بنظير بعيد، يمكن تبادل البيانات مع ذلك النظير. .PP عند استخدام DTLS، أي بيانات يتم تبادلها تستخدم دلالات "رزمة بيانات" (datagram)، أي يمكن تسليم حزم البيانات بأي ترتيب، وليس مضمونًا وصولها على الإطلاق. في هذه الحالة، يُستخدم كائن \fBSSL\fP المستخدم للاتصال أيضًا لتبادل البيانات مع النظير. .PP يدعم كل من TLS و QUIC مفهوم "تدفق" (stream) من البيانات. البيانات المرسلة عبر تدفق مضمونة التسليم بالترتيب دون أي فقدان للبيانات. يمكن أن يكون التدفق أحادي أو ثنائي الاتجاه. .PP يدعم SSL/TLS تدفق بيانات واحد فقط لكل اتصال وهو دائمًا ثنائي الاتجاه. في هذه الحالة، يمثل كائن \fBSSL\fP المستخدم للاتصال ذلك التدفق أيضًا. انظر \fBossl\-guide\-tls\-introduction\fP\|(7) لمزيد من المعلومات. .PP يمكن لبروتوكول QUIC دعم تدفقات متعددة لكل اتصال ويمكن أن تكون أحادية أو ثنائية الاتجاه. في هذه الحالة، يمكن لكائن \fBSSL\fP تمثيل الاتصال الأساسي، أو تدفق، أو كليهما. حيث تُستخدم تدفقات متعددة، يُستخدم كائن \fBSSL\fP منفصل لكل منها. انظر \&\fBossl\-guide\-quic\-introduction\fP\|(7) لمزيد من المعلومات. .PP يُستخدم كائن \fBSSL_CTX\fP لإنشاء كائن \fBSSL\fP للاتصال الأساسي. يمكن استخدام كائن \fBSSL_CTX\fP واحد لإنشاء اتصالات عديدة (كل منها ممثل بكائن \fBSSL\fP منفصل). توجد العديد من دوال API في libssl بشكلين: واحد يأخذ \fBSSL_CTX\fP وآخر يأخذ \fBSSL\fP. عادةً، الإعدادات التي تطبقها على \fBSSL_CTX\fP ستورث بعد ذلك بواسطة أي كائن \fBSSL\fP تنشئه منه. بدلاً من ذلك، يمكنك تطبيق إعدادات مباشرة على كائن \fBSSL\fP دون التأثير على كائنات \fBSSL\fP الأخرى. لاحظ أنه لا ينبغي عادةً إجراء تغييرات على \fBSSL_CTX\fP بعد إنشاء أول كائن \fBSSL\fP منه. .SH "هياكل البيانات" .IX Header "هياكل البيانات" بالإضافة إلى \fBSSL_CTX\fP و \fBSSL\fP، هناك عدد من هياكل البيانات الأخرى التي قد يحتاج التطبيق لاستخدامها. تم تلخيصها أدناه. .IP "\fBSSL_METHOD\fP (طريقة SSL)" 4 .IX Item "SSL_METHOD (طريقة SSL)" يُستخدم هذا الهيكل للإشارة إلى نوع الاتصال الذي تريد إنشاءه، مثلاً سواء كان لتمثيل العميل أو الخادم، وسواء كان لاستخدام SSL/TLS أو DTLS أو QUIC. يُمرر كمعامل عند إنشاء \fBSSL_CTX\fP. .IP "\fBSSL_SESSION\fP (جلسة SSL)" 4 .IX Item "SSL_SESSION (جلسة SSL)" بعد إنشاء اتصال مع نظير، يمكن إعادة استخدام المواد التشفيرية المتفق عليها لإنشاء اتصالات مستقبلية مع نفس النظير بسرعة أكبر. مجموعة البيانات المستخدمة لمحاولة إنشاء اتصال مستقبلي تُجمع معًا في كائن \fBSSL_SESSION\fP. قد يولد اتصال ناجح واحد مع نظير صفرًا أو أكثر من كائنات \fBSSL_SESSION\fP هذه لاستخدامها في محاولات الاتصال المستقبلية. .IP "\fBSSL_CIPHER\fP (شيفرة SSL)" 4 .IX Item "SSL_CIPHER (شيفرة SSL)" أثناء إنشاء الاتصال، يتفق العميل والخادم على خوارزميات التشفير التي سيستخدمانها للتشفير والأغراض الأخرى. تُعرف مجموعة واحدة من خوارزميات التشفير التي ستُستخدم معًا باسم حزمة التشفير. يتم تمثيل هذه المجموعة بواسطة كائن \fBSSL_CIPHER\fP. .Sp يتم تكوين مجموعة حزم التشفير المتاحة التي يمكن استخدامها في \&\fBSSL_CTX\fP أو \fBSSL\fP. .SH "قراءة إضافية" .IX Header "قراءة إضافية" انظر \fBossl\-guide\-tls\-introduction\fP\|(7) للحصول على مقدمة حول بروتوكول SSL/TLS و \fBossl\-guide\-quic\-introduction\fP\|(7) للحصول على مقدمة حول QUIC. .PP انظر \fBossl\-guide\-libcrypto\-introduction\fP\|(7) للحصول على مقدمة حول \f(CW\*(C`libcrypto\*(C'\fP. .SH "انظر أيضًا" .IX Header "انظر أيضًا" \&\fBossl\-guide\-libcrypto\-introduction\fP\|(7), \fBossl\-guide\-tls\-introduction\fP\|(7), \&\fBossl\-guide\-quic\-introduction\fP\|(7) .SH "حقوق النسخ" .IX Header "حقوق النسخ" حقوق النشر 2000\-2025 لمؤلفي مشروع OpenSSL. جميع الحقوق محفوظة. .PP مرخص بموجب رخصة Apache 2.0 (المشار إليها فيما يلي بـ ”الرخصة“). لا يجوز لك استخدام هذا الملف إلا وفقًا لشروط الرخصة. يمكنك الحصول على نسخة منها في الملف LICENSE الموجود في حزمة التوزيع المصدرية أو على الرابط . .PP .SH ترجمة تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي . .PP هذه الترجمة هي وثيقة مجانية؛ راجع .UR https://www.gnu.org/licenses/gpl-3.0.html رخصة جنو العامة الإصدار 3 .UE أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات. .PP إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: .MT kde-l10n-ar@kde.org .ME .