PHP
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

crack_check> <variant_xor
Last updated: Sat, 24 Mar 2007

view this page in

XVI. 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: Toto rozšíření bylo přesunuto do repozitáře » PECL a již nebude součástí balíku PHP.5.0.0.

Požadavky

More information regarding CrackLib along with the library can be found at » http://sourceforge.net/projects/cracklib.

Instalace

Toto rozšíření » PECL není přibaleno k PHP. Informace o instalaci tohoto PECL rozšíření lze najít v kapitole manuálu nazvané Instalace rozšíření PECL. 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 31. Crack configuration options

NameDefaultChangeableChangelog
crack.default_dictionaryNULLPHP_INI_PERDIRAvailable since PHP 4.0.5.

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

Typy prostředků

The CrackLib extension defines a dictionary resource identifier returned by crack_opendict().

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 304. 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


add a note add a note User Contributed Notes
Crack Functions
leeyuiwah at NOSPAM dot hknet dot com
22-Nov-2007 02:24
Please note that the manual is a little bit misleading when providing references.  The sourceforge URL cited
(i.e. http://sourceforge.net/projects/cracklib) is the homepage of cracklib the enabler (upon which other things build), NOT the crack PECL extension.  If you are a PHP user looking for the crack PECL extension, you should NOT download from sourceforge.  Instead, you should download from the PECL homepage (http://pecl.php.net).  When you are there, search for "crack" not "cracklib".
Martin
05-Jun-2007 09:08
For those of you not familiar with the CrackLib Library:

CrackLib (or PHP Crack) can not cope with plaintext wordlists.
You have to generate a binary version of any plaintext list first.

After you have done this you get 3 files with different extensions:

my_list.txt

---->

my_list.pwd
my_list.hwm
my_list.pwi

crack_opendict() must be called with the first argument describing the path and base filename of the binary wordlist, e.g. C:\....\my_list or /usr/local/... (see below)

Now the bad news - how to generate the 3 files:

The only way i managed to do it:

o Download the CrackLib package from sourceforge (see link in php.net txt)
o USE UNIX/LINUX:
o run configure
o run make all
o run make install
o run make dict (having the wordlists in the /dict directory)
o look for the files in /usr/local/share/cracklib/
o copy the files in a convenient directory

That's it.

crack_check> <variant_xor
Last updated: Sat, 24 Mar 2007
 
 
show source | credits | stats | sitemap | contact | advertising | mirror sites