Generare password casuale con PHP

Obiettivo del tutorial: Costruire una password di 15 caratteri ognuno dei quali è generato in maniera casuale. Utilizzeremo le funzioni rand() e chr().

rand() – Un problema comune a molti programmatori è quello di generare password casuali.

In questo tutorial studieremo il modo per generare una password casuale di lunghezza 15 caratteri

L’algoritmo utilizza una politica diversa di “cifratura” a seconda se il carattere sia pari o dispari. Ai caratteri pari aggiungo una lettera casuale usando chr() in combinazione con rand() che genera un valore numerico compreso tra 97 e 122, numeri che corrispondono alle lettere dell’alfabeto nella tabella dei caratteri ASCII.

Se il carattere è dispari aggiungo un numero a caso tra 0-9.

Al termine visualizzo a video il risultato.

Forse il codice può chiarire meglio di ogni parola:

<?
// Lunghezza della password a 15 caratteri
$lunghezza_pass = 15;

// Ciclo su ogni carattere della password
for ($i=1; $i<=$lunghezza_pass; $i++)
{
// Se $i è multiplo di 2...
if ($i % 2){

/* Aggiungo una lettera casuale usando chr() 
in combinazione con rand() */

$pass_generata = $pass_generata . chr(rand(97,122));

// Se $x non è multiplo di 2...
}else{

// Aggiungo alla password un numero 
// compreso tra 0 e 9

$pass_generata = $pass_generata . rand(0,9);
}
}
// Visualizzo a video il risultato

echo $pass_generata;
?>