تابع تولید رمزعبور قدرتمند با PHP
در این نوشته یک کلاس اختصاصی برای تولید رمزعبورهای قدرتمند برای شما ایجاد کردهایم. برای استفاده از این کلاس کافیست این کلاس را در کنار پروژهی خود استفاده کنید و تنها آن را فراخوانی کنید.
تابع تولید رمزعبور قدرتمند با PHP
کلاس ساخت رمزعبور قدرتمند و قوی در PHP
کد کلاس ساخت رمزعبور قدرتمند و قوی در PHP را میتوانید در بخش زیر مشاهده کنید:
<?php
/**
* strongPassword Class
* Author : Amir Shokri
* E-mail : amirsh.nll@gmail.com
* Date : 29 May, 2020
*/
class strongPassword
{
public function randomText($length, $patternType = 4) {
if(!is_numeric($length) || $length < 1)
$length = 20;
$small_alphabet = "abcdefghijklmnopqrstuwxyz";
$big_alphabet = "ABCDEFGHIJKLMNOPQRSTUWXYZ";
$number = "0123456789";
$characters = "!@#$%^&*()[]{};:'?`~+-_,<>";
if(!is_numeric($patternType) || $patternType < 0 || $patternType > 4)
$patternType = 4;
$pettern = $small_alphabet . $big_alphabet . $number . $characters;
if($patternType == 1)
$pettern = $small_alphabet;
elseif($patternType == 2)
$pattern = $small_alphabet . $big_alphabet;
elseif($patternType == 3)
$pattern = $small_alphabet . $big_alphabet . $number;
elseif($patternType == 4)
$pattern = $small_alphabet . $big_alphabet . $number . $characters;
else
$pattern = $small_alphabet . $big_alphabet . $number . $characters;
for ($i = 0; $i < $length; $i++) {
$n = rand(0, strlen($pettern) - 1);
$result[$i] = $pettern[$n];
}
return substr(implode('', $result), 0, $length);
}
}
$strongPassword = new strongPassword();
echo "<strong>$strongPassword->randomText(5) : </strong><br />" . $strongPassword->randomText(5) . "<br /><br />";
echo "<strong>$strongPassword->randomText(20, 1) : </strong><br />" . $strongPassword->randomText(20, 1) . "<br /><br />";
echo "<strong>$strongPassword->randomText(30, 2) : </strong><br />" . $strongPassword->randomText(30, 2) . "<br /><br />";
echo "<strong>$strongPassword->randomText(40, 3) : </strong><br />" . $strongPassword->randomText(40, 3) . "<br /><br />";
echo "<strong>$strongPassword->randomText(50, 4) : </strong><br />" . $strongPassword->randomText(50, 4) . "<br /><br />";
?>
نتیجه اجرای نمونه

توضیحات:
- نام این کلاس strongPassword است.
- در کلاس strongPassword یک تابع با نام randomText که وظیفهی ساخت رمزعبور را دارد.
- تابع randomText دارای دو متغیر ورودی است:
- length: برای تعیین اندازه ی رمزعبور تولید شده.
- patternType: نوع کاراکترهای تولیدی:
- 1 : حروف کوچک.
- 2 : حروف کوچک و حروف بزرگ.
- 3 : حروف کچک و بزرگ و اعداد.
- 4 : حروف کوچک و بزرگ و اعداد و کاراکترهای ویژه.
- اندازهی رشتهی خروجی در آخر با تابع substr در php کنترل میشود.
راستی یک تابع برای بررسی قدرتمند بودن رمزعبورها با جاوا هم را هم داریم اگر دوست داشتین این نوشته را مطالعه کنید. لطفا نظرات خود را در ارتباط با این آموزش بنویسید.
برای امتیاز به این نوشته کلیک کنید!
[کل: 2 میانگین: 5]



















ادغام این کلاس با سیستمهای مدیریت کاربر آماده مثل Laravel یا WordPress راحت هست؟
بله ساده است.
آیا تولید رمزها با نسخههای مختلف PHP تفاوتی در عملکرد یا سرعت ایجاد میکنه؟
خیر تفاوتی ایجاد نمیکند.
برای سازگاری با قوانین پیچیدگی رمز، امکان اجبار حضور همه نوع کاراکتر وجود داره؟
بله وجود دارد.
این کلاس بیشتر برای استفاده شخصی مناسبه یا میشه توی پروژههای تجاری هم بهکار برد؟
برای پروژههای تجاری هم مناسب است.
خروجی این رمزها با الزامات معمول امنیتی سازمانها همخوانی داره؟
بله.