Mercurial > hgrepos > Python > apps > py-cutils
comparison cutils/genpwd.py @ 232:7ac8a2537bc9
Implement the urlsafe base64 character repertoire
| author | Franz Glasner <fzglas.hg@dom66.de> |
|---|---|
| date | Fri, 07 Feb 2025 13:38:06 +0100 |
| parents | 6d8443878a00 |
| children | 5f4c81313be7 |
comparison
equal
deleted
inserted
replaced
| 231:6d8443878a00 | 232:7ac8a2537bc9 |
|---|---|
| 41 " length within a character repertoire", | 41 " length within a character repertoire", |
| 42 fromfile_prefix_chars='@') | 42 fromfile_prefix_chars='@') |
| 43 aparser.add_argument( | 43 aparser.add_argument( |
| 44 "--repertoire", "--type", "-t", | 44 "--repertoire", "--type", "-t", |
| 45 choices=("web", "web-safe", "web-safe2", | 45 choices=("web", "web-safe", "web-safe2", |
| 46 "base64", "base32", "ascii85", ), | 46 "base64", "urlsafe-base64", "urlsafe", "base32", "ascii85", ), |
| 47 default="web-safe2", | 47 default="web-safe2", |
| 48 help="Select the character repertoire. Default: web-safe2") | 48 help="Select the character repertoire. Default: web-safe2") |
| 49 aparser.add_argument( | 49 aparser.add_argument( |
| 50 "--version", "-v", action="version", | 50 "--version", "-v", action="version", |
| 51 version="%s (rv:%s)" % (__version__, __revision__)) | 51 version="%s (rv:%s)" % (__version__, __revision__)) |
| 62 elif opts.repertoire == "web-safe2": | 62 elif opts.repertoire == "web-safe2": |
| 63 pwd = gen_web(opts.req_length, WEB_SAFE2_CHARS) | 63 pwd = gen_web(opts.req_length, WEB_SAFE2_CHARS) |
| 64 elif opts.repertoire == "base64": | 64 elif opts.repertoire == "base64": |
| 65 encoder = base64.b64encode | 65 encoder = base64.b64encode |
| 66 pwd = gen_bin(opts.req_length, encoder) | 66 pwd = gen_bin(opts.req_length, encoder) |
| 67 elif opts.repertoire in ("urlsafe-base64", "urlsafe"): | |
| 68 encoder = base64.urlsafe_b64encode | |
| 69 pwd = gen_bin(opts.req_length, encoder) | |
| 67 elif opts.repertoire == "base32": | 70 elif opts.repertoire == "base32": |
| 68 encoder = base64.b32encode | 71 encoder = base64.b32encode |
| 69 pwd = gen_bin(opts.req_length, encoder) | 72 pwd = gen_bin(opts.req_length, encoder) |
| 70 elif opts.repertoire == "ascii85": | 73 elif opts.repertoire == "ascii85": |
| 71 encoder = base64.a85encode | 74 encoder = base64.a85encode |
