Generate and verify bcrypt password hashes — Laravel & PHP compatible.
Hash a password with bcrypt the same way Laravel's Hash::make() and PHP's password_hash() do, then paste the $2y$ result straight into your database. Pick a cost factor, or switch to Verify to check whether a plain password matches an existing hash. Everything runs locally in your browser — nothing is uploaded.
Higher is slower and stronger. Laravel’s default is 12.
PHP / Laravel — use $2y$for Laravel & PHP.
Everything runs in your browser — passwords and hashes are never uploaded. bcrypt only reads the first 72 bytes of a password.
Runs entirely in your browser — nothing is uploaded.
A plain SHA-256 or MD5 digest won't authenticate — Laravel stores bcrypt hashes that start with $2y$. This tool produces exactly that format, so it drops straight into the password column and passes Hash::check().
They're all the same bcrypt algorithm — only the version marker differs. PHP and Laravel write $2y$, Node libraries use $2b$, and $2a$ is legacy. A $2y$ hash verifies everywhere, which is why it's the default here.
bcrypt mixes in a random salt on each run, so the same password produces a different hash each time. That's by design — the salt and cost are stored inside the hash string, so verification still works.
12 is Laravel's current default and a good balance. Higher values are more resistant to brute force but slower to compute and verify.