التابع String.crypt في روبي

من موسوعة حسوب
< Ruby‏ | String
مراجعة 19:58، 30 يناير 2019 بواسطة جميل-بيلوني (نقاش | مساهمات) (إضافة المحتوى)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

يشفِّر التابع crypt بناءً على القيمة Hash السلسلة النصية التي استدعي معها بطريقة غير قابلة للعكس (one-way cryptographic hash) عبر استدعاء دالة المكتبة القياسية crypt(3)‎ مع السلسلة النصية الإضافية المُمرَّرة إليه.

لمَّا كان نمط التشفير والنتيجة تعتمدان على نظام التشغيل المستعمل، فإن استعمال سلسلةُ نصيةً إضافيةً (salt string) تطابق التعبير النمطي ‎\A[a-zA-Z0-9./]{2} ‎ يجب أن يكون صالحًا وآمنًا مهما كان نظام التشغيل المستعمل، إذ أول محرفين فيها مهمَّان لدرجة كبيرة.

يعدُّ هذا التابع مخصَّصًا للاستعمال مع شيفرات مخصصة لنظام محدَّد، لذا إن أردت دالة تشفير عابرة للمنصات عبر القيمة Hash، فاستعمل Digest أو OpenSSL بدلًا منه.

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

crypt(salt_str)  new_str

المعاملات

salt_str

سلسلة نصية تمثِّل الطول الإضافي الذي سيضاف إلى السلسلة النصية المعطاة قبل تشفيرها.

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

تعاد سلسلة نصية جديدة ناتجة عن تشفير السلسلة النصية المعطاة مع الطول الإضافي salt_str.

انظر أيضًا

  • التابع codepoints: يُعيد نقاط الترميز المقابلة لمحارف السلسلة النصية في مصفوفة.
  • التابع replace: يستبدل محتوى السلسلة النصية التي استدعي معها بمحتوى السلسلة المُمرَّرة إليه.
  • التابع unicode_normalize: يعيد نسخة موحدة (normalized string، أي ذات ترميز موحد) للسلسلة النصية التي استدعيت معه باستخدام أحد ترميزات يونيكود الموحدة.

مصادر