Generatore e Verificatore di Hash Bcrypt
Genera hash di password bcrypt con un fattore di costo configurabile (round 4-15) e verifica se una password in chiaro corrisponde a un hash bcrypt esistente. Include una suddivisione visiva dell'anatomia dell'hash, un misuratore di sicurezza in tempo reale, uno stimatore costo vs velocità e una spiegazione delle varianti ($2a$, $2b$, $2y$).
Il tuo ad blocker ci impedisce di mostrare annunci
MiniWebtool è gratuito grazie agli annunci. Se questo strumento ti è stato utile, sostienici con Premium (senza annunci + più veloce) oppure inserisci MiniWebtool.com nella whitelist e ricarica la pagina.
- Oppure passa a Premium (senza annunci)
- Consenti gli annunci per MiniWebtool.com, poi ricarica
Generatore e Verificatore di Hash Bcrypt
Benvenuti nel Generatore e Verificatore di Hash Bcrypt — uno strumento online gratuito che consente di generare hash di password bcrypt crittograficamente sicuri con un fattore di costo configurabile e di verificare se una password in testo normale corrisponde a un hash bcrypt esistente. Che tu stia popolando un database, eseguendo il debug di un flusso di login, migrando utenti tra sistemi o imparando l'hashing adattivo delle password, questo strumento ti offre risultati istantanei e una scomposizione visiva didattica di come bcrypt struttura il suo formato hash di 60 caratteri.
Cos'è Bcrypt e perché usarlo?
Bcrypt è una funzione di hashing delle password adattiva basata sul cifrario Blowfish, progettata nel 1999 da Niels Provos e David Mazières. A differenza degli hash crittografici veloci come SHA-256 o MD5, bcrypt è intenzionalmente lento e include un fattore di costo regolabile che può essere aumentato man mano che l'hardware migliora. Ogni hash bcrypt incorpora anche un sale (salt) casuale unico, che impedisce agli aggressori di utilizzare rainbow table precomputate. OWASP raccomanda bcrypt come uno dei quattro algoritmi di hashing delle password accettabili per la memorizzazione delle credenziali utente nelle moderne applicazioni web.
Fattore di Costo: Il cuore della sicurezza di Bcrypt
Il fattore di costo (chiamato anche fattore di lavoro o cicli) controlla quanto sia computazionalmente costoso l'hash. È logaritmico: ogni +1 raddoppia il lavoro. Un costo di 12 richiede circa 250 millisecondi su una tipica CPU moderna; un costo di 14 richiede circa 1 secondo. La tabella seguente mostra i tempi di calcolo stimati per ogni livello di costo — scegli un valore che sia sufficientemente veloce per il tuo flusso di login ma abbastanza lento da frustrare gli aggressori.
| Costo | Cicli | Tempo Stim. | Sicurezza | Raccomandato Per |
|---|---|---|---|---|
| 4 | 2^4 |
< 1 ms | Solo test — mai in produzione | |
| 5 | 2^5 |
2 ms | Solo test — mai in produzione | |
| 6 | 2^6 |
4 ms | Solo test — mai in produzione | |
| 7 | 2^7 |
8 ms | Solo test — mai in produzione | |
| 8 | 2^8 |
16 ms | Sistemi legacy | |
| 9 | 2^9 |
31 ms | Sistemi legacy | |
| 10 | 2^10 |
62 ms | Minimo per produzione | |
| 11 | 2^11 |
125 ms | Minimo per produzione | |
| 12 | 2^12 |
250 ms | Predefinito consigliato | |
| 13 | 2^13 |
500 ms | App ad alta sicurezza | |
| 14 | 2^14 |
1.00 s | Massima sicurezza | |
| 15 | 2^15 |
2.00 s | Massima sicurezza |
Anatomia dell'Hash Bcrypt
Ogni hash bcrypt è lungo esattamente 60 caratteri e segue una struttura fissa. Comprendere ogni segmento rende molto più facile il debug dei problemi di login o la migrazione degli hash tra sistemi:
$2b$ → variante dell'algoritmo$12$ → fattore di costo (2^12 = 4096 cicli)7i..qTPY7p4ZLvKIepRKwe → sale base64 di 22 caratterilX0JB55DviohJT.JYruzy4EN6cl.q8O → digest hash di 31 caratteri
Codifica del Sale e del Digest
Bcrypt utilizza un alfabeto base64 personalizzato simile al base64 standard ma utilizza ./ invece di +/ e non utilizza padding. Questo è puramente storico e non influisce sulla sicurezza. Il sale è composto da 16 byte casuali, codificati come 22 caratteri base64; il digest è di 23 byte, codificato come 31 caratteri.
Varianti Bcrypt Spiegate
Incontrerai diversi prefissi bcrypt in circolazione. Tutti producono hash della stessa struttura, ma hanno origini distinte:
Come usare questo strumento
- Scegli la modalità: Seleziona Genera Hash per creare un nuovo hash bcrypt, oppure Verifica Hash per controllare se una password corrisponde a un hash esistente.
- Inserisci la password: Digita la password in testo normale nel campo di input. Il misuratore di byte ti avverte se la tua password si avvicina al limite di 72 byte di bcrypt.
- Imposta il fattore di costo: In modalità Genera, trascina il cursore per scegliere un fattore di costo tra 4 e 15. Il tempo di calcolo stimato e la valutazione di sicurezza si aggiornano in tempo reale.
- Incolla l'hash da verificare: In modalità Verifica, incolla l'hash bcrypt esistente di 60 caratteri che inizia con
$2a$,$2b$,$2x$o$2y$. - Esegui e leggi il risultato: Fai clic sul pulsante di azione. La modalità Genera restituisce l'hash con una scomposizione anatomica codificata a colori; la modalità Verifica mostra un grande indicatore CORRISPONDENZA o NESSUNA CORRISPONDENZA con il fattore di costo originale.
Il limite di password di 72 byte
Bcrypt si basa sulla fase di setup della chiave Blowfish, che consuma solo i primi 72 byte della password. Le password più lunghe di 72 byte vengono troncate silenziosamente dalle librerie più vecchie o rifiutate categoricamente da quelle più recenti. Nota che contano i byte, non i caratteri — una singola emoji è di 4 byte e la maggior parte dei caratteri non ASCII occupa 2-4 byte in UTF-8. Se la tua applicazione accetta password arbitrariamente lunghe, la mitigazione standard è eseguire il pre-hash della password con SHA-256 e codificare il digest in base64 prima di passarlo a bcrypt; questo produce un input fisso di 44 byte che rientra comodamente nel limite.
Quando scegliere Bcrypt rispetto a Argon2 o Scrypt
Le moderne raccomandazioni per l'hashing delle password di OWASP e IETF (RFC 9106) elencano quattro algoritmi accettabili: Argon2id (preferito per nuove applicazioni), bcrypt, scrypt e PBKDF2. Scegli bcrypt quando:
- Hai bisogno di un'ampia compatibilità — ogni linguaggio principale ha una libreria bcrypt matura
- Stai lavorando con un sistema esistente che utilizza già bcrypt
- Vuoi un algoritmo testato sul campo con oltre 25 anni di crittoanalisi
- L'hashing memory-hard (Argon2id, scrypt) è impraticabile per il tuo ambiente
Scegli Argon2id se stai costruendo un nuovo sistema senza vincoli di compatibilità — è il vincitore moderno della Password Hashing Competition e fornisce resistenza contro gli attacchi GPU e FPGA che bcrypt non può eguagliare.
Casi d'uso pratici
Per gli Sviluppatori
- Popolare database di sviluppo con utenti di test realistici senza eseguire l'intero flusso di registrazione
- Generare dati fixture per test di integrazione che esercitano il percorso di login
- Eseguire il debug dei login falliti verificando l'hash di produzione rispetto alla password segnalata dall'utente
- Migrare i legacy hash
$2a$a$2b$ri-eseguendo l'hash al prossimo login - Regolare il fattore di costo per l'ambiente di produzione misurando il tempo di calcolo effettivo
Per gli Ingegneri della Sicurezza
- Verificare che un servizio di autenticazione di terze parti produca hash con il fattore di costo dichiarato
- Controllare la memorizzazione delle password ispezionando la variante e il costo dell'hash nei campioni di produzione
- Creare materiale didattico che mostri come l'anatomia di bcrypt lo renda resistente alle rainbow table
Per chi impara
- Generare la stessa password due volte per vedere come il sale produce hash diversi
- Sperimentare con diversi fattori di costo per percepire in prima persona l'effetto del raddoppio
- Verificare un hash noto per capire come bcrypt estrae il costo e il sale prima di eseguire l'hash del candidato
Domande Frequenti (FAQ)
Quale fattore di costo dovrei usare per bcrypt?
OWASP raccomanda attualmente un fattore di costo di almeno 10, con 12 come buon valore predefinito moderno che richiede circa 250 millisecondi su un server tipico. Il costo è logaritmico, quindi ogni +1 raddoppia il lavoro. Il costo 14 è appropriato per applicazioni ad alta sicurezza, mentre il costo 15 è il massimo pratico per i login interattivi. Non usare mai un costo inferiore a 10 in produzione.
Qual è la differenza tra $2a$, $2b$, $2x$ e $2y$?
Tutte e quattro sono varianti di bcrypt distinte dal prefisso. $2a$ è la revisione originale; $2x$ e $2y$ erano correzioni PHP di emergenza per un bug di estensione del segno scoperto nel 2011; $2b$ è la moderna implementazione di riferimento che ha risolto un bug di wraparound nelle password lunghe. Gli hash generati con qualsiasi variante rimangono verificabili. Le librerie moderne producono $2b$ per impostazione predefinita e dovresti preferirlo per i nuovi hash.
La password che inserisco viene inviata a un server?
Il modulo viene elaborato lato server tramite HTTPS per eseguire il calcolo bcrypt, ma né la password né l'hash risultante vengono loggati o memorizzati — ogni richiesta viene elaborata e scartata. Per assoluta paranoia sulle password di test, non incollare mai una vera password di produzione in alcuno strumento online. Usa questo strumento con password di prova usa-e-getta o in un ambiente di sviluppo locale.
Perché bcrypt ha un limite di password di 72 byte?
Bcrypt si basa sulla fase di setup della chiave Blowfish, che consuma solo i primi 72 byte di input. Le password più lunghe di 72 byte vengono troncate silenziosamente dalle librerie più vecchie o rifiutate da quelle più recenti. Per supportare password arbitrariamente lunghe, pre-hash con SHA-256 e codifica il digest in base64 prima di passarlo a bcrypt. Questo strumento avverte quando la password supera il limite.
Posso verificare un hash generato da un'altra libreria bcrypt?
Sì. Tutte le implementazioni di bcrypt seguono lo stesso formato wire ($variant$cost$salt+digest, 60 caratteri totali) e producono hash interoperabili. Un hash creato con Node.js bcrypt, PHP password_hash, Python passlib, Spring Security o qualsiasi libreria conforme verrà verificato correttamente qui, purché il prefisso della variante sia riconosciuto.
Perché generando due volte la stessa password si ottiene un hash diverso?
Bcrypt genera automaticamente un nuovo sale casuale da 16 byte per ogni hash. Il sale viene mescolato nell'algoritmo e incorporato nell'output, quindi due hash della stessa password non sono quasi mai identici. La verifica funziona perché checkpw estrae il costo e il sale dall'hash memorizzato e ri-esegue bcrypt con quei parametri esatti prima di confrontare il digest.
Posso recuperare la password originale da un hash bcrypt?
No. Bcrypt è una funzione unidirezionale — non esiste un'operazione di decrittazione. L'unico modo per trovare la password originale da un hash è indovinare le password ed eseguirle attraverso bcrypt con lo stesso costo e sale fino a quando i digest corrispondono, che è esattamente ciò che fanno gli aggressori durante un attacco a forza bruta (brute-force). L'intero scopo del costo adattivo di bcrypt è rendere tali tentativi proibitivi.
Funziona su dispositivi mobili?
Sì. L'interfaccia è completamente responsive e funziona su smartphone, tablet e desktop. Il selettore di modalità, il cursore del costo e i pannelli dei risultati si adattano tutti agli schermi stretti.
Risorse Aggiuntive
Cita questo contenuto, pagina o strumento come:
"Generatore e Verificatore di Hash Bcrypt" su https://MiniWebtool.com/it// di MiniWebtool, https://MiniWebtool.com/
dal team miniwebtool. Aggiornato: 26 apr 2026