XIV. Funciones para Crackear

Introducción

Las funciones para crackear hacen uso de la librería CrackLib para comprobar la dificultad de una contraseña para ser crackeada. La dificultad se determina comprobando la longitud de la contraseña, el uso de mayúsculas y minúsculas y comprobandola contra los diccionarios de CrackLib especificados. Además, CrackLib proporciona consejos útiles para incrementar la dificultad de la contraseña.

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

Requirimientos

Para obtener más información sobre CrackLib y para obtener la librería se debe acceder a la siguiente dirección http://www.crypticide.com/users/alecm/.

Instalación

Esta extension PECL no esta ligada a PHP. Mas informacion sobre nuevos lanzamientos, descargas ficheros de fuentes, informacion sobre los responsables asi como un 'CHANGELOG', se puede encontrar aqui: http://pecl.php.net/package/crack.

En PHP 4 la fuente de las extensiones PECL pueden encontrarse en el directorio ext/ que se existe en las fuentes de PHP o en el enlace PECL de arriba. Para poder usar estas funciones, se debe compilar PHP añadiendo el parámetro --with-crack[=DIR] a las opciones de configuración.

Los usuarios de Windows deben activar la opció php_crack.dll en el fichero php.ini para poder utilizar estas funciones. En PHP 4, esta DLL se encuentra en el directorio extensions/ que existe en los binarios de PHP para Windows. Podeis descargar esta DLL de las extensiones PECL desde la pagina PHP Downloads o desde http://snaps.php.net/.

Configuración en tiempo de ejecución

El comportamiento de estas funciones está afectado por los valores definidos en php.ini.

Tabla 1. Opciones de configuración

NombreValor por defectoDonde se cambiaRegistro de cambios
crack.default_dictionaryNULLPHP_INI_SYSTEMDisponible a partir de la versión de PHP 4.0.5.
For further details and definitions of the PHP_INI_* constants, see the Apéndice H.

Tipos de recursos

Esta extensión no tiene ningún tipo de recurso definido.

Constantes predefinidas

Esta extensión no tiene ninguna constante definida.

Ejemplos

Este ejemplo muestra como acceder a un diccionario de CrackLib, comprobar una contraseña, obtener todos los mensajes proporcionados por la librería y cerrar de nuevo el diccionario.

Ejemplo 1. Ejemplo de CrackLib

<?php
// Abrir el diccionario de CrackLib
$diccionario = crack_opendict('/usr/local/lib/pw_dict')
     or die(
'No se ha podido abrir el diccionario de CrackLib');

// Comprobar la contrase&ntilde,a
$check = crack_check($diccionario, 'gx9A2s0x');

// Obtener los mensajes
$diag = crack_getlastmessage();
echo
$diag; // El mensaje obtenido es: 'strong password' (contrasena dificil de crackear)

// Cerrar el diccionario
crack_closedict($diccionario);
?>

Nota: Si la función crack_check() devuelve un valor de TRUE, entonces la función crack_getlastmessage() devuelve el mensaje 'strong password' (contraseña difícil de crackear).

Tabla de contenidos
crack_check -- Comprueba la dificultad de la contraseña proporcionada
crack_closedict -- Cierra un diccionario abierto de CrackLib
crack_getlastmessage -- Obtiene el mensaje de la última comprobación realizada
crack_opendict -- Abre un diccionario de CrackLib

Hosting by: hurra.com
Generated: 2007-01-26 18:00:47