XIV. Crack Functions

Úvod

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.

Poznámka: This extension has been moved to the PECL repository and is no longer bundled with PHP as of PHP 5.0.0.

Požadavky

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

Instalace

Toto rozšíření PECL není přibaleno k PHP. Další informace, jako nové verze, soubory ke stažení, zdrojové soubory, správcovské informace a CHANGELOG, lze najít zde: http://pecl.php.net/package/crack.

V PHP 4 lze zdroje k těmto rozšířením PECL najít v adresáři ext/ ve zdrojích PHP source or nebo přes výše uvedený odkaz na 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. V PHP 4 je tato DLL knihovna umístěna v adresáři extensions/ v downloadu binárních souborů PHP pro Windows. Tuto DLL knihovnu pro rozšíření PECL můžete stahovat ze stránky PHP Downloads nebo z http://snaps.php.net/.

Konfigurace běhu

Chování těchto funkcí je ovlivněno nastavením parametrů v php.ini.

Tabulka 1. Crack configuration options

NameDefaultChangeable
crack.default_dictionaryNULLPHP_INI_SYSTEM
Pro další detaily a definice konstant PHP_INI_*, viz dokumentace k ini_set().

Typy prostředků

Toto rozšíření nemá definován žádný typ prostředku (resource).

Předdefinované konstanty

Toto rozšíření nemá definovány žádné konstanty.

Příklady

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

Příklad 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);
?>

Poznámka: If crack_check() returns TRUE, crack_getlastmessage() will return 'strong password'.

Obsah
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