Verificator Bcrypt
Verificați dacă o parolă corespunde unui hash bcrypt. Lipiți parola și un hash $2a$, $2b$ sau $2y$, iar instrumentul citește sarea și costul din șir, recalculează hashul și indică dacă se potrivesc. Îi ajută pe dezvoltatori să depaneze problemele de conectare, să confirme migrările bazelor de date și să testeze hashuri din PHP, Node.js sau Python. Hashurile cu un cost mai mare de 12 sunt refuzate, iar parola nu este niciodată afișată.
Întrebări frecvente
Cum funcționează verificarea bcrypt?
Instrumentul citește versiunea, costul și sarea din șirul hashului, calculează hashul parolei dvs. folosind exact aceleași setări și compară rezultatul cu hashul stocat. Dacă sunt identice, răspunsul este „se potrivesc”; în caz contrar, „nu se potrivesc”.
Ce formate de hash sunt acceptate?
Instrumentul acceptă formatul modular crypt cu prefixele $2a$, $2b$ și $2y$, un cost din două cifre și 53 de caractere pentru sare și hash. Acestea acoperă PHP password_hash, Node.js bcrypt și bcryptjs, Python bcrypt și Spring Security.
De ce este respins hashul meu?
Hashul trebuie să aibă exact 60 de caractere, în formatul $2b$10$ urmat de 53 de caractere din alfabetul bcrypt. Verificați să nu fi fost trunchiat de o coloană din baza de date sau încadrat între ghilimele. Hashurile cu un cost mai mare de 12 sunt refuzate pentru a menține serviciul rapid.
Pot încerca un exemplu cunoscut?
Vectorul de test publicat pentru jBCrypt $2a$06$If6bvum7DFjUnE9p2uDeDu0YHzrHM6tf.iqN8.yx.jNN1ILEf7h0i corespunde parolei abc. Dacă introduceți ambele valori, rezultatul este „se potrivesc”, iar pentru orice altă parolă rezultatul este „nu se potrivesc”.
De ce este limita de cost 12?
Verificarea unui hash costă la fel de mult ca și crearea lui, iar fiecare treaptă de cost dublează timpul. Costurile de peste 12 pot necesita câteva secunde, așa că instrumentul le refuză pentru a nu bloca serverul.
Verificatorul afișează sau stochează parola mea?
Nu. Răspunsul conține doar hashul și rezultatul verificării, niciodată parola. Nimic nu este înregistrat în jurnale sau salvat.
Există o lungime maximă a parolei?
bcrypt citește doar primii 72 de octeți ai unei parole, iar acest instrument respinge parolele mai lungi în loc să le trunchieze. Dacă sistemul dvs. a trunchiat o parolă mai lungă când a creat hashul, introduceți doar primii 72 de octeți.
Care este diferența dintre $2a$, $2b$ și $2y$?
Acestea indică remedieri pentru erori din implementări mai vechi: $2y$ provine din remedierea crypt_blowfish a PHP, iar $2b$ din remedierea OpenBSD pentru parole lungi. Pentru parole valide de până la 72 de octeți, acestea calculează același hash, așa că instrumentul le verifică pe toate trei.
Pot verifica aici hashuri din alți algoritmi?
Nu. Acest instrument verifică doar hashuri bcrypt. Folosiți Verificatorul Argon2 pentru șirurile care încep cu $argon2.
De ce un hash bcrypt nou al parolei mele nu este identic cu cel stocat?
Fiecare hash bcrypt folosește o sare aleatorie nouă, așa că două hashuri ale aceleiași parole sunt întotdeauna șiruri diferite. De aceea, verificarea recalculează hashul folosind sarea stocată, în loc să compare două hashuri.