Funciones para Crackear

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

Requisitos

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

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