genpasswd

Crates.iogenpasswd
lib.rsgenpasswd
version1.0.0
sourcesrc
created_at2024-11-24 13:15:49.76428
updated_at2024-11-24 13:15:49.76428
descriptionA simple password generator that ensures characters are picked evenly from each enabled character set. Uses a Mersenne Twister PRNG implementation, seeded with time, no dependencies.
homepagehttps://github.com/PsychedelicShayna/genpasswd
repositoryhttps://github.com/PsychedelicShayna/genpasswd
max_upload_size
id1459251
size7,933
Shayna (PsychedelicShayna)

documentation

README

Genpasswd - Just Another CLI Password Generator

No dependencies, uses a Mersenne Twister implementation to generate pseudo-random numbers, seeded with time. Also ensures characters from each enabled character set is distributed evenly, by first randomly selecting a set, then selecting a character from the set, rather than enabling a set by appending its characters to an "enabled" string, and picking randomly from there; there is a lower chance of landing on a digit simply because there are fewer digits, one must first select the set, then the character.

Does what it says on the tin, nothing remarkable here. Mainly an excuse to implement a Mersenne Twister in Rust tbh.

Usage: passgen [charclasses (default adx) | length (default 32)]
Where charclasses can be any combination of:
    u = uppercase
    l = lowercase
    a = alphabetic (both l + u)
    n | d = numeric aka digits
    s | x = special aka extra

Example:
    genpasswd 10 ul         10 Upper and lowercase.
    genpasswd 10 ns         10 Numerical and special characters.

Order is irrelevant:
    genpasswd ld 10         10 Lowercase and digits.

Default (no args):
    genpasswd               32 Alphabetic numeric and special (default)
Commit count: 6

cargo fmt