How entropy is calculated
N ร logโ(wordlist size). Each extra word multiplies the search space. Separator choice, capitalisation mode, and l33t substitutions add bonus bits.
Length ร logโ(charset size). All 4 character sets enabled gives logโ(94) โ 6.55 bits per character. 20 chars = 131 bits.
Sum of logโ(pool size) per slot. Noun and adjective slots use the full word list, boosting entropy far above small grammar pools alone.
Crack time assumes 100 billion guesses/second โ an offline GPU cluster attack. Online attacks are orders of magnitude slower.
All three generators are available via a REST API on Cloudflare's edge. Metadata (IP, browser, style) is logged to Discord โ passwords are never logged.
/api/generate{
"type": "word" | "char" | "phrase",
"count": 1โ10,
// Word & phrase options
"wordCount": 2โ10,
"separator": "-" | "." | "_" | " " | "~" | "!" | "@" | โฆ | null (random),
"capMode": "first" | "last" | "random" | "vowel" | "all" | "none",
"injectNum": true | false,
"leet": true | false,
// Character options
"length": 8โ64,
"lower": true | false,
"upper": true | false,
"numbers": true | false,
"special": true | false
}
{
"passwords": [
{
"value": "C0balt-Forg3d-7Leaps-Swiftly",
"bits": 78.4,
"strength": { "label": "Good", "level": 2 },
"time": "3.1M years",
"warnings": [],
"type": "word"
}
],
"meta": { "type": "word", "count": 1, "generatedAt": "2026-04-15T10:30:00Z" }
}
curl -X POST https://YOUR_DOMAIN/api/generate \
-H "Content-Type: application/json" \
-d '{"type":"word","wordCount":6,"capMode":"random","leet":true,"count":3}'