.\" -*- 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 "BN_BN2BIN 3ssl" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH BN_BN2BIN 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 الاسم BN_bn2binpad, BN_signed_bn2bin, BN_bn2bin, BN_bin2bn, BN_signed_bin2bn, BN_bn2lebinpad, BN_signed_bn2lebin, BN_lebin2bn, BN_signed_lebin2bn, BN_bn2nativepad, BN_signed_bn2native, BN_native2bn, BN_signed_native2bn, BN_bn2hex, BN_bn2dec, BN_hex2bn, BN_dec2bn, BN_print, BN_print_fp, BN_bn2mpi, BN_mpi2bn \- تحويلات التنسيق .SH موجز .IX Header موجز .Vb 1 \& #include \& \& int BN_bn2bin(const BIGNUM *a, unsigned char *to); \& int BN_bn2binpad(const BIGNUM *a, unsigned char *to, int tolen); \& int BN_signed_bn2bin(const BIGNUM *a, unsigned char *to, int tolen); \& BIGNUM *BN_bin2bn(const unsigned char *s, int len, BIGNUM *ret); \& BIGNUM *BN_signed_bin2bn(const unsigned char *s, int len, BIGNUM *ret); \& \& int BN_bn2lebinpad(const BIGNUM *a, unsigned char *to, int tolen); \& int BN_signed_bn2lebin(const BIGNUM *a, unsigned char *to, int tolen); \& BIGNUM *BN_lebin2bn(const unsigned char *s, int len, BIGNUM *ret); \& BIGNUM *BN_signed_lebin2bn(const unsigned char *s, int len, BIGNUM *ret); \& \& int BN_bn2nativepad(const BIGNUM *a, unsigned char *to, int tolen); \& int BN_signed_bn2native(const BIGNUM *a, unsigned char *to, int tolen); \& BIGNUM *BN_native2bn(const unsigned char *s, int len, BIGNUM *ret); \& BIGNUM *BN_signed_native2bn(const unsigned char *s, int len, BIGNUM *ret); \& \& char *BN_bn2hex(const BIGNUM *a); \& char *BN_bn2dec(const BIGNUM *a); \& int BN_hex2bn(BIGNUM **a, const char *str); \& int BN_dec2bn(BIGNUM **a, const char *str); \& \& int BN_print(BIO *fp, const BIGNUM *a); \& int BN_print_fp(FILE *fp, const BIGNUM *a); \& \& int BN_bn2mpi(const BIGNUM *a, unsigned char *to); \& BIGNUM *BN_mpi2bn(unsigned char *s, int len, BIGNUM *ret); .Ve .SH الوصف .IX Header الوصف \&\fBBN_bn2bin()\fP تحوِّل القيمة المطلقة لـ \fBa\fP إلى صيغة big\-endian وتخزِّنها في \fBto\fP. يجب أن يشير \fBto\fP إلى BN_num_bytes(\fBa\fP) بايت من الذاكرة. \fBa\fP و \fBto\fP \fBيجب ألا\fP يكونا NULL. .PP \&\fBBN_bn2binpad()\fP تحوِّل أيضًا القيمة المطلقة لـ \fBa\fP إلى صيغة big\-endian وتخزِّنها في \fBto\fP. يشير \fBtolen\fP إلى طول المخزن المؤقت للمخرجات \&\fBto\fP. يُحشى الناتج بالأصفار عند الضرورة. إذا كان \fBtolen\fP أقل من BN_num_bytes(\fBa\fP)، يُعاد خطأ. .PP \&\fBBN_signed_bn2bin()\fP تحوِّل قيمة \fBa\fP إلى صيغة المتمم الثنائي الموقّع big\-endian وتخزِّنها في \fBto\fP. يشير \fBtolen\fP إلى طول المخزن المؤقت للمخرجات \fBto\fP. يُوسَّع الناتج بالتوقيع (يُحشى بـ 0x00 للأعداد الموجبة أو بـ 0xff للأعداد السالبة) عند الضرورة. إذا كان \fBtolen\fP أصغر من الحجم المطلوب (والذي قد يكون \&\f(CW\*(C`)، يُعاد خطأ. .PP \&\fBBN_bin2bn()\fP تحوِّل العدد الصحيح الموجب بصيغة big\-endian بطول \&\fBlen\fP في \fBs\fP إلى \fBBIGNUM\fP وتضعه في \fBret\fP. إذا كان \fBret\fP NULL، يُنشأ \fBBIGNUM\fP جديد. \fBs\fP \fBيجب ألا\fP يكون NULL. .PP \&\fBBN_signed_bin2bn()\fP تحوِّل العدد الصحيح بصيغة المتمم الثنائي الموقّع big\-endian بطول \fBlen\fP في \fBs\fP إلى \fBBIGNUM\fP وتضعه في \fBret\fP. إذا كان \&\fBret\fP NULL، يُنشأ \fBBIGNUM\fP جديد. .PP \&\fBBN_bn2lebinpad()\fP و \fBBN_signed_bn2lebin()\fP و \fBBN_lebin2bn()\fP مطابقة لـ \&\fBBN_bn2binpad()\fP و \fBBN_signed_bn2bin()\fP و \fBBN_bin2bn()\fP باستثناء أن المخزن المؤقت بصيغة little\-endian. .PP \&\fBBN_bn2nativepad()\fP و \fBBN_signed_bn2native()\fP و \fBBN_native2bn()\fP مطابقة لـ \fBBN_bn2binpad()\fP و \fBBN_signed_bn2bin()\fP و \fBBN_bin2bn()\fP باستثناء أن المخزن المؤقت بصيغة أصلية، أي البايت الأكثر أهمية أولاً على منصات big\-endian، والبايت الأقل أهمية أولاً على منصات little\-endian. .PP \&\fBBN_bn2hex()\fP و \fBBN_bn2dec()\fP تُعيدان سلاسل قابلة للطباعة تحتوي على الترميز السداسي عشري والعشري لـ \fBa\fP على التوالي. للأعداد السالبة، تُسبق السلسلة بـ \*(Aq\-\*(Aq. يجب تحرير السلسلة لاحقًا باستخدام \fBOPENSSL_free()\fP. .PP \&\fBBN_hex2bn()\fP تأخذ أكبر عدد ممكن من الأحرف من السلسلة \fBstr\fP، بما في ذلك الحرف البادئ \*(Aq\-\*(Aq الذي يعني سالبًا، لتشكيل تمثيل عدد سداسي عشري صالح وتحوّلها إلى \fBBIGNUM\fP وتخزّنه في **\fBa\fP. إذا كان *\fBa\fP NULL، يُنشأ \fBBIGNUM\fP جديد. إذا كان \&\fBa\fP NULL، تحسب فقط طول التمثيل الصالح. يُحوَّل "صفر سالب" إلى صفر. \&\fBBN_dec2bn()\fP هي نفسها باستخدام النظام العشري. .PP \&\fBBN_print()\fP و \fBBN_print_fp()\fP تكتبان الترميز السداسي عشري لـ \fBa\fP، مع \*(Aq\-\*(Aq بادئ للأعداد السالبة، إلى \fBBIO\fP أو \fBFILE\fP \&\fBfp\fP. .PP \&\fBBN_bn2mpi()\fP و \fBBN_mpi2bn()\fP تحوِّلان \fBBIGNUM\fP من وإلى صيغة تتكون من طول الرقم بالبايتات الممثلة كرقم big\-endian بطول 4 بايت، والرقم نفسه بصيغة big\-endian، حيث تشير البتة الأكثر أهمية إلى رقم سالب (يُسبق تمثيل الأرقام مع تعيين MSB ببايت فارغ). .PP \&\fBBN_bn2mpi()\fP تخزِّن تمثيل \fBa\fP في \fBto\fP، حيث يجب أن يكون \fBto\fP كبيرًا بما يكفي لاستيعاب الناتج. يمكن تحديد الحجم باستدعاء BN_bn2mpi(\fBa\fP, NULL). .PP \&\fBBN_mpi2bn()\fP تحوِّل التمثيل بطول \fBlen\fP بايت في \fBs\fP إلى \fBBIGNUM\fP وتخزّنه في \fBret\fP، أو في \fBBIGNUM\fP مخصص حديثًا إذا كان \fBret\fP NULL. .SH "القيم المُرجعة" .IX Header "القيم المُرجعة" \&\fBBN_bn2bin()\fP تُعيد طول الرقم big\-endian الموضوع في \fBto\fP. \&\fBBN_bin2bn()\fP تُعيد \fBBIGNUM\fP، NULL عند الخطأ. .PP تُرجع الدوال \&\fBBN_bn2binpad()\fP و \fBBN_signed_bn2bin()\fP و \fBBN_bn2lebinpad()\fP و \fBBN_signed_bn2lebin()\fP و \&\fBBN_bn2nativepad()\fP و \fBBN_bn2native()\fP عدد البايتات المكتوبة أو \-1 إذا كان المخزن المؤقت المقدم صغيرًا جدًا. .PP تُرجع الدالتان \&\fBBN_bn2hex()\fP و \fBBN_bn2dec()\fP سلسلة منتهية بـ NUL، أو NULL عند الخطأ. تُرجع الدالتان \fBBN_hex2bn()\fP و \fBBN_dec2bn()\fP عدد الأحرف المستخدمة في التحليل، أو 0 عند الخطأ، وفي هذه الحالة لن يُنشأ أي \fBBIGNUM\fP جديد. .PP تُرجع الدالتان \&\fBBN_print_fp()\fP و \fBBN_print()\fP 1 عند النجاح، و0 عند أخطاء الكتابة. .PP تُرجع الدالة \&\fBBN_bn2mpi()\fP طول التمثيل. تُرجع الدالة \fBBN_mpi2bn()\fP قيمة \fBBIGNUM\fP، وNULL عند الخطأ. .PP يمكن الحصول على رموز الخطأ بواسطة \fBERR_get_error\fP\|(3). .SH "انظر أيضًا" .IX Header "انظر أيضًا" \&\fBERR_get_error\fP\|(3)، \fBBN_zero\fP\|(3)، \&\fBASN1_INTEGER_to_BN\fP\|(3)، \&\fBBN_num_bytes\fP\|(3) .SH التاريخ .IX Header التاريخ أُضيفت الدوال \fBBN_signed_bin2bn()\fP و \fBBN_signed_bn2bin()\fP و \fBBN_signed_lebin2bn()\fP و \&\fBBN_signed_bn2lebin()\fP و \fBBN_signed_native2bn()\fP و \fBBN_signed_bn2native()\fP في OpenSSL 3.2. .SH "حقوق النسخ" .IX Header "حقوق النسخ" حقوق النشر 2000\-2024 لمؤلفي مشروع 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 .