Inicio arrow Trucos y tutoriales arrow Tutoriales PHP y APACHE arrow ¿Como genererar un passwords aleatorios?
¿Como genererar un passwords aleatorios? PDF Imprimir E-Mail

Para generar un password aleatorio de forma rápida podemos usar las funciones md5() junto con rand() tal como sigue.

 

 

Código PHP:

$caracteres = 8; // numero de caracteres a visualizar

$random_pass = substr(md5(rand()),0,$caracteres);

echo $random_pass ; // imprime el password

 

 

P: ¿Como genero un password facil de memorizar?

 

Primero habría que definir el concepto 'fàcil de memorizar', yo entiendo por facil ajikomufi y no jkimlhidt. Este sencillo escript genera un a cadena de caracteres formados por vocal consonante vocal o consonante vocal consonante, de este modo el password es leible y como consecuencia, fácil de memorizar.

 

Ahí va la función, la cual debería estar al inicio de todo de vuestra página junto con las demás funciones definidas.

 

Código PHP:

function f_genera_psw($num=8){ // By Kernellover

    $voc = array ("a","e","i","o","u");

    $con = array ("b","c","d","f","g","h","j","k","l","m","n","ñ","p","q","r","s","t","w","x","y","z");

    $psw = "";                // cadena que contendrá el password.

    $vc  = mt_rand(0,1);    // definde si empieza por vocal o consonante.

    for ($n=0; $n<$num; $n++){

        if ($vc==1){

            $vc=0;

            $psw .= $con[mt_rand(0,count($con)-1)];

        }

        $psw .= $voc[mt_rand(0,count($voc)-1)];

        $psw .= $con[mt_rand(0,count($con)-1)];

    }

    $psw = ereg_replace ("q","qu",$psw);

    $psw = ereg_replace ("quu","que",$psw);

    $psw = ereg_replace ("yi","ya",$psw);

    $psw = ereg_replace ("iy","ay",$psw);

    $psw = substr($psw,0,$num);

    return $psw;

}

 

 

Para llamar a la función se puede hacer así, saliendo impresos 8 caracteres (por defecto)

 

Código PHP:

echo f_genera_psw(); // imprime el password (8 caracteres por defecto)

 

 

Para poner otra cantidad distinta de caracteres, solo hay que pasarlo como parametro así.

 

Código PHP:

echo f_genera_psw(6); // imprime 6 caracteres de password

Comentarios
Añadir nuevoBuscar
¡Sólo los usuarios registrados pueden escribir comentarios!

Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved.

 
< Anterior   Siguiente >
 
 

Encuesta

¿ Que opinas de nuestro nuevo diseño Web ?
 

Estan en Linea

Hay 7 invitados en línea