.\" -*- 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 "RSA_GENERATE_KEY 3ssl" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH RSA_GENERATE_KEY 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 الاسم EVP_RSA_gen, RSA_generate_key_ex, RSA_generate_key, RSA_generate_multi_prime_key \- توليد زوج مفاتيح RSA .SH موجز .IX Header موجز .Vb 1 \& #include \& \& EVP_PKEY *EVP_RSA_gen(unsigned int bits); .Ve .PP الدوال التالية أصبحت مهجورة منذ OpenSSL 3.0، ويمكن إخفاؤها تماماً عن طريق تعريف \fBOPENSSL_API_COMPAT\fP بقيمة إصدار مناسبة، انظر \fBopenssl_user_macros\fP\|(7): .PP .Vb 2 \& int RSA_generate_key_ex(RSA *rsa, int bits, BIGNUM *e, BN_GENCB *cb); \& int RSA_generate_multi_prime_key(RSA *rsa, int bits, int primes, BIGNUM *e, BN_GENCB *cb); .Ve .PP الدالة التالية أُهملت منذ OpenSSL 0.9.8، ويمكن إخفاؤها كليًا بتعريف \fBOPENSSL_API_COMPAT\fP بقيمة إصدار مناسبة، انظر \fBopenssl_user_macros\fP\|(7): .PP .Vb 2 \& RSA *RSA_generate_key(int bits, unsigned long e, \& void (*callback)(int, int, void *), void *cb_arg); .Ve .SH الوصف .IX Header الوصف \&\fBEVP_RSA_gen()\fP يولد زوج مفاتيح RSA جديد بحجم معامل \fIbits\fP. .PP جميع الدوال الموصوفة أدناه أُهملت. يجب على التطبيقات استخدام \fBEVP_RSA_gen()\fP، أو \fBEVP_PKEY_Q_keygen\fP\|(3)، أو \&\fBEVP_PKEY_keygen_init\fP\|(3) و \fBEVP_PKEY_keygen\fP\|(3) بدلاً منها. .PP \&\fBRSA_generate_key_ex()\fP يولد زوج مفاتيح RSA بأوليين اثنين ويخزنه في بنية \&\fBRSA\fP المقدمة في \fIrsa\fP. .PP \&\fBRSA_generate_multi_prime_key()\fP يولد زوج مفاتيح RSA متعدد الأوليات ويخزنه في بنية \fBRSA\fP المقدمة في \fIrsa\fP. يُعطى عدد الأوليات بواسطة معامل \fIprimes\fP. إذا فشلت البذر الآلي أو إعادة البذر لمولد الأعداد العشوائية الزائفة الآمنة CSPRNG في OpenSSL بسبب ظروف خارجية (انظر \fBRAND\fP\|(7))، ستفشل العملية. .PP سيكون حجم المعامل بطول \fIbits\fP، وعدد الأوليات المكونة للمعامل سيكون \fIprimes\fP، والأس العام سيكون \fIe\fP. أحجام المفاتيح ذات \fInum\fP < 1024 يجب اعتبارها غير آمنة. الأس هو عدد فردي، عادةً 3 أو 17 أو 65537. .PP للحفاظ على مستوى أمان كافٍ، يعتمد الحد الأقصى المسموح به من \&\fIprimes\fP على طول المعامل بالبت: .PP .Vb 3 \& <1024 | >=1024 | >=4096 | >=8192 \& \-\-\-\-\-\-+\-\-\-\-\-\-\-\-+\-\-\-\-\-\-\-\-+\-\-\-\-\-\-\- \& 2 | 3 | 4 | 5 .Ve .PP يمكن استخدام دالة استدعاء لتقديم تغذية راجعة حول تقدم توليد المفتاح. إذا كان \fIcb\fP ليس NULL، ستُستدعى كما يلي باستخدام دالة \fBBN_GENCB_call()\fP الموصوفة في صفحة \fBBN_generate_prime\fP\|(3). .PP \&\fBRSA_generate_key()\fP مشابهة لـ \fBRSA_generate_key_ex()\fP لكنها تتوقع دالة استدعاء بالنمط القديم؛ انظر \&\fBBN_generate_prime\fP\|(3) للحصول على معلومات حول الاستدعاء بالنمط القديم. .IP \(bu 2 أثناء توليد عدد أولي عشوائي، تُستدعى كما هو موصوف في \fBBN_generate_prime\fP\|(3). .IP \(bu 2 عند رفض العدد الأولي العشوائي المُولد رقم n لعدم ملاءمته للمفتاح، تُستدعى \fIBN_GENCB_call(cb, 2, n)\fP. .IP \(bu 2 عند إيجاد عدد أولي عشوائي p مع p\-1 أولي نسبيًا لـ \fIe\fP، تُستدعى كـ \fIBN_GENCB_call(cb, 3, 0)\fP. .PP ثم تُكرر العملية للعدد الأولي q والأوليات الأخرى (إن وجدت) مع \fIBN_GENCB_call(cb, 3, i)\fP حيث \fIi\fP يشير إلى العدد الأولي رقم i. .SH "القيم المُرجعة" .IX Header "القيم المُرجعة" \&\fBEVP_RSA_gen()\fP تُرجع \fIEVP_PKEY\fP أو NULL عند الفشل. .PP \&\fBRSA_generate_multi_prime_key()\fP تُرجع 1 عند النجاح أو 0 عند الخطأ. \&\fBRSA_generate_key_ex()\fP تُرجع 1 عند النجاح أو 0 عند الخطأ. يمكن الحصول على رموز الخطأ بواسطة \fBERR_get_error\fP\|(3). .PP \&\fBRSA_generate_key()\fP تُرجع مؤشرًا إلى بنية RSA أو NULL إذا فشل توليد المفتاح. .SH العلل .IX Header العلل \&\fIBN_GENCB_call(cb, 2, x)\fP يُستخدم بمعنيين مختلفين. .SH "انظر أيضًا" .IX Header "انظر أيضًا" \&\fBEVP_PKEY_Q_keygen\fP\|(3) \&\fBBN_generate_prime\fP\|(3), \fBERR_get_error\fP\|(3), \&\fBRAND_bytes\fP\|(3), \fBRAND\fP\|(7) .SH التاريخ .IX Header التاريخ \&\fBEVP_RSA_gen()\fP أُضيفت في OpenSSL 3.0. جميع الدوال الأخرى الموصوفة هنا أُهملت في OpenSSL 3.0. للاستبدال، انظر \fBEVP_PKEY\-RSA\fP\|(7). .SH "حقوق النسخ" .IX Header "حقوق النسخ" حقوق النشر 2000\-2021 لمؤلفي مشروع 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 .