We need character sets!
tldr: use base20 for no confusion and no accidental words
dense
1ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/
change +/
to -_
to prevent url escaping
1ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_
base64 without the special chars
1ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789
base64 without special chars, skips some confusing characters
0 / O
-> ``1 / I / l
-> 1
1123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz
case insensitive, skips some confusing chars
0 / O
-> ``1 / I / l
-> 1
1ABCDEFGHIJKLMNOPQRSTUVWXYZ234567
case insensitive, skips some confusing chars
0 / O
-> 0
1 / I / l
-> 1
U / V
-> V
10123456789ABCDEFGHJKMNPQRSTVWXYZ
case insensitive, skips some confusing chars
0 / O
-> 0
1 / I
-> 1
5 / S
-> 5
U / V
-> V
10123456789ABCDEFGHJKLMNPQRTVWXYZ
case insensitive, no confusion, won't form words
123456789CFGHJMPQRVWX
used more often as extended number/digit set
10123456789abcdef