Convertitore gratuito

Password Bcrypt Generatore

Genera istantaneamente hash di password bcrypt sicuri nel tuo browser. Scegli il fattore di costo e l'hash delle password lato client: completamente privato e gratuito.

Informazioni su questo strumento

bcrypt è una funzione di hashing delle password progettata da Niels Provos e David Mazières nel 1999, derivata dal cifrario Blowfish. A differenza delle funzioni di hash generiche come SHA-256, bcrypt è deliberatamente lento (e configurabile lentamente, tramite un parametro di costo) che è esattamente la proprietà di cui ha bisogno un hash di password. Una funzione hash più veloce consente agli aggressori di forzare più candidati al secondo; uno più lento li limita.

bcrypt incorpora automaticamente anche il sale per password, eliminando un'intera classe di attacchi basati su tabelle arcobaleno precalcolate. I parametri salt e cost vengono archiviati come parte dell'output di bcrypt, quindi la verifica richiede solo l'hash archiviato e la password candidata, senza una gestione salt separata. Questa combinazione di lentezza, salt e formato autonomo ha reso bcrypt l'hash della password predefinito per due decenni e una scelta forte oggi.

Esistono alternative moderne. Argon2 ha vinto il concorso Password Hashing 2015 e offre durezza della memoria oltre alla durezza del tempo. scrypt offre proprietà simili. Per i nuovi progetti, Argon2id è la scelta consigliata. bcrypt rimane accettabile e ampiamente utilizzato, in particolare negli ambienti in cui Argon2 non è disponibile.

Perché eseguire l'hash delle password con bcrypt

Memorizzare le password come testo normale è una pratica negligente. Memorizzarli con un hash veloce come SHA-256 è appena migliore: le GPU moderne calcolano miliardi di hash SHA-256 al secondo, rendendo possibili attacchi di forza bruta contro qualsiasi password comune in poche ore. La lentezza deliberata di bcrypt sposta l'economia: con un fattore di costo 12, un utente malintenzionato spende circa 250 ms per ogni password candidata, rendendo la forza bruta impraticabile per qualsiasi password non banale.

Il salt automatico per password di bcrypt sconfigge anche gli attacchi Rainbow Table. Due utenti con la stessa password producono hash bcrypt diversi perché i loro salt differiscono. La compromissione del database delle password non consente a un utente malintenzionato di identificare rapidamente le password comuni o i risultati della tabella precalcolata.

Come usarlo

Digita una password, scegli il costo, ottieni l'hash.

  1. Inserisci la password: Digitare la password da hash. Lo strumento funziona interamente nel tuo browser; la password non viene trasmessa da nessuna parte.
  2. Scegli il fattore di costo: Il valore predefinito è 10, che produce circa 100 ms di tempo di hashing sull'hardware moderno. 12 è consigliato per nuove applicazioni (250 ms). Valori più alti aumentano la sicurezza a scapito di una verifica più lenta.
  3. Genera: L'hash genera un salt casuale di 16 byte, esegue la derivazione della chiave bcrypt e produce un hash nel formato standard $2b$.
  4. Usa l'hashish: Archivia l'output completo ($2b$cost$saltAndHash) nel database delle password. La verifica utilizza la stessa libreria per confrontare un candidato con l'hash archiviato.

Casi d'uso comuni

Dettagli tecnici

bcrypt utilizza una fase di impostazione della chiave del codice Blowfish modificata, ripetuta 2 volte. Il fattore costo è logaritmico: il costo 12 è due volte più lento del costo 11, quattro volte più lento del costo 10. Questo ridimensionamento logaritmico consente agli amministratori di aumentare i costi nel tempo man mano che l'hardware migliora, senza riprogettare il sistema.

Il formato di output è $version$cost$saltAndHash dove saltAndHash è codificato in base64 con un alfabeto personalizzato. La versione è in genere $2b$ (la variante moderna con il bug avvolgente risolto) o $2y$ (specifico per PHP, equivalente). Il sale è di 16 byte; l'hash è di 24 byte; insieme codificano in 53 caratteri di custom-base64.

La lunghezza massima dell'input è 72 byte (limite di lunghezza della chiave Blowfish). Le password più lunghe vengono troncate silenziosamente, il che è una stranezza di Bcrypt di vecchia data. La procedura migliore consiste nel limitare la lunghezza della password a 72 byte o nel pre-hash con SHA-256 per normalizzare la lunghezza prima di bcrypt.

Migliori pratiche

Domande frequenti

Posso personalizzare l'output generato?
SÌ. Lo strumento fornisce varie opzioni di personalizzazione per adattare l'output alle vostre esigenze specifiche. Regola le impostazioni prima di generare o rigenera con opzioni diverse.
Il contenuto generato è gratuito?
SÌ. Tutto ciò che generi con questo strumento può essere utilizzato per scopi personali, educativi o commerciali senza alcuna restrizione o requisito di attribuzione.
Ciò richiede un account?
No. Lo strumento è pronto per l'uso immediatamente senza registrazione, e-mail o registrazione. Basta aprire la pagina e iniziare a generare.
I miei dati inseriti vengono mantenuti privati?
SÌ. Tutta l'elaborazione avviene nel tuo browser. I tuoi dati di input e l'output generato non vengono mai inviati a nessun server esterno.
Dovrei aggiungere il mio sale?
No. bcrypt genera e memorizza automaticamente un salt casuale. Aggiungere il tuo sale non è necessario e può causare bug subdoli. Utilizza la generazione salt predefinita della libreria.
La password viene inviata a un server?
No. L'hashing bcrypt avviene nel tuo browser. La password non lascia mai il tuo dispositivo.
Perché esistono le varianti $2a$, $2b$, $2y$?
$2a$ è l'originale. $2b$ corregge un bug scoperto nel 2014. $2y$ è specifico per PHP, funzionalmente equivalente a $2b$. I nuovi sistemi dovrebbero produrre hash da $ 2 miliardi.
Posso eseguire il downgrade di un hash ad alto costo a un costo inferiore?
No. L'hash include il costo come parte dell'output e la verifica richiede lo stesso costo. Per modificare il costo, ripetere l'hash al successivo accesso riuscito.