XVI. Crack Functions

Введение

These functions allow you to use the CrackLib library to test the 'strength' of a password. The 'strength' of a password is tested by that checks length, use of upper and lower case and checked against the specified CrackLib dictionary. CrackLib will also give helpful diagnostic messages that will help 'strengthen' the password.

Замечание: This extension has been moved to the PECL repository and is no longer bundled with PHP as of PHP 5.0.0.

Требования

More information regarding CrackLib along with the library can be found at http://www.crypticide.com/users/alecm/.

Установка

Это расширение PECL не поставляется вместе с PHP. Дополнительная информация, такая как новый версии, скачивание, исходные файлы, информация о разработчике и CHANGELOG, могут быть найдены здесь: http://pecl.php.net/package/crack.

В PHP 4 исходные файлы этого расширения PECL могут быть найдены в директории ext/ внутри исходных файлов PHP или по ссылке PECL выше. In order to use these functions you must compile PHP with Crack support by using the --with-crack[=DIR] configuration option.

Windows users will enable php_crack.dll inside of php.ini in order to use these functions. В PHP 4 этот DLL находится в директории extensions/ внутри директории бинарного дистрибутива PHP для Windows. Вы можете скачать DLL этого расширения PECL со страницы PHP Downloads или http://snaps.php.net/.

Настройка во время выполнения

Поведение этих функций зависит от установок в php.ini.

Таблица 1. Crack configuration options

NameDefaultChangeableChangelog
crack.default_dictionaryNULLPHP_INI_SYSTEMAvailable since PHP 4.0.5.
Для подробного описания констант PHP_INI_*, обратитесь к документации функции ini_set().

Типы ресурсов

Данное расширение не определяет никакие типы ресурсов.

Предопределенные константы

Данное расширение не определяет никакие константы.

Примеры

This example shows how to open a CrackLib dictionary, test a given password, retrieve any diagnostic messages, and close the dictionary.

Пример 1. CrackLib example

<?php
// Open CrackLib Dictionary
$dictionary = crack_opendict('/usr/local/lib/pw_dict')
     or die(
'Unable to open CrackLib dictionary');

// Perform password check
$check = crack_check($dictionary, 'gx9A2s0x');

// Retrieve messages
$diag = crack_getlastmessage();
echo
$diag; // 'strong password'

// Close dictionary
crack_closedict($dictionary);
?>

Замечание: If crack_check() returns TRUE, crack_getlastmessage() will return 'strong password'.

Содержание
crack_check -- Performs an obscure check with the given password
crack_closedict -- Closes an open CrackLib dictionary
crack_getlastmessage -- Returns the message from the last obscure check
crack_opendict -- Opens a new CrackLib dictionary