Sep
18
2010
Генератор паролей на PHP

Пароль генерируется случайным образом при помощи функции uniqid. Эта функция возвращает уникальный идентификатор, основываясь на значениях текущего времени в микросекундах.

При таком варианте использования функции возвращается 128-битный хеш-код

Генерация пароля по аглоритму MD5

$code = '282a586f2cd5e9d42297480304990d1e
';
highlight_string($code);
?>

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

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


<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(0count($arr) - 1);

      
$pass .= $arr[$index];

    }

    return 
$pass;

  }

?>


 

Комментарии
Добавить новый Поиск
Оставить комментарий
Имя:
Email:
 
Веб-сайт:
Тема:
UBB-Код:
[b] [i] [u] [url] [quote] [code] [img] 
 
 
:angry::0:confused::cheer:B):evil::silly::dry::lol::kiss::D:pinch:
:(:shock::X:side::):P:unsure::woohoo::huh::whistle:;):s
:!::?::idea::arrow:
 
Пожалуйста, введите проверочный код, который Вы видите на картинке.
Powered by !JoomlaComment 3.26

3.26 Copyright (C) 2008 Compojoom.com / Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved."

 

Кто онлайн

Сейчас 51 гостей онлайн