.\" -*- 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 "PKCS7_ENCRYPT 3ssl" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH PKCS7_ENCRYPT 3ssl "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 الاسم PKCS7_encrypt_ex, PKCS7_encrypt \&\- إنشاء بنية PKCS#7 envelopedData .SH موجز .IX Header موجز .Vb 1 \& #include \& \& PKCS7 *PKCS7_encrypt_ex(STACK_OF(X509) *certs, BIO *in, \& const EVP_CIPHER *cipher, int flags, \& OSSL_LIB_CTX *libctx, const char *propq); \& PKCS7 *PKCS7_encrypt(STACK_OF(X509) *certs, BIO *in, const EVP_CIPHER *cipher, \& int flags); .Ve .SH الوصف .IX Header الوصف \&\fBPKCS7_encrypt_ex()\fP تُنشئ وتُعيد بنية PKCS#7 envelopedData. \&\fIcerts\fP هي قائمة بشهادات المستلمين. \fIin\fP هو المحتوى المراد تعميه. \fIcipher\fP هو المُعمِّي المتماثل المراد استخدامه. \fIflags\fP هي مجموعة اختيارية من الأعلام. يُستخدم سياق المكتبة \fIlibctx\fP واستعلام الخاصية \fIpropq\fP عند استرداد الخوارزميات من المزوّدين. .PP تُدعم مفاتيح RSA فقط في PKCS#7 وenvelopedData، لذا يجب أن تحتوي جميع شهادات المستلمين المُقدَّمة لهذه الدالة على مفاتيح عامة RSA، على الرغم من أنها لا تحتاج إلى التوقيع باستخدام خوارزمية RSA. .PP \&\fBEVP_des_ede3_cbc()\fP (DES الثلاثي) هو الخوارزمية المختارة لاستخدام S/MIME لأن معظم العملاء سيدعمونها. .PP قد تدعم بعض العملاء القدامى من "درجة التصدير" فقط التعمية الضعيفة باستخدام RC2 بطول 40 أو 64 بت. يمكن استخدام هذه بتمرير \fBEVP_rc2_40_cbc()\fP و\fBEVP_rc2_64_cbc()\fP على التوالي. .PP يجب أن تدعم الخوارزمية المُمرَّرة في المعامل \fBcipher\fP ترميز ASN1 لمعاملاتها. .PP تُنفّذ العديد من المتصفحات خيار "التوقيع والتعمية" وهو ببساطة envelopedData من S/MIME يحتوي على رسالة موقّعة من S/MIME. يمكن إنتاج هذا بسهولة بتخزين رسالة S/MIME الموقّعة في BIO ذاكرة وتمريرها إلى \&\fBPKCS7_encrypt()\fP. .PP يمكن تمرير العلامات التالية في معامل \fBflags\fP. .PP إذا وُضع العلم \fBPKCS7_TEXT\fP، تُسبَق ترويسات MIME من النوع \fBtext/plain\fP إلى البيانات. .PP عادةً، يُترجَم المحتوى المُقدَّم إلى تنسيق MIME القانوني (كما هو مطلوب في مواصفات S/MIME)؛ إذا وُضع \fBPKCS7_BINARY\fP، لا تحدث ترجمة. يجب استخدام هذا الخيار إذا كانت البيانات المُقدَّمة بتنسيق ثنائي، وإلا ستُفسدها الترجمة. إذا وُضع \fBPKCS7_BINARY\fP، يُتجاهَل \&\fBPKCS7_TEXT\fP. .PP إذا وُضع العلم \fBPKCS7_STREAM\fP، يُخرَج بنية \fBPKCS7\fP جزئية مناسبة للإدخال/الإخراج المتدفق: لا تُقرأ أي بيانات من BIO \fBin\fP. .PP إذا ضُبِط علم \fBPKCS7_STREAM\fP، فإن هيكل \fBPKCS7\fP المرتجع \fBليس\fP مكتملاً، وإخراج محتوياته عبر دالة لا تنهي هيكل \fBPKCS7\fP بشكل صحيح سيؤدي إلى نتائج غير متوقعة. .PP تقوم عدة دوال بما في ذلك \fBSMIME_write_PKCS7()\fP و \fBi2d_PKCS7_bio_stream()\fP و \&\fBPEM_write_bio_PKCS7_stream()\fP بإنهاء الهيكلية. بدلاً من ذلك، يمكن إجراء الإنهاء بالحصول على تدفق ASN1 \fBBIO\fP مباشرة باستخدام \&\fBBIO_new_PKCS7()\fP. .PP \&\fBPKCS7_encrypt()\fP مشابهة لـ \fBPKCS7_encrypt_ex()\fP ولكنها تستخدم قيماً مبدئية من NULL لسياق المكتبة \fIlibctx\fP واستعلام الخاصية \fIpropq\fP. .SH "القيم المُرجعة" .IX Header "القيم المُرجعة" \&\fBPKCS7_encrypt_ex()\fP و\fBPKCS7_encrypt()\fP تُعيدان إما بنية PKCS7 أو NULL إذا حدث خطأ. يمكن الحصول على الخطأ من \fBERR_get_error\fP\|(3). .SH "انظر أيضًا" .IX Header "انظر أيضًا" \&\fBERR_get_error\fP\|(3), \fBPKCS7_decrypt\fP\|(3) .SH التاريخ .IX Header التاريخ أُضيفت الدالة \fBPKCS7_encrypt_ex()\fP في OpenSSL 3.0. .PP أُضيف علم \fBPKCS7_STREAM\fP في OpenSSL 1.0.0. .SH "حقوق النسخ" .IX Header "حقوق النسخ" حقوق النشر 2002\-2020 لمؤلفي مشروع 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 .