Генератор паролей на PHP, Perl, функция WordPress

Надежный пароль — надежная защита! Это каждый должен знать и понимать. Но зачастую многим оказывается трудно придумать достаточно сложный и надежный пароль из 12-20 символов (а то и больше), тем более, когда их приходится заводить много. Возможно это из-за нехватки времени или воображения, или попросту из-за лени. Для решения таких проблем и неудобств на помощь могут прийти скриптовые генераторы паролей.
Скрипты генераторов паролей на PHP, Perl, WordPress

Генераторы паролей бывают программные, скриптовые, аппаратные и т.д. Причем этого добра предостаточно в сети интернет. Но все же иметь всегда под рукой свой собственный генератор лучше, чем онлайн-вариант. Кто знает точно, что сайты онлайн-генераторов паролей не сохраняют сгенерированные пароли в своих базах данных для последующего их мошеннического использования? Так что все свое, что «ближе к телу», все-таки надежнее. Вот поэтому предлагаю вашему вниманию несложные скрипты генераторов паролей на языках PHP и Perl. Также познакомимся и с одной из встроенных функцией WordPress, которая служит для тех же целей.

Генератор паролей на PHP

Простой, но вполне пригодный для использования PHP-скрипт, генерирующий как простые, так и довольно сложные пароли различной доины. Его можно сохранить в файл на сервере, например в passwgen.php, и вызывать из браузера. Страница генератора паролей будет выглядеть примерно так:

Страница генератора паролей на PHP

Одно лишь замечание по поводу использования этого PHP-скрипта — в скрипте нет проверок входных данных (запроса post) на предмет их корректности и допустимых значений. Поэтому, если Вы захотите использовать этот скрипт как шаблон для своего генератора паролей, то рекомендую доработать его, добавив обработку и проверку входных данных функции generate_password.

~`+=,.;:/?|';

        $password = "";

        for( $i = 0; $i < $length; $i++ ) {
                $index =  mt_rand( 0, strlen($chars) - 1 );
                $password .= substr( $chars, $index, 1 );
        }

        return $password;
}

if( !$_POST[length] || $_POST[length] === '' )
        $length = 16;
else
        $length = $_POST[length];

if( $_POST[special_chars] === 'on' )
        $checkbox_special_chars = 'checked';
else
        $checkbox_special_chars = '';

if( $_POST[extra_special_chars] === 'on' )
        $checkbox_extra_special_chars = 'checked';
else
        $checkbox_extra_special_chars = '';
?>




        Генератор паролей



Генератор паролей

Новый пароль


длина пароля

/> спец. символы
/> экстра спец. символы

Генератор паролей WordPress

CMS WordPress начиная с версии 2.5 содержит в своем составе функцию wp_generate_password для генерации паролей (объявляется в файле \wp-includes\pluggable.php). Поэтому те, у кого есть свой блог или сайт на WordPress могут использовать уже готовое решение.

Генератор паролей на WP можно использовать например в плагинах, темах или создать «личную» страницу со своим шаблоном специально для генерации паролей.

wp_generate_password( $length = 16, $special_chars = true, $extra_special_chars = true );

Входные параметры:

  • $length — длина пароля;
    (по умолчанию 16 символов)
  • $special_chars — не алфавитные и не цифровые символы;
    (по умолчанию включено)
  • $extra_special_chars — дополнительные не алфавитные и не цифровые символы;
    (по умолчанию включено)

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

Примеры вызова функции wp_generate_password

echo wp_generate_password();

- получим пароль длиной в 16 символов (это значение по умолчанию), включающий всевозможные алфавитные, цифровые и другие печатные символы, включая дополнительные;

echo wp_generate_password( 20 );

- получим пароль длиной в 20 символов, включающий всевозможные алфавитные, цифровые и другие дополнительные символы;

echo wp_generate_password( 20, false, false );

- генерируется пароль длиной в 20 символов, в котором будут присутствовать только алфавитные (заглавные и строчные) и цифровые символы от 0 до 9;

Внимание!
Функция wp_generate_password() возвращает случайный пароль в текстовом виде. Будьте внимательны при выводе сгенерированного пароля на страницу HTML, т.к. при использовании дополнительных символов, пароль может не отобразиться корректно из-за того, что браузер может посчитать некоторые комбинации их них за коды разметки и просто пропустить либо изменить их.

Чтобы избежать такой неприятности лучше выводите сгенерированные пароли в текстовые поля ввода, такие как ,

Ссылки на Ваш сайт получат статус DoFollow после третьего комментария.

Для вставки кода в комментарии можно использовать BB-коды:
[text] [/text], [php] [/php], [html] [/html]

Подписаться на обновления блога 4remind.ru по RSS
Новости блога в социальных сетях

4remind.ru - персональный блог вебмастера



Наверх
Наверх