Головна PHP Генератор паролів на PHP
Генератор паролів на PHP

Пароль генерується випадковим чином за допомогою функції uniqid. Ця функція повертає унікальний ідентифікатор, грунтуючись на значеннях поточного часу в мікросекунди.

При такому варіанті використання функції повертається 128-бітний хеш-код.


Однак отриманий пароль містить лише літери англійської мови в нижньому регістрі і цифри. Для створення більш стійкого до підбору паролів можна скористатися скриптом наведеним нижче.

Генерація "рівномірного" пароля

 

<form method=post>
<input type=text name=number value=”10″>
<input type=submit value=”Згенерувати”>
<form><br><br>
<?php
// Параметр $number - число символів в паролі
echo generate_password($_POST[’number’]);

function generate_password($number)
{
$arr = array(’a',’b',’c',’d',’e',’f',
‘g’,'h’,'i’,'j’,'k’,'l’,
‘m’,'n’,'o’,'p’,'r’,’s’,
‘t’,'u’,'v’,'x’,'y’,'z’,
‘A’,'B’,'C’,'D’,'E’,'F’,
‘G’,'H’,'I’,'J’,'K’,'L’,
‘M’,'N’,'O’,'P’,'R’,'S’,
‘T’,'U’,'V’,'X’,'Y’,'Z’,
‘1′,’2′,’3′,’4′,’5′,’6′,
‘7′,’8′,’9′,’0′,’.',’,',
‘(’,')’,'[’,']’,'!’,'?’,
‘&’,'^’,'%’,'@’,'*’,'$’,
‘<’,'>’,'/’,'|’,'+’,'-’,
‘{’,'}’,'`’,'~’);
// Генеруємо пароль
$pass = “”;
for($i = 0; $i < $number; $i++)
{
// Вычисляємо випадковий індекс масиву
$index = rand(0, count($arr) - 1);
$pass .= $arr[$index];
}
return $pass;
}
?>

 

 
© 2008-2013 PHPist