কম্পিউটার টিউটোরিয়াল

পাইথন মডিউল ব্যবহার করে সিকিউর র‍্যান্ডম নম্বর জেনারেট করা

এই আর্টিকেলে আমরা দেখব কিভাবে সিকিউর র‍্যান্ডম নম্বর জেনারেট করা যায় যা পাসওয়ার্ড হিসেবে কার্যকরভাবে ব্যবহার করা যায়। র‍্যান্ডম নম্বরের পাশাপাশি আমরা লেটার এবং অন্যান্য ক্যারেক্টারও যোগ করতে পারি যাতে এটি আরও ভালো হয়।

secrets মডিউলের সাথে

secrets মডিউলের choice ফাংশনটি ব্যবহার করে ফর লুপ এবং range ফাংশন দিয়ে প্রয়োজনীয় দৈর্ঘ্যের পাসওয়ার্ড জেনারেট করা যায়।

উদাহরণ

import secrets
import string
allowed_chars = string.ascii_letters + string.digits + string.printable
pswd = ''.join(secrets.choice(allowed_chars) for i in range(8))
print("The generated password is: \n", pswd)

আউটপুট

উপরের কোডটি রান করলে নিচের ফলাফলটি মিলবে −

The generated password is: $pB7WY

কমপক্ষে কন্ডিশনের সাথে

আমরা পাসওয়ার্ড জেনারেটরে লোয়ারকেস এবং আপারকেস লেটারসহ ডিজিট থাকতে বাধ্য করতে পারি। এখানও secrets মডিউল ব্যবহার করা হয়।

উদাহরণ

import secrets
import string
allowed_chars = string.ascii_letters + string.digits + string.printable
while True:
    pswd = ''.join(secrets.choice(allowed_chars) for i in range(8))
    if (any(c.islower() for c in pswd) and
        any(c.isupper() for c in pswd) and
        sum(c.isdigit() for c in pswd) >= 3):
        print("The generated pswd is: \n", pswd)
        break

আউটপুট

উপরের কোডটি রান করলে নিচের ফলাফলটি মিলবে −

The generated pswd is: p7$7nS2w

র‍্যান্ডম টোকেন

URL ডিলিং করার সময় যদি URL-এ একটি র‍্যান্ডম টোকেন থাকতে চান তবে secrets মডিউলের নিচের মেথডগুলো ব্যবহার করা যায়।

উদাহরণ

import secrets
# একটি র‍্যান্ডম বাইট স্ট্রিং
tkn1 = secrets.token_bytes(8)
# হেক্সাডেসিমেলে একটি র‍্যান্ডম টেক্সট স্ট্রিং
tkn2 = secrets.token_hex(8)
# র‍্যান্ডম URL-সেফ টেক্সট স্ট্রিং
url = 'https://thename.com/reset=' + secrets.token_urlsafe()
print("A random byte string:\n", tkn1)
print("A random text string in hexadecimal: \n", tkn2)
print("A text string with url-safe token: \n", url)

আউটপুট

উপরের কোডটি রান করলে নিচের ফলাফলটি মিলবে −

A random byte string: b'\x0b-\xb2\x13\xb0Z#\x81'
A random text string in hexadecimal: d94da5763fce71a3
A text string with url-safe token: https://thename.com/reset=Rd8eVookY54Q7aTipZfdmz-HS62rHmRjSAXumZdNITo
  1. জাভাস্ক্রিপ্টে র‍্যান্ডম স্ট্রিং/ক্যারেক্টার জেনারেট করা

  2. C#-এ সিকিউর র‍্যান্ডম নম্বর জেনারেট করা

  3. পাইথন প্রোগ্রাম: ১ থেকে ২০ পর্যন্ত র‍্যান্ডম নম্বর জেনারেট করে লিস্টে অ্যাপেন্ড করা

  4. পাইথনে pyqrcode মডিউল দিয়ে QR কোড জেনারেট করা