Alex Babel
All tools

Hash

Argon2id, bcrypt, scrypt and the usual digests.

Runs entirely in your browser. Nothing is sent anywhere.

They are the work factor, and they exist for exactly one reason: to make guessing expensive. A password hash has to be slow. SHA-256 will hash a password in well under a microsecond, so an attacker holding your database can try billions of guesses a second against it.

Tune it to the slowest hardware that must run it: pick the highest setting where a single hash still takes about 250–500 ms. Then store the parameters with the hash — Argon2 and bcrypt encode them in the output string for you, which is why those outputs start with $argon2id$v=19$m=… and $2a$12$…

Password hashing runs through hash-wasm in a WebAssembly module loaded on demand; the SHA-2 family uses the browser's own crypto and loads nothing. Either way the input never leaves this page. Hashing a real password in a browser is a dev convenience — in production, hash on the server.