Corsi on-line

Generatore di password casuali

  • CommentiScrivi un commento
  • ForumDiscuti sul forum
  • PrevInterazione tra PHP e MS Access
  • NextCreare un file Excel con PHP

Nello sviluppo di applicazioni di autenticazione si pu˛ incontrare la necessitÓ di dover generare valori casuali da utilizzare come password.
In questo articolo vedremo, appunto, come fare ci˛ utilizzando le funziuoni chr() e rand() offerte dal PHP.

Nello specifico poniamo di avere la necessitÓ di creare delle password casuali di 10 caratteri composte sia da numeri che da lettere.
Ecco il codice:

<?
// Imposto la lunghezza della password a 10 caratteri
$lung_pass = 10;

// Creo un ciclo for che si ripete per il valore di $lung_pass
for ($x=1; $x<=$lung_pass; $x++)
{
  // Se $x Ŕ multiplo di 2...
  if ($x % 2){
    // 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
    $mypass = $mypass . chr(rand(97,122));

  // Se $x non Ŕ multiplo di 2...
  }else{
    // Aggiungo alla password un numero compreso tra 0 e 9
    $mypass = $mypass . rand(0,9);
  }
}

// Stampo a video il risultato
echo $mypass;
?>
Come unica nota vorrei soffermarmi un istante sulla funzione chr() la quale serve per recuperare un carattere ASCII attraverso l'indicazione del suo numero di corrispondenza all'interno della tabella dei caratteri ascii (vedi sito Asciitable.com).

Nel nostro caso abbiamo utilizzato chr() insieme a rand() per generare, appunto, un numero compreso tra 97 e 122, numeri che corrispondono alle lettere del nostro alfabeto.

Corsi
  • Corso Linux
    Corso Linux
    Guida completa al sistema open-source. A partire da 39 €
  • Corso MySQL
    Corso MySQL
    Gestione del database open-source. A partire da 39 €
  • Corso PHP
    Corso PHP
    Creare siti web dinamici avanzati con PHP e MySQL. A partire da 39 €
Vedi anche...
Guide