XIV. Crack

Introduction

Ces fonctions vous permettent d'utiliser la bibliothèque CrackLib, pour tester la robustesse de vos mots de passe. Cette bibliothèque teste la taille, les majuscules et minuscules, et effectue des recherches dans le dictionnaire CrackLib. CrackLib donne aussi des conseils pour renforcer vos mots de passe.

Note : Cette extension a été déplacée dans le module PECL et ne sera plus intégrée PHP.5.0.0.

Pré-requis

Plus d'informations concernant la bibliothèque CrackLib sont disponibles à http://www.crypticide.com/users/alecm/.

Installation

Cette extension PECL n'est pas intégrée à PHP. Des informations comme les notes sur les nouvelles versions, les téléchargements, les sources des fichiers, les informations concernant les mainteneurs ainsi qu'un CHANGELOG, peuvent être trouvées ici : http://pecl.php.net/package/crack.

En PHP 4, les sources de cette extension PECL peuvent être trouvées dans le dossier ext/ avec les sources de PHP ou sur le lien PECL ci-dessous. Si vous voulez utiliser ces fonctions, vous devez compiler PHP avec le support Crack en utilisant l'option de configuration --with-crack[=DIR].

Les utilisateurs de Windows doivent activer la bibliothèque php_crack.dll dans le php.ini pour pouvoir utiliser ces fonctions. En PHP 4, cette bibliothèque DLL se trouve dans le dossier extensions/ avec les binaires PHP pour Windows téléchargées. Vous pouvez télécharger ces bibliothèques DLL pour ces extensions PECL depuis la page de téléchargement de PHP sous sur la page http://snaps.php.net/.

Configuration à l'exécution

Le comportement de ces fonctions est affecté par la configuration dans le fichier php.ini.

Tableau 1. Options de configuration

NomPar défautModifiable
crack.default_dictionaryNULLPHP_INI_SYSTEM
Pour plus de détails sur les constantes PHP_INI_*, reportez-vous à ini_set().

Types de ressources

Cette extension ne définit aucune ressource.

Constantes pré-définies

Cette extension ne définit aucune constante.

Exemples

Cet exemple montre comment ouvrir un dictionnaire CrackLib, tester un mot de passe, lire le diagnostic et refermer le dictionnaire.

Exemple 1. Exemple CrackLib

<?php
/* Ouverture du dictionnaire CrackLib */
$dictionary = crack_opendict('/usr/local/lib/pw_dict')
     or die(
'Unable to open CrackLib dictionary');

/* Vérification du mot de passe */
$check = crack_check($dictionary, 'gx9A2s0x');

/* Lecture du diagnostic */
$diag = crack_getlastmessage();
echo
$diag; // 'strong password'

/* Fermeture du dictionnaire */
crack_closedict($dictionary);
?>

Note : Si crack_check() retourne TRUE, crack_getlastmessage() retournera le message 'strong password' (mot de passe robuste).

Table des matières
crack_check -- Effectue une vérification de mot de passe
crack_closedict -- Referme le dictionnaire CrackLib
crack_getlastmessage -- Retourne le message de diagnostic
crack_opendict -- Ouvre un nouveau dictionnaire CrackLib