Bad Passwords

Bad Passwords handles delegated password verification. It stores an email address and a URL for that user's Argon2 password hash instead of storing the hash locally.

When someone logs in, the application fetches the current hash from that remote URL, verifies the submitted password against it, and issues a signed JWT if the check succeeds. The home page lets you register a user, exercise the login flow, and inspect the current public key used for token verification.

Register

Your password hash URL should return the plaintext Argon2 hash for this account, such as a private endpoint or static text file whose response body is only the hash string.

Login

Logout invalidates all existing tokens (docs)