BN_NUM_BYTES(3SSL)

الاسم
BN_num_bits, BN_num_bytes, BN_num_bits_word - الحصول على حجم BIGNUM

موجز
 #include <openssl/bn.h>

 int BN_num_bytes(const BIGNUM *a);

 int BN_num_bits(const BIGNUM *a);

 int BN_num_bits_word(BN_ULONG w);

الوصف
BN_num_bytes() تُرجع حجم BIGNUM بالبايت.

BN_num_bits_word() تُرجع عدد البتات المعنوية في كلمة. إذا أخذنا 0x00000432 كمثال، تُرجع 11، وليس 16، وليس 32. بشكل أساسي، باستثناء الصفر، تُرجع floor(log2(w))+1.

BN_num_bits() تُرجع عدد البتات المعنوية في BIGNUM، متبعة نفس مبدأ BN_num_bits_word().

BN_num_bytes() هي ماكرو.

القيم المُرجعة
الحجم.

ملاحظات
حاول البعض استخدام BN_num_bits() على أرقام فردية في مفاتيح RSA ومفاتيح DH ومفاتيح DSA، ووجدوا أنها لا تُنتج دائمًا عدد البتات المتوقع (شيء مثل 512، 1024، 2048، ...). هذا لأن توليد رقم بعدد محدد من البتات لا يُعيّن دائمًا أعلى البتات، مما يجعل عدد البتات المعنوية أقل قليلاً. إذا أردت معرفة "حجم المفتاح" لمثل هذا المفتاح، إما استخدم دوال مثل RSA_size() و DH_size() و DSA_size()، أو استخدم BN_num_bytes() واضرب في 8 (على الرغم من عدم وجود ضمان حقيقي بأن ذلك سيطابق "حجم المفتاح"، فقط احتمالية أكبر بكثير).

انظر أيضًا
DH_size(3), DSA_size(3), RSA_size(3)

حقوق النسخ
حقوق النشر 2000-2017 لمؤلفي مشروع OpenSSL. جميع الحقوق محفوظة.

مرخص بموجب رخصة Apache 2.0 (المشار إليها فيما يلي بـ ”الرخصة“). لا يجوز لك استخدام هذا الملف إلا وفقًا لشروط الرخصة. يمكنك الحصول على نسخة منها في الملف LICENSE الموجود في حزمة التوزيع المصدرية أو على الرابط <https://www.openssl.org/source/license.html>.

ترجمة
تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>

هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 (https://www.gnu.org/licenses/gpl-3.0.html) أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.