Drop any file to identify it
No upload. No signup. No sending your file halfway across the internet.
We tell you what it is, right here in your browser.
Drop it!
Let go to identify this file.
Couldn't identify this file
Need to convert it? fwip it →
An .htpasswd file stores the user/password pairs Apache (or nginx with the right module) checks for HTTP Basic Authentication. Format is `username:hash` per line — usernames in plain text, passwords hashed with bcrypt, MD5 (Apache's APR1 variant), SHA-1, or crypt. bcrypt is the only option you should use today; anything else is fast enough to brute-force from a leaked file.
Generate with the `htpasswd` CLI (ships with Apache): `htpasswd -B -c .htpasswd alice` creates a new file with a bcrypt-hashed password for alice. The `-c` flag creates a new file — never use it on an existing file because it overwrites everything. The `-B` flag selects bcrypt. Drop the resulting file outside your web root so it can't be served — typical placement is `/etc/apache2/.htpasswd` or `/etc/nginx/.htpasswd`.
Basic Auth is fine for low-stakes protection: a staging site gated from the public internet, an internal admin page, a private package registry. The password is sent on every request as base64 (not encryption — just encoding) so always serve it over HTTPS. For real authentication, use a session-based system (cookies, JWTs, OAuth). .htpasswd files are also commonly used in CI/CD to gate access to private Docker registries and self-hosted package indexes.
* For generating / managing entries