Files
himitsu/config.sh
T
2026-05-24 23:01:14 -07:00

49 lines
2.0 KiB
Bash

# secret config — source'd by the secret command
# Location: ~/.config/himi/config.sh
# ------------------------------------------------------------------------------
# Character sets for random portions
# ------------------------------------------------------------------------------
# Crockford Base32 (32 chars, 5.0 bits/char)
ALPHA_CHARSET='0123456789ABCDEFGHJKMNPQRSTVWXYZ'
# Ultra-safe - no easily confused characters (24 chars, 4.6 bits/char)
SAFE_CHARSET='ACDEFGHJKMNPQRTWXY234679'
NUM_CHARSET='0123456789'
SPECIAL_CHARSET='!?@#%~=+'
# ------------------------------------------------------------------------------
# Word filtering (applied when building pool.txt)
# ------------------------------------------------------------------------------
WORD_MIN_LENGTH=4
WORD_MAX_LENGTH=9
# ------------------------------------------------------------------------------
# Templates
# Format: "name|pattern"
#
# Tokens:
# {word} — random word (lowercase)
# {WORD} — random word (UPPERCASE)
# {Word} — random word (Title Case)
# {word!} — random lower or UPPER (+1 bit entropy)
# {Word!} — random lower/Title/UPPER (+1.58 bits entropy)
# {alpha:N} — N chars, Crockford Base32 (5.0 bits/char)
# {safe:N} — N chars, ultra-safe (4.6 bits/char)
# {num:N} — N digits (3.3 bits/char)
# {special:N} — N characters from SPECIAL_CHARSET
# ------------------------------------------------------------------------------
TEMPLATES=(
"default|{word!}{num:2}-{word!}{num:2}-{alpha:3}{num:2}"
"easy|{word}-{alpha:3}-{num:3}"
"secure|{word}-{word}-{alpha:5}-{word}-{alpha:5}{special:1}"
"pin|{num:6}"
"diceware|{word}-{word}-{word}-{word}-{word}"
"wifi|{word!}-{word!}{num:4}"
"phone|{safe:4}-{safe:4}-{safe:4}"
)
# ------------------------------------------------------------------------------
# Default template (used when no template name specified)
# ------------------------------------------------------------------------------
DEFAULT_TEMPLATE="default"