happytails.ai

Password Generator

Open Password Generator on Happytails.ai. This view has the same page content and links, with explicit tool capabilities. Read the processing notes before using a tool.

Tool capabilities

{
  "id": "password-generator",
  "category": "privacy-tools",
  "built": true,
  "requirements": "Cryptographic randomness, length and character controls; no secret logging or network submission.",
  "implementation": {
    "fields": [
      {
        "key": "length",
        "label": "Length",
        "value": 20,
        "type": "number"
      },
      {
        "key": "upper",
        "label": "Uppercase",
        "value": true,
        "type": "checkbox"
      },
      {
        "key": "lower",
        "label": "Lowercase",
        "value": true,
        "type": "checkbox"
      },
      {
        "key": "digits",
        "label": "Numbers",
        "value": true,
        "type": "checkbox"
      },
      {
        "key": "symbols",
        "label": "Symbols",
        "value": true,
        "type": "checkbox"
      }
    ],
    "input": false,
    "note": "Secure browser randomness; each selected group appears. Nothing is saved or uploaded.",
    "experience": {
      "automatic": false,
      "single": false,
      "inputMaxLength": 1000000,
      "inputMode": "text",
      "label": "Your text",
      "placeholder": "Type or paste your input…",
      "help": "Up to 1,000,000 characters. Review the settings before running.",
      "helpParts": [
        "Up to 1,000,000 characters.",
        "Review the settings before running."
      ],
      "action": null
    },
    "mode": "explicit",
    "interactive": false
  },
  "execution": "POST /api/v1/tools/password-generator/run",
  "api": {
    "id": "password-generator",
    "name": "Password generator",
    "category": "privacy-tools",
    "description": "Cryptographic randomness, length and character controls.",
    "notes": "Secure browser randomness; each selected group appears. Nothing is saved or uploaded.",
    "human_path": "/en/privacy-tools/password-generator/",
    "method": "POST",
    "endpoint": "/api/v1/tools/password-generator/run",
    "schema_url": "/api/v1/tools/password-generator",
    "input_schema": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "input": {
          "type": "string",
          "maxLength": 1000000,
          "default": "",
          "description": "Plain text input. File tools use files instead unless otherwise documented."
        },
        "options": {
          "type": "object",
          "additionalProperties": false,
          "properties": {
            "length": {
              "type": "number",
              "description": "Length",
              "default": 20.0
            },
            "upper": {
              "type": "boolean",
              "description": "Uppercase",
              "default": true
            },
            "lower": {
              "type": "boolean",
              "description": "Lowercase",
              "default": true
            },
            "digits": {
              "type": "boolean",
              "description": "Numbers",
              "default": true
            },
            "symbols": {
              "type": "boolean",
              "description": "Symbols",
              "default": true
            }
          }
        }
      }
    },
    "output_schema": {
      "type": "object",
      "required": [
        "tool",
        "result"
      ],
      "properties": {
        "tool": {
          "type": "string"
        },
        "result": {
          "type": "object",
          "required": [
            "text",
            "files"
          ],
          "properties": {
            "text": {
              "type": [
                "string",
                "null"
              ]
            },
            "data": {
              "description": "Parsed JSON when the textual result is JSON."
            },
            "name": {
              "type": "string"
            },
            "mime": {
              "type": "string"
            },
            "files": {
              "type": "array",
              "items": {
                "type": "object",
                "required": [
                  "name",
                  "mime",
                  "bytes",
                  "base64"
                ],
                "properties": {
                  "name": {
                    "type": "string"
                  },
                  "mime": {
                    "type": "string"
                  },
                  "bytes": {
                    "type": "integer"
                  },
                  "base64": {
                    "type": "string",
                    "contentEncoding": "base64"
                  }
                }
              }
            }
          }
        }
      }
    },
    "processing": "Server; same transformation code as browser tools",
    "limits": {
      "request_bytes": 8388608,
      "input_characters": 1000000,
      "files_bytes": 5242880,
      "max_files": 0,
      "timeout_seconds": 12
    }
  },
  "agent_processing": "Server; same transformation code as browser tools",
  "browser_agent": {
    "supported": true,
    "name": "run_current_tool",
    "discovery": "WebMCP on the human page in a supporting browser",
    "verification": "See audit/API-AUDIT.md; availability is not verification"
  }
}

Page guide

Choose a length and character set, then generate a random password.

How to use Password generator
  1. Enter the values you want to calculate and choose the relevant units or settings.
  2. Review the settings, then choose Run Password generator.
  3. Review the result, then use Copy result or a download link when available.

Useful next steps

How Password generator works

Choose a length and the character groups you want, and the generator builds a random password using your browser's cryptographically secure random source. Each character is drawn evenly from the combined set of uppercase letters, lowercase letters, digits and 22 symbols, 84 characters in all. If a password is missing any group you selected, it is thrown away and drawn again, so every selected group always appears. Length can be 4 to 256 characters, and the password is not saved or uploaded.

Before you start

Check the site's password rules first, such as maximum length and which symbols it accepts. If symbols cause problems, clear that option and add a few characters of length instead.

A worked example

With length 20 and all four groups on, one run produced $Gle86WWfNw#T]$z%1xy. From an 84 character set, a 20 character password has roughly 127 bits of entropy.

Continue your workflow: Passphrase generator, Wifi QR code, UUID generator.

Common questions

How long should a password be?

Longer is stronger. With all four character groups, each character adds about 6.4 bits of entropy, so a 16 character password has roughly 102 bits and a 20 character password about 127. The default of 20 is a sensible choice when you store passwords in a password manager.

Which symbols does the generator use?

The symbol group is ! @ # $ % ^ & * ( ) - _ = + [ ] { } : , . and ?. Some sites reject certain symbols. If yours does, turn off Symbols and generate again with a slightly longer length, or regenerate until the result fits the site's rules.

Why do I get an error with a short length?

The length must be a whole number from 4 to 256, and it must be at least the number of groups you selected so each group can appear. You also need at least one group checked. A blank or decimal length is rejected.

Is a random password better than a passphrase?

Both can be strong. A random password packs more entropy into fewer characters, which suits a password manager. A passphrase of random words is easier to type and remember. Whichever you use, make it unique for every account.