Scroll to navigation

RAND_EGD(3SSL) OpenSSL RAND_EGD(3SSL)

الاسم

RAND_egd, RAND_egd_bytes, RAND_query_egd_bytes - استعلام برنامج تجميع الإنتروبيا الخفي

موجز

 #include <openssl/rand.h>
 int RAND_egd_bytes(const char *path, int num);
 int RAND_egd(const char *path);
 int RAND_query_egd_bytes(const char *path, unsigned char *buf, int num);

الوصف

على المنصات القديمة التي تفتقر إلى مصدر جيد للعشوائية مثل "/dev/urandom"، يمكن استعلام برنامج تجميع الإنتروبيا الخفي (EGD) عبر مقبس محلي للحصول على العشوائية وتغذية مولد الأعداد العشوائية في OpenSSL. يُعرَّف البروتوكول المستخدم بواسطة EGDs المتاحة على <http://egd.sourceforge.net/> أو <http://prngd.sourceforge.net>.

RAND_egd_bytes() تطلب num بايت من العشوائية من EGD عند المقبس المحدد path، وتُمرر البيانات المستلمة إلى RAND_add(). RAND_egd() مكافئة لـ RAND_egd_bytes() مع ضبط num على 255.

RAND_query_egd_bytes() تطلب num بايت من العشوائية من EGD عند المقبس المحدد path، حيث يجب أن يكون num أقل من 256. إذا كان buf هو NULL، فهي مكافئة لـ RAND_egd_bytes(). إذا لم يكن buf هو NULL، فتُنسخ البيانات إلى المخزن المؤقت ولا تُستدعى RAND_add().

يمكن تهيئة OpenSSL وقت البناء لمحاولة استخدام EGD للتغذية آليًا.

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

RAND_egd() و RAND_egd_bytes() تُرجعان عدد البايتات المقروءة من البرنامج الخفي عند النجاح، أو -1 إذا فشل الاتصال أو لم يُرجع البرنامج الخفي بيانات كافية لتغذية مولد الأعداد العشوائية الزائفة بالكامل.

RAND_query_egd_bytes() تُرجع عدد البايتات المقروءة من البرنامج الخفي عند النجاح، أو -1 إذا فشل الاتصال.

انظر أيضًا

RAND_add(3)، RAND_bytes(3)، RAND(7)

حقوق النسخ

حقوق الطبع والنشر 2000-2018 لمؤلفي مشروع OpenSSL. جميع الحقوق محفوظة.

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

ترجمة

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

هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

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

7 أبريل 2026 3.6.2