Manuel PHP
Précédent |  | Suivant

# XVI. 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 dans PHP à partir de 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

Nom | Par défaut | Modifiable | Historique
--- | --- | --- | ---
crack.default_dictionary | NULL | PHP_INI_PERDIR | Disponible depuis PHP 4.0.5.

Pour plus de détails sur les constantes PHP_INI_*, reportez-vous à Annexe G.

# 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).

Précédent | Sommaire | Suivant
variant_xor | Niveau supérieur | crack_check