امروزه کامپیوتر ها ، نرم افزار ها و همینطور هکر ها آنقدر پیشرفت کرده اند که پسوردهای ساده و قدیمی را به راحتی هک می کنند و از سیستم ها و حساب های ما بهره برداری می کنند. این امر ممکن است تبعات امنیتی و مالی بسیار بد و جدی ای را برای ما به همراه داشته باشد. اکثر اوقات تصمیم میگیریم و تلاش میکنیم تا رمز عبور قوی انتخاب کنیم ولی یا حوصله انجام این کار را نداریم یا رمز مناسبی به ذهنمان نمیرسد. یک برنامه پسورد ساز رندوم به ما کمک میکند تا رمزهایی با پیچیدگی بالا و با طول دلخواه را به سرعت بسازیم. در این پست با آرام وب همراه باشید تا آموزش ساخت برنامه پسورد ساز رندوم را در پایتون بررسی کنیم.
بعضی سایتها و برنامه ها خود یک سیستم پیشنهاد دهنده رمزعبور بسیار راحت و سریع دارند که به صورت آنلاین رمزعبور بسیار قوی در اختیار ما می گذارند. اما یک دلیل بسیار خوب برای اینکه خودمان برنامه اختصاصی برای ایجاد پسورد داشته باشیم این است که مطمئن شویم کلمه عبور ما در جای دیگری ذخیره نمی شود و توسط سایر برنامه ها یا هکرها به سرقت نمی رود. کاربرد دیگر این برنامه این است که شما می توانید در قسمت ثبت نام نرم افزار یا سایت خودتان از آن برای پیشنهاد کلمه عبور قوی به کاربران خود استفاده کنید.
تابع موردنظر ما دارای ۵ ورودی میباشد که اولین ورودی طول پسورد خواهد بود و چهار ورودی بعدی از نوع متغیرهای بولی هستند که مشخص کننده نوع کاراکتر های استفاده شده خواهند بود مانند:حروف کوچک و حروف بزرگ، اعداد و کارکترهای ویژه .
import random
import string
# این تابع یک پسورد آسان ترکیبی از حروف بزرگ و کوچک و اعداد و کارکترهای ویژه با طول دلخواه ایجاد میکند
# ورودی های این تابع به ترتیب : طول پسورد .حروف کوچک . حروف بزرگ .اعداد . کارکترهای ویژه
def passGen(passlenght,lowChar,capChar,numChar,sigChar):
# تعریف یک متغیر برای اینکه مقدار پسورد را در آن بریزیم
password=''
# تعریف یک متغیر برای اینکه کاراکترهای موردنیاز ساخت پسورد را درون آن بریزیم
passChars=''
# با استفاده از دستور IF و ماژول استرینگ بررسی میکنیم که چه کاراکترهایی
# (حروف بزرگ و کوچک و اعداد و کاراکترها) برای پسورد لازم است و آنها را درون متغیر میریزیم
if lowChar:passChars=string.ascii_lowercase
if capChar:passChars=passChars+string.ascii_uppercase
if numChar:passChars=passChars+string.digits
if sigChar:passChars=passChars+string.punctuation
for i in range(passlenght):
# هر بار که حلقه فراخوانی میشود یک کاراکتر به صورت رندوم از متغیر حروف و اعداد و کاراکترها انتخاب میشود
ch=random.choice(passChars)
# کارکتر انتخاب شده به متغیر پسورد اضافه می شود
password+=ch
return password
print(passGen(12,1,0,1,0))
حالا اگر کد بالا را اجرا کنیم، از آنجایی که تابع pssGen با طول ۱۲ کاراکتر شامل حروف کوچک و اعداد، فراخوانی شده (توجه کنید که ۴ پارامتر آخر با ۱ و ۰ فراخوانی شده که در پایتون به معنای True , False هستند) در نتیجه یک پسورد با طول ۱۲ کارکتر که حاوی حروف کوچک و اعداد است در صفحه نمایش چاپ خواهد شد.
یک ورژن از این برنامه با رابط کاربری بسیار مناسب با استفاده از کتابخانه pyqt در مخزن گیتهاب من موجود است. که اگر دوست داشتید میتوانید به گیتهاب من سر بزنید و دانلود کنید.
دیدگاهتان را بنویسید