تولید کننده رمز و عبارت تصادفی – راهنمای کاربردی
در این مطلب، روش ساخت تولید کننده رمز و عبارت تصادفی در زبانهای برنامهنویسی «پایتون» (Python Programming Language) و «جاوا» (Java) آموزش داده شده است. برای مطالعه بیشتر پیرامون اعداد تصادفی، مطالب زیر توصیه میشوند.


- اعداد تصادفی (Random Numbers) — تاریخچه و کاربردها
- تولید اعداد تصادفی در پایتون — به زبان ساده
- ماژول Random در پایتون چیست؟ – نحوه استفاده به زبان ساده
- تولید عدد تصادفی با یک تاس شش وجهی — به زبان ساده
تولید کننده رمز و عبارت تصادفی در جاوا
در ادامه، چگونگی تولید رمز و عبارت تصادفی در جاوا آموزش داده شده است. ابتدا، کد تولید رمز تصادفی با استفاده از کتابخانههای استاندارد جاوا و سپس، با کتابخانه «آپاچی کامانز لنگ» (Apache Commons Lang library)، ارائه شده است.
تولید کننده رمز تصادفی بدون محدودیت در جاوا
ابتدا، کار با حالت سادهای آغاز میشود که طی آن، یک رشته تصادفی محدود به ۷ کاراکتر تولید میشود.
نباید فراموش کرد که رشته جدید، یک رشته حرفی عددی خواهد بود.
تولید رمز تصادفی دارای محدودیت در جاوا
اکنون، چگونگی ساخت یک رشته محدودتر مورد بررسی قرار میگیرد. مثلا، رشتهای که در آن از حروف انگلیسی کوچک استفاده شده باشد.
همچنین، طول رشته نیز از پیش تعیین میشود.
تولید رشته تصادفی محدود با Apache Commons Lang
کتابخانه کامانز لنگ از آپاچی (Apache Commons Lang)، به کاربر کمک زیادی در ساخت تولید کننده رمز و عبارت تصادفی میکند.
در ادامه، روش تولید رشته تصادفی صرفا با استفاده از حروف (محدودیت)، مورد بررسی قرار میگیرد.
بنابراین، به جای همه کدهای سطح پایین موجود در کد جاوا که در بخش پیش ارائه شد، با خطوط کد کمتر و سادهتری میتوان به نتیجه مورد نظر رسید.
تولید رشته تصادفی الفبایی با Apache Commons Lang
در ادامه، مثال بسیار ساده دیگری از این کتابخانه، این بار برای یک رشته محدود که صرفا با کاراکترهای الفبایی و بدون استفاده از پرچمهای بولین ساخته شده، آموزش داده شده است.
تولید رشته حرفیعددی با Apache Commons Lang
و در نهایت، یک رشته محدود شده، از نوع عددی، با استفاده از قطعه کد زیر قابل تولید است.
به طور کلی، میتوان با استفاده از با روشهای پیادهسازی مختلفی در زبان جاوا، تولید کننده رمز و عبارت تصادفی برای تولید رشتههای محدود و غیر محدود ساخت.
تولید کننده رمز و عبارت تصادفی در پایتون
در پایتون میتوان یک رشته تصادفی را با استفاده از ماژول رندوم ساخت. گاهی، کاربر نیاز دارد که از رمز و عبارت تصادفی (رشته تصادفی) به عنوان شناساگرهای واحد، شناسه جلسه (Session Id) یا رمز عبور، استفاده کند.
در ادامه، روش ساخت تولید کننده رمز و عبارت تصادفی در پایتون آموزش داده شده است.
تولید رشته تصادفی با پایتون
در ادامه، از یک تابع مناسب برای تولید رشته تصادفی از یک توالی داده شده از کاراکترها و با یک سایز مشخص، استفاده میشود.
خروجی قطعه کد بالا به صورت زیر است.
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
Random String of length 12 = 'MP'?EI$MO%w
در اینجا، از تابع random.choice() برای انتخاب یک کاراکتر تصادفی از یک توالی تعیین شده از کاراکترها استفاده میشود. سپس، از حلقه for برای اجرای آن به تعداد دفعات تعیین شده، استفاده میشود. پس از آن، از تابع join() برای الحاق آنها و بازگرداندن رشته تصادفی تولید شده استفاده میشود.

اما اگر کاربر بخواهد اندازه یک رشته تصادفی را متغیر و برای مثال، بین ۸ تا ۱۲ نگه دارد، چه کار باید بکند؟ در ادامه، تابع کمی تغییر داده میشود تا به طور تصادفی، اندازه رشته را انتخاب کند.
خروجی قطعه کد بالا به صورت زیر است.
Random String of random length (6-12) = d;@o/?[yq=

این کد نیز تقریبا مشابه تابعی است که در ابتدا ارائه شد؛ با این تفاوت که در اینجا از randint() استفاده شده است. این کار با هدف انتخاب تصادفی اندازه رشتههای تولید شده به صورت تصادفی، انجام میشود.
تولید UUID تصادفی
اگر کاربر بخواهد که یک Unique ID بر مبنای مشخصات فنی RFC-4122 تولید کند، میتواند از ماژول uuid در این راستا استفاده کند.
خروجی قطعه کد بالا به صورت زیر است.

اگر مطلب بالا برای شما مفید بوده است، آموزشهای زیر نیز به شما پیشنهاد میشوند:
- مجموعه آموزشهای آمار و احتمالات
- آموزش آمار و احتمال مهندسی
- مجموعه آموزشهای دادهکاوی و یادگیری ماشین
- زبان برنامهنویسی پایتون (Python) — از صفر تا صد
- زبان برنامه نویسی جاوا (Java) — از صفر تا صد
- اعداد تصادفی (Random Numbers) — تاریخچه و کاربردها
^^












