ال

الأسرار في Python

{zero: "لا توجد تمارين", one: "1 تمرين", two: "تمرينان", few: "%{count} تمارين", many: "%{count} تمرينًا", other: "%{count} تمرين"}

نبذة عن الأسرار

تناول مفهوم سابق وحدة random، وهي تُنتج أعدادًا شبه عشوائية وترتيبات شبه عشوائية للمصفوفة.

تتشابه وحدة secrets مع وحدة random في بعض وظائفها، لكن الوحدتين صُمّمتا بأولويات مختلفة تمامًا.

  • وُضِعت random لتحقيق أداء عالٍ في النمذجة والمحاكاة، مع توليد أعداد شبه عشوائية «جيد بما يكفي».
  • صُمّمت secrets لتكون آمنة تشفيريًا في تطبيقات مثل تجزئة كلمات المرور، وتوليد رموز الأمان، ومصادقة الحسابات.

تجد مزيدًا من التفاصيل حول سبب الحاجة إلى إضافة وحدة secrets في PEP 506.

وحدة secrets صغيرة ومباشرة نسبيًا، وتضم طرقًا لتوليد أعداد صحيحة عشوائية، أو بتات، أو بايتات، أو رموز، أو عنصر عشوائي من تسلسل معطى.

لاستخدام secrets، عليك أولًا استيرادها بالكلمة المفتاحية import:

>>> import secrets

# Returns n, where 0 <= n < 1000.
>>> secrets.randbelow(1000) 
577

# 32-bit integers.
>>> secrets.randbits(32) 
3028709440

>>> bin(secrets.randbits(32))
'0b11111000101100101111110011110100'

# Pick at random from a sequence.
>>> secrets.choice(['my', 'secret', 'thing']) 
'thing'

# Generate a token made up of random hexadecimal digits.
>>> secrets.token_hex() 
'f683d093ea9aa1f2607497c837cf11d7afaefa903c5805f94b64f068e2b9e621'

# Generate a URL-safe token of random alphanumeric characters.
>>> secrets.token_urlsafe(16) 
'gkSUKRdiPDHqmImPi2HMnw'

إذا كنت تكتب تطبيقات حساسة أمنيًا، فستحتاج بالتأكيد إلى قراءة التوثيق الكامل، الذي يقدّم مزيدًا من النصائح والأمثلة.

تعديل عبر GitHub يفتح الرابط في نافذة أو علامة تبويب جديدة