Creare l'hash di un account amministratore di test
Genera un valore pbkdf2-sha256$… per inserire un utente direttamente in un database di sviluppo o in un file di seed, senza scrivere script.
Calcola un hash PBKDF2 con salt casuale, SHA-256 o SHA-512 e il numero di iterazioni raccomandato da OWASP, nel formato pbkdf2-sha256$…, poi verifica una password rispetto a esso. Elaborazione locale.
OWASP raccomanda 600.000 iterazioni per SHA-256 e 210.000 per SHA-512: più sono, più costa ogni tentativo di un attaccante.
Contiene algoritmo, iterazioni, salt e hash: tutto ciò che serve per verificare in seguito.
Questo strumento deriva un hash PBKDF2 da una password con un salt casuale e il numero di iterazioni raccomandato, poi verifica una password rispetto a un valore già codificato. È pensato per gli sviluppatori che implementano o fanno debug della memorizzazione delle password, preparano un account di test o vogliono capire l'effetto di salt e iterazioni.
PBKDF2, definito dalla RFC 8018 (PKCS #5 v2.1), applica una funzione HMAC alla password e al salt, poi reinserisce il risultato in HMAC centinaia di migliaia di volte: così ogni tentativo di un attaccante costa quanto un accesso legittimo. Lo strumento offre HMAC-SHA-256 con 600.000 iterazioni predefinite e HMAC-SHA-512 con 210.000, i minimi dell'OWASP Password Storage Cheat Sheet. Il salt casuale (da 8 a 128 byte, 16 per impostazione predefinita) rende ogni hash unico anche se due utenti hanno la stessa password, neutralizzando le rainbow table. La lunghezza della chiave derivata va da 16 a 128 byte, 32 per impostazione predefinita; come riferimento, PBKDF2-HMAC-SHA-256 di «password» con salt «salt», 1 iterazione e 32 byte dà 120fb6cffcf8b32c43e7225256c4f837a86548c92ccc35480805987cb70be17b.
Il risultato è codificato su una riga: pbkdf2-sha256$600000$<salt>$<hash>, con salt e hash in Base64URL. Questa stringa contiene tutto il necessario per verificare in seguito una password: algoritmo, iterazioni, salt e impronta attesa. In modalità verifica, lo strumento legge questi parametri, ricalcola la derivazione con la password inserita e confronta le due impronte in tempo costante, così la durata non rivela a quale byte divergono. Il calcolo usa la Web Crypto API (deriveBits), quindi la password non lascia mai il tuo dispositivo.
Digita la password, scegli SHA-256 o SHA-512 e regola se serve la dimensione del salt, il numero di iterazioni e la lunghezza della chiave.
Lo strumento genera un salt casuale, calcola PBKDF2 e mostra il valore codificato pbkdf2-sha256$iterazioni$salt$hash, pronto da copiare.
Incolla un valore codificato esistente e la password da provare: il risultato indica se corrisponde, con l'algoritmo e le iterazioni letti dal valore.
Genera un valore pbkdf2-sha256$… per inserire un utente direttamente in un database di sviluppo o in un file di seed, senza scrivere script.
Incolla l'hash salvato nel database e la password presunta: lo strumento ti dice se corrispondono, così sai se il problema è la password o il codice di verifica.
Confronta il tempo di calcolo con 210.000 o 600.000 iterazioni sulla tua macchina per scegliere un'impostazione che resti comoda all'accesso e rallenti gli attacchi offline.
Sì, a patto di usare un numero di iterazioni elevato e un salt unico. Il suo limite è che non usa memoria, il che lo rende più facile da accelerare su GPU rispetto ad Argon2id o scrypt. Per questo OWASP raccomanda Argon2id come prima scelta e PBKDF2 soprattutto quando è richiesta la conformità FIPS-140.
Tutte e tre sono funzioni lente pensate per le password. PBKDF2 regola solo il tempo di calcolo; bcrypt aggiunge un po' di memoria ma tronca le password a 72 byte; Argon2id, vincitore della Password Hashing Competition, regola sia il tempo sia la memoria. Il vantaggio di PBKDF2 è che è disponibile ovunque, anche in Web Crypto e nei moduli validati FIPS.
L'OWASP Password Storage Cheat Sheet raccomanda almeno 600.000 iterazioni per PBKDF2-HMAC-SHA256 e 210.000 per PBKDF2-HMAC-SHA512. Il NIST SP 800-63B chiede semplicemente un costo tanto alto quanto le prestazioni del server lo consentono. In pratica, punta a circa 100 ms di calcolo per accesso sul tuo server.
No, il salt è salvato in chiaro accanto all'hash, ed è proprio ciò che fa il valore pbkdf2-sha256$… Il suo compito è essere unico e casuale per ogni password, per impedire le tabelle precalcolate e nascondere il fatto che due utenti condividono la stessa password. Un segreto aggiuntivo conservato fuori dal database, detto pepper, è una protezione distinta e facoltativa.
No, PBKDF2 è unidirezionale: un attaccante può solo indovinare password e ricalcolare la derivazione per ciascuna. Le iterazioni rendono costoso ogni tentativo, ma una password comune verrà comunque trovata in fretta. La robustezza finale dipende quindi anche dalla qualità della password.
Il calcolo avviene solo nel tuo browser con Web Crypto: né la password né l'hash vengono inviati. Per prudenza, usa comunque una password di prova quando generi esempi o condividi uno screenshot.
Strumenti correlati
Strumenti simili o complementari a questo.
Genera password sicure e casuali da 8 a 128 caratteri, con l’entropia indicata.
Verifica quanto è robusta una password: entropia, schemi deboli, tempo di violazione stimato e consigli.
Verifica se due hash o somme di controllo coincidono, indipendentemente da maiuscole, spazi o due punti.
Scopri quando usare crittografia, hashing, HMAC o PBKDF2 per riservatezza, integrità, autenticazione e password.
Comprendi come si collegano OAuth 2.0, PKCE, JWT, JWK e JWKS: autorizzazione, token, chiavi pubbliche e verifica.
Impara a costruire una CSP progressiva, comprenderne le direttive ed evitare policy troppo permissive o che rompono il sito.
Aggiungi un elemento visivo a una pagina PDF scegliendo posizione, dimensioni e qualità, poi verifica il risultato prima della condivisione.