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://sourceforge.net/projects/cracklib.
This » PECL extension is not bundled with PHP. Information for installing this PECL extension may be found in the manual chapter titled Installation of PECL extensions. Additional information such as new releases, downloads, source files, maintainer information, and a CHANGELOG, can be located here: » http://pecl.php.net/package/crack.
In PHP 4 this PECL extensions
source can be found in the
ext/ directory within the
PHP source or at the PECL link above.
In order to use these functions you must compile PHP with Crack support
by using the
Windows users will enable
php.ini in order to use these functions.
In PHP 4 this DLL resides in
extensions/ directory within the PHP Windows
The DLL for this PECL extension
may be downloaded from either the
» PHP Downloads page or from
The behaviour of these functions is affected by settings in
|crack.default_dictionary||NULL||PHP_INI_PERDIR||PHP_INI_SYSTEM in crack <= 0.2. Available since PHP 4.0.5. Removed in PHP 5.0.0.|
For further details and definitions of the PHP_INI_* constants, see the Appendix I,
The CrackLib extension defines a dictionary resource identifier returned by crack_opendict().
This example shows how to open a CrackLib dictionary, test a given password, retrieve any diagnostic messages, and close the dictionary.
// 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