Generatore di password
Genera una password casuale sicura, con gli insiemi di caratteri che scegli tu e l’entropia scritta in chiaro.
Generata qui, nel tuo browser. Non viene mai inviata né conservata.
Che cosa rende sicura una password?
La lunghezza, e l'essere imprevedibile. La forza si misura in bit di entropia: la dimensione dell'alfabeto elevata alla lunghezza. Sedici caratteri casuali valgono molto più di una password corta e astuta, perché chi attacca indovina gli schemi, e chi sceglie una password uno schema ce l'ha sempre.
Come funziona
Ogni carattere viene estratto dall’alfabeto che hai scelto usando la sorgente casuale crittografica del browser, crypto.getRandomValues: non Math.random, che è prevedibile e non ha niente a che fare con una password.
I byte che falserebbero l’estrazione vengono buttati. Un byte va da 0 a 255 e quasi nessun alfabeto divide 256 in modo esatto, quindi prendere il resto favorirebbe in silenzio i primi caratteri: i byte oltre l’ultimo multiplo intero vengono scartati e riestratti.
La forza mostrata è l’entropia in bit, lunghezza × log₂(dimensione dell’alfabeto), che è l’unica misura che significhi qualcosa per una password che nessuno ha scelto. Venti caratteri su un alfabeto di 86 fanno 128 bit.
Che cos'è un generatore di password
Una password inventata da te è indovinabile in un modo che non riesci a percepire. Gli attacchi non provano aaa, aab, aac: provano prima le password finite nei data breach, poi le parole, poi le parole con un’iniziale maiuscola, un numero e un punto esclamativo, perché è quello che fanno le persone quando si chiede loro «un simbolo». Password1! sembra una password e non lo è. Una password generata non ha quella struttura, quindi non c’è nulla da sfruttare oltre alla lunghezza e all’alfabeto.
È questo che misura l’entropia. Con un alfabeto di dimensione A e lunghezza L le password possibili sono A^L, e l’entropia è log₂(A^L) = L × log₂(A) bit. Minuscole più maiuscole più cifre fanno 62 caratteri, cioè 5,95 bit ciascuno: sedici caratteri sono 95 bit. Aggiungendo i simboli l’alfabeto arriva a 86, 6,43 bit per carattere, e venti caratteri superano i 128 bit: oltre il punto in cui indovinare è un attacco che a qualcuno convenga tentare.
Quanto deve essere lunga una password
Sedici caratteri sono un minimo ragionevole, e venti o più è la misura giusta per tutto ciò che protegge altre password: la master password del gestore, o la casella di posta da cui si possono resettare tutti gli altri account. Sotto i dodici sei dentro il raggio di chi attacca offline; il vecchio consiglio degli otto caratteri viene da quando quel lavoro costava, e non costa più.
La lunghezza batte la composizione, e non di poco. Ogni carattere in più moltiplica le possibilità per la dimensione dell'alfabeto, quindi passare da dodici a sedici con lettere e cifre aggiunge circa 24 bit: 62 alla quarta, quasi quindici milioni di volte il lavoro. Aggiungere i simboli a una password di dodici caratteri aggiunge meno di sei bit, circa cinquanta volte. Sono due miglioramenti, non lo stesso miglioramento.
L'eccezione è la password che devi digitare a memoria, dove una passphrase di cinque o sei parole casuali si ricorda meglio a pari entropia. Tutto il resto va in un gestore, dove nessuno deve ricordare niente e la lunghezza non costa nulla.
- Fino a 12 troppo corta per qualcosa che conta. Usala solo dove un sito rifiuta di più.
- 16 il minimo di lavoro per un account normale, circa 95 bit con lettere e cifre.
- 20 e oltre per una master password, la posta, o qualsiasi cosa custodisca altre credenziali. Oltre i 128 bit indovinare smette di essere l'attacco che vale la pena montare.
- Oppure una passphrase cinque o sei parole estratte a caso, per le poche password che digiti a mano.
Che cosa rende forte una password: lunghezza contro insiemi di caratteri
La forza non è una proprietà che si vede. È il numero di password ugualmente probabili che chi attacca deve scorrere, cioè la dimensione dell'alfabeto elevata alla lunghezza. Ed è il motivo per cui «deve contenere una maiuscola, un numero e un simbolo» è una regola che produce Password1! e non misura niente: la struttura è prevedibile anche se i caratteri sono vari.
Spegnere un insieme di caratteri qui restringe l'alfabeto e con esso l'entropia, ed è per questo che il numero di bit si muove quando li tocchi. Togliere i caratteri che si somigliano, 0, O, 1 e l, costa un po' di entropia e compra leggibilità: conviene per una password che qualcuno deve leggere ad alta voce o ricopiare da un foglio, non conviene altrimenti.
Quando un sito non accetta una password forte
I siti che limitano la lunghezza sono la realtà che interferisce. Un campo che accetta solo dodici caratteri, o rifiuta i simboli, ti impone una password più debole di quella che sceglieresti: imposta la lunghezza al loro massimo, attiva tutti gli insiemi che permettono, e ricorda che una password casuale corta batte comunque una lunga ma memorabile nello stesso campo.
Una password che devi ricordare è un altro problema, e una stringa casuale è la risposta sbagliata. Per le pochissime che digiti a mano, lo sblocco del computer, la master password del gestore, una passphrase di cinque o sei parole casuali si ricorda meglio a pari entropia. Tutto il resto deve stare in un password manager, dove nessuno deve ricordare niente e la lunghezza non costa nulla.
E cambiarle ogni tre mesi è quasi solo superstizione. La scadenza periodica spinge le persone verso Estate2026! e i suoi successori; sia il NIST sia l’NCSC britannico oggi sconsigliano la scadenza di routine. Cambia una password quando c’è un motivo, un data breach, un dispositivo condiviso, qualcuno che se ne va, e fa’ che sia lunga, non frequente.
Come si leggono i bit di entropia
- Sotto 50 bit: debole alla portata di un attacco offline determinato. Va bene per qualcosa di usa e getta, non per ciò che conta.
- Da 50 a 70 bit: discreta al sicuro dai tentativi online, scomoda contro un archivio di hash trafugato e attaccato offline.
- Da 70 a 100 bit: forte la fascia di lavoro per un account che conta, dato che il sito la conservi come si deve.
- Da 100 bit in su: molto forte indovinare smette di essere l’attacco plausibile. Restano il phishing, un keylogger o la violazione del servizio.
- Il tempo mostrato presuppone un attaccante offline a mille miliardi di tentativi al secondo contro un hash veloce, e in media metà dello spazio delle chiavi. È un ordine di grandezza volutamente pessimista, non una previsione: un sito che usa bcrypt o Argon2 è migliaia di volte più lento da attaccare, e un sito che si fa rubare le password in chiaro non lascia nulla da indovinare.
Entropia, hashing e salting: le parole intorno alle password
- Entropia i bit di incertezza contenuti nella password. Si sommano e si confrontano, ed è per questo che è l’unità giusta mentre «contiene un simbolo» non lo è.
- CSPRNG un generatore pseudocasuale crittograficamente sicuro, qui raggiunto con crypto.getRandomValues. Math.random è veloce, riproducibile e seminato: tutte ragioni per escluderlo.
- Bias del modulo lo squilibrio che nasce piegando un byte da 256 valori su un alfabeto che non lo divide. Piccolo, misurabile ed evitabile scartando i byte fuori range, che è quello che avviene qui.
- Hash e salt quello che il sito dovrebbe fare della tua password appena arriva. Un hash lento con un salt per utente è il motivo per cui un data breach non diventa subito un accesso.
- Autenticazione a due fattori la seconda cosa che servirebbe a un attaccante. Copre il caso che una password forte non può coprire: che venga rubata invece di indovinata.
Domande frequenti
Quanto deve essere lunga una password?
Sedici caratteri sono un minimo solido, venti o più sono meglio per tutto ciò che protegge altri account. La lunghezza dà più sicurezza di qualsiasi combinazione particolare di simboli.
Una password generata è davvero più sicura di una che invento io?
Sì, di molto. Le password umane seguono schemi che gli attaccanti modellano direttamente; una generata non ha struttura, quindi contano solo lunghezza e alfabeto.
Da dove arriva la casualità?
Da crypto.getRandomValues, la sorgente casuale crittografica del browser. Math.random non viene mai usata, e i byte che falserebbero l’estrazione vengono scartati invece di essere riusati.
La password viene inviata da qualche parte?
No. Viene generata nella pagina e non viene mai trasmessa, registrata o salvata. Stacca la rete e il generatore continua a funzionare.
Che cosa significano i bit di entropia?
Contano l’incertezza: lunghezza × log₂(dimensione dell’alfabeto). Ogni bit in più raddoppia i tentativi necessari, quindi 128 bit non è il doppio di 64: è 2⁶⁴ volte più difficile.
Devo cambiare le password periodicamente?
Non a scadenza fissa. La scadenza di routine spinge verso varianti prevedibili: NIST e NCSC consigliano di cambiarla quando c’è un motivo, non per calendario.