Password generator which generates passwords that are actually easy to remember.
Mnemonipass generates passwords based on the phrase by chopping words in it down.
Phrases are easy to remember because they build based on how we (humans) are building them.
Thus basic phrase consists of a noun followed by a verb and then another noun. When more words are used adjectives and adverbs are added.
This makes a phrase really easy to remember and since words are truncated there are no dictionary words in the actual password.
You can start with simplest phrase, like this one:
hands forbid tomatoes
Which will translate to the password: hanfortom
This password has somewhat fine entropy of 42 bits, but we can do better.
How about blissful hands never forbid beautiful tomatoes
?
Which will be translated to: blihannevforbeatom
This password has 107 bits of entropy, which is fine more most applications.
But of course we can go further
1 $ 7 Blissful Hands Never Forbid Beautiful Tomatoes
This one translates to: 1$7BliHanNevForBeaTom
And this password already has 129 bits of entropy, which is quite secure, even if it will be brute forced with GPUs it will take inadequate amount of time to crack.
For comparison password with comparable entropy generated by pwgen
will look like this:
thaeGh4udaijo@uk5aith
which is not so easy to remember.
To create simplest password you can run:
mnemonipass -n dicts/nouns.txt -v dicts/verbs.txt
And if you want to create something much more secure you can run the following:
mnemonipass -n dicts/nouns.txt -v dicts/verbs.txt -a dicts/adverbs.txt -j dicts/adjectives.txt -w 6 -d 3 -s
Currently you’ll have to compile it (or run in gsi
) from source.
To compile it you first will need to install the latest version of Gambit Scheme, then run:
make
If you’re using Guix you can build using it, just run:
make guix-build
- [ ] Better dictionaries. Current ones have some errors and not much words there. Some words are archaic and harder to remember for non-native speakers.
- [ ] Web version.
- [ ] Pre-Compiled binary in the releases.