Proxy-Base Community - Анонимность и безопасность в интернете. - Показать сообщение отдельно - Полезные скрипты [Perl],[PHP],[Python]
Показать сообщение отдельно
Старый 14.08.2009, 23:26   #8 (permalink)
hide
Proxy-Base.Org Team
 
Регистрация: 19.05.2009
Сообщений: 961
Member ID: 147

Репутация: 2374
Репутация: 2374
Сказал(а) спасибо: 894
Поблагодарили 2,054 раз(а) в 713 сообщениях
Топикстартер (автор темы) По умолчанию

генератор паролей
PHP код:
<?php
#~~~~~~~~Настройки~~~~~~~~#
$pass_len 3;                  # длина пароля?
$pass_count 250;             # сколько паролей генерировать?
$file_pass 'passwords.txt';   # файл с паролями?
$truncate_file true;          # отчищать ли файл?
$add_symb '!@#$%^&*';         # добавочные символы?
#~~~~~~~~---------~~~~~~~~#

/**
 * genPass()
 *
 * @param int $len  - длина
 * @param string $mix   - дополнительные символы
 * @return string $result
 */
function genPass($len$mix '')
{
    
$alpha 'qwertyuiopasdfghjklzxcvbnm1234567890';    #алфавит
    
$result '';                                       #результат
    
    
$alpha .= $mix#добавляем доп. символы
    
    
for($i 0$alphlen strlen($alpha); $i $len$i++) #добавляем в цикле случайные символы
        
$result .= $alpha{mt_rand(0$alphlen 1)};     #случайное число из алфавита
    
    
return $result#возвращаем результат
}

if(!
$fp fopen($file_pass'at')) #открываем файл
    
die('Невозможно открыть файл'.$file_pass);

if(
$truncate_file)
    
ftruncate($fp0);  #отчищаем файл


for($i 0$i $pass_count$i++)
{
    
fwrite($fpgenPass($pass_len$add_symb)."\r\n"); #записываем в файл по паролю на строчку
}

fclose($fp);
генератор одного пароля, заданной вами длины
PHP код:
<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;

  }
hide вне форума   Ответить с цитированием