UTILS.
100% in de browser
🔐

Bcrypt-hashgenerator & -verificatie

Genereer een bcrypt-wachtwoordhash met een instelbare cost-factor, of verifieer een wachtwoord in platte tekst tegen een bestaande $2b$-hash. Draait volledig in je browser.

Wachtwoorden worden 100% in je browser gehasht — er wordt niets geüpload.

— uitvoer verschijnt hier —

Over deze tool

De Bcrypt-hashgenerator & -verificatie maakt en controleert bcrypt-wachtwoordhashes zonder je wachtwoord ooit naar een server te sturen. Bcrypt, ontworpen door Provos en Mazières in 1999, wikkelt de Eksblowfish key schedule in een adaptieve werkfactor: de cost-parameter stelt 2^cost key-setup-rondes in, dus het verhogen van de cost maakt elke gok exponentieel trager voor een aanvaller terwijl het goedkoop blijft voor één legitieme login. De Generate-modus leest 16 willekeurige salt-bytes uit crypto.getRandomValues van de browser, draait de Eksblowfish-setup op de door jou gekozen cost, versleutelt de 192-bit "OrpheanBeholderScryDoubt"-constante 64 keer, en produceert de standaard Modular Crypt Format-string $2b$NN$ + 22-teken base64-salt + 31-teken base64-digest.

Het algoritme draait als een eval-vrije WebAssembly-build van bcrypt die lokaal wordt geladen, dus er wordt niets geüpload en de tool werkt offline zodra hij geladen is. Bcrypt beschouwt alleen de eerste 72 bytes van het wachtwoord — de tool waarschuwt je wanneer je invoer die limiet overschrijdt zodat je nooit verrast wordt door stille afkapping. De cost-factor is instelbaar van 4 tot 16 (standaard 10); elke stap verdubbelt het werk, dus 12 is vier keer trager dan 10.

De Verify-modus haalt het $2b$/$2a$/$2y$-voorvoegsel, de cost van twee cijfers en de ingebedde salt uit een bestaande hash, herberekent de digest met het kandidaat-wachtwoord, en rapporteert wel of geen overeenkomst. Omdat de salt en cost binnen de hash-string zelf reizen, heb je alleen het wachtwoord en de opgeslagen hash nodig om een login te controleren. Alles wordt op de pagina berekend — wachtwoorden worden 100% in je browser gehasht en er wordt niets geüpload.

Veelgestelde vragen

Welke cost-factor moet ik kiezen?
Cost stelt 2^cost key-setup-rondes in. 10 (de standaard) is een gangbare basislijn; 12 is vier keer trager en een goede moderne keuze voor interactieve logins. Hogere cost weerstaat brute force beter maar duurt langer om te berekenen, dus balanceer beveiliging tegen de vertraging die elke login kan verdragen.
Waarom wordt mijn lange wachtwoord afgekapt?
Bcrypt hasht standaard alleen de eerste 72 bytes van de invoer — bytes daarna worden genegeerd. De tool waarschuwt je wanneer een wachtwoord 72 UTF-8-bytes overschrijdt zodat je weet dat de staart niet bijdraagt aan de hash. Pre-hash voor langere geheimen met SHA-256 vóór bcrypt.
Kan ik een hash verifiëren die begint met $2a$ of $2y$?
Ja. De Verify-modus accepteert de $2a$-, $2b$- en $2y$-voorvoegsels, die uitwisselbare varianten van hetzelfde algoritme zijn. Het leest de cost en salt uit de hash, herberekent met je wachtwoord, en rapporteert of ze overeenkomen.
Wordt mijn wachtwoord ergens naartoe gestuurd?
Nee. Hashen en verifiëren draaien volledig in je browser via een lokale WebAssembly-build van bcrypt. Het wachtwoord, de salt en de hash verlaten nooit je apparaat, dus je kunt echte inloggegevens veilig offline testen.

Meer tools