XI. Crack functions

Introducción

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.

Requerimientos

More information regarding CrackLib along with the library can be found at http://www.users.dircon.co.uk/~crypto/.

Instalación

In order to use these functions, you must compile PHP with Crack support by using the --with-crack[=DIR] option.

Configuración en tiempo de ejecución

The behaviour of these functions is affected by settings in php.ini.

Tabla 1. Crack configuration options

NameDefaultChangeable
crack.default_dictionaryNULLPHP_INI_SYSTEM
For further details and definition of the PHP_INI_* constants see ini_set().

Tipos de recursos

Esta extensión no define ningún tipo de recurso.

Constantes predefinidas

Esta extensión no define ninguna constante.

Ejemplos

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

Ejemplo 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);
?>

Nota: If crack_check() returns TRUE, crack_getlastmessage() will return 'strong password'.

Tabla de contenidos
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