Generator — Examples

Hands-on runs with the Generator: a strong password, a passphrase, Wi-Fi with a QR code, WordPress keys, a .htpasswd line, TOTP 2FA, and fetching via curl.

Back to the overview: Generator · Open the tool live: www.jpkc.com/tools/generator/

The manual explains every tab and parameter. This page adds concrete workflows: common tasks, step by step. The interface is in English, so the tab and button names match the tool. All values shown are examples; your results will be different random values every time.

Example 1: Generate a genuinely strong password

You need a password for a new account.

  1. Open the Generator; the Passwords tab is already active.
  2. Set Complexity to a-z + A-Z + 0-9 + more specials (the largest character set). If the target system dislikes specials, choose less specials instead.
  3. Enter a generous value under Length — 24 is the default; for highly sensitive accounts go to 32 or beyond (up to 128).
  4. If someone will have to type the password, turn on Exclude look-alikes; then 0 O o 1 l I are left out.
  5. Click Generate Password. You get something like T7v=ka-2Rm!eW9qZ$ub#Lp4x (example), next to it the very strong badge with "≈ 151 bits of entropy". Copy puts it on the clipboard.

Need several at once — for a batch of new accounts, say? Set How many to 5, 10, or 20, and each password lands on its own line.

If you need to remember the password but want to keep it compact, pick Apple-style: the interface then shows Blocks rather than length. With 4 blocks you get a pronounceable password like kibavu-se4iRu-pymuky-tazefa (example, about 90 bits) — with exactly one digit and one uppercase letter.

Example 2: Generate a memorable passphrase

You need a password you can remember and comfortably type on a phone — the master password for your password manager, for instance.

  1. In the Passwords tab, set Complexity to Passphrase (words from the EFF list). The tool loads the word list at that moment.
  2. Leave Words at 6 and the separator at -. Add a digit is already on; switch on Capitalize words if the target system requires uppercase letters.
  3. Click Generate Password. You get something like pellet-unbiased-cubicle7-snore-quarry-dwelling (example), along with "≈ 83 bits of entropy".
  4. Don't like the combination? Just generate again — every result is equally strong as long as the word count stays the same.

The Generator no longer produces password hashes for applications (bcrypt, Argon2id, PBKDF2); that's what the Hash Generator is for.

Example 3: Guest Wi-Fi with a QR code

You're setting up a guest network and want visitors to connect with their phone camera.

  1. Switch to the WLAN tab.
  2. Set Complexity to a-z + A-Z + 0-9 + specials and leave Length at 63.
  3. Click Generate WLAN Key and enter the key in your router.
  4. Under Network name (SSID), type the network name, e.g. Guest-WiFi. Under Security, choose WPA / WPA2 or — if your router only offers WPA3 — WPA3 (SAE). If the network doesn't broadcast its SSID, switch on Hidden network.
  5. The QR code appears immediately. Save QR Code stores it as wifi-qr.png, ready to print or put in a frame by the door.

Nobody has to type a 63-character key ever again.

Example 4: WordPress security keys for wp-config.php

When setting up or hardening a WordPress install.

  1. Switch to the WordPress tab.
  2. Leave Key Length at 64 (default).
  3. Under Format, choose wp-config.php (define) — or .env (Bedrock / Roots) if your install reads the keys from a .env file.
  4. Click Generate Keys. You get a finished block of eight lines (AUTH_KEY, SECURE_AUTH_KEY, … NONCE_SALT).
  5. Copy and paste the eight lines into wp-config.php or .env (replacing the placeholders there). All logged-in sessions become invalid in the process — that's normal and intended when you rotate keys.

If you also want to tie the keys to the server, click Extreme Keys instead: the panel opens with the defaults No rotation (recommended) and Server Address as the only dynamic component; a second click generates the PHP code. If you add Client IP, User-Agent, or a rotation, IP changes, browser updates, or the rotation interval will log your users out automatically — the warning in the panel says so plainly.

Example 5: A .htpasswd line for Basic Auth

You want to protect a directory with Basic Auth, a staging environment for instance.

  1. Switch to the .htpasswd tab.

  2. Enter the user name under Username, e.g. webuser (no spaces, no colon).

  3. Leave Algorithm at bcrypt (recommended, htpasswd -B) and bcrypt cost at 10. Pick APR1-MD5 (legacy, htpasswd -m) only if the server can't handle bcrypt.

  4. Click Generate next to Password — or type your own password. It stays in your browser.

  5. Click Create .htpasswd line. You get something like:

    webuser:$2y$10$…

    (Example value.)

  6. Copy line and add it to the .htpasswd. Give the plaintext password from the Password field to the person who should log in.

For bcrypt, the server needs Apache 2.4 or an nginx whose system crypt() supports bcrypt — the note below the result reminds you of that.

Example 6: Set up two-factor authentication via TOTP

You want to add a TOTP code to your authenticator, for a service or for testing.

  1. Switch to the OTP tab.
  2. Enter the identifier under Account Name (e.g. the email address) and the service name under Issuer (it later appears as the heading in the authenticator).
  3. A Secret (Base32) is already filled in; click Generate for a new one if needed. Leave Interval at 30 seconds, Digits at 6, and Algorithm at SHA-1 (all apps) — every common app understands that.
  4. Scan the QR code with your authenticator app — or copy/open the Key URL (otpauth://…). Use Save QR Code to keep the code as a PNG.
  5. Type the code your app shows into Check a code. If you see ✓ valid now, everything is set up correctly; previous window or next window means the code just rolled over or the clocks are slightly apart. You also see Previous, Current OTP, and Next, plus the seconds left under Remaining.

Important: the secret is the actual sensitive material — keep it safe (it is created and stays entirely in your browser). Anyone with the secret can generate valid codes.

Example 7: Fetch passwords and keys from a script

You provision servers by script and need a fresh database password and a salt along the way — without a browser.

DB_PASS="$(curl -s https://www.jpkc.com/tools/generator/pws/32/)"
APP_SALT="$(curl -s https://www.jpkc.com/tools/generator/salt/64/)"
curl -s "https://www.jpkc.com/tools/generator/wp/64/" >> wp-keys.txt

The text API answers with plain text; here the server generates the values. pws returns purely alphanumeric values — handy when the password later ends up unquoted in a config file or on a command line. More than 120 requests per minute and IP get an HTTP 429 with a Retry-After header, so throttle your loops. All endpoints are listed in the manual.


There's more depth elsewhere: the overview for the big picture, the manual for every parameter, and the tips & tricks for strategy and pitfalls. You can try everything directly in the tool.