التابع Random.urandom في روبي

من موسوعة حسوب
< Ruby‏ | Random
اذهب إلى التنقل اذهب إلى البحث

يعيد التابع urandom سلسلةً نصيةً (string) باستخدام ميزاتٍ توفرها المنصة. يفترض بالقيمة المعادة أن تكون عددًا محميًّا مشفرًا شبه عشوائي بالصيغة الثنائية. يرمي هذا التابع الاستثناء RuntimeError إذا فشلت الميزة المزودة من المنصة في تحضير النتيجة.

في عام 2017، كتب في صفحة الدليل man للدالة (random(7 في لينكس: "لا يوجد تشفيرٌ أساسيٌ موجودٌ اليوم يمكن يعدنا بأكثر من 256 بت من الحماية". لذلك  تمرير قيمة ذات حجم أكبر من 32 إلى هذا التابع قد يكون أمرًا مريبًا.

البنية العامة

urandom(size)  string

المعاملات

size

حجم السلسلة النصية المراد توليدها.

القيم المعادة

تعاد سلسلةٌ نصيةٌ بالصيغة الثنائية بحجم size تمثِّل عددًا مشفرًا شبه عشوائي.

أمثلة

مثالٌ عن استخدام التابع urandom:

Random.urandom(8)  #=> "\x78\x41\xBA\xAF\x7D\xEA\xD8\xEA"

انظر أيضًا

  • التابع bytes : يُعيد سلسلةً نصيةً ثنائيةً عشوائية بحجم محدَّدٍ من البايتات.
  • التابع rand : يُعيد عددًا عشوائيًّا يتراوح مجاله بحسب القيمة المُمرَّرة إليه.
  • التابع srand: يحدِّد بذرة مولد الأعداد شبه العشوائية للنظام بتعيين Random::DEFAULT إلى القيمة المُمرَّرة إليه.

مصادر