passgen/README.md

54 lines
1.6 KiB
Markdown
Raw Normal View History

2024-04-28 11:54:49 +00:00
# passgen
2024-04-28 17:27:31 +00:00
passgen generates passphrases based on wordlists.
2024-04-28 11:58:11 +00:00
Usage:
```
Usage: passgen [options]
Options:
-h, --help Display this help message and exit
2024-04-28 17:27:31 +00:00
-s, --short Use the short EFF wordlist (dfault)
-l, --large Use the large EFF wordlist
--camelcase, -cc Generate passphrase in CamelCase format
-wl <path>, --wordlist <path>
Use a custom wordlist file located at <path>
2024-04-28 17:27:31 +00:00
-n <count>, -wc <count>, --wordcount <count>
Amount of words to use for passphrase, default = 5
--separator <seperator> Specify a character to use as a separator between words, default = `-`
Description:
Generate passphrases based on wordlists.
2024-04-28 17:27:31 +00:00
Examples:
passgen -h
passgen --short 4
passgen -wl /path/to/custom_wordlist.txt --wordcount 4
2024-04-28 11:58:11 +00:00
```
2024-04-28 11:54:49 +00:00
2024-04-28 11:58:11 +00:00
example output:
```
retrace-choice-litter-dreamt-zipping
```
This project uses the [EFF's Wordlists for Random Passphrases](https://www.eff.org/deeplinks/2016/07/new-wordlists-random-passphrases) and [PCG random](https://www.pcg-random.org/) to pick random words
2024-04-28 17:04:57 +00:00
2024-04-28 17:27:31 +00:00
Compiling:
Compile for Linux:
2024-04-28 17:04:57 +00:00
```
mkdir build-linux && cd build-linux && cmake .. && make
```
2024-04-28 17:27:31 +00:00
Compile for Windows:
2024-04-28 17:04:57 +00:00
```
mkdir build-windows && cd build-windows && cmake -DCMAKE_TOOLCHAIN_FILE=../mingw-toolchain.cmake .. && make
```
2024-04-28 17:22:42 +00:00
2024-04-28 17:27:31 +00:00
Wordlists are embedded using the following command:
```
xxd -i <path> > include/<path>.txt.hpp
```
2024-04-28 17:22:42 +00:00
Wordlists:
- https://www.eff.org/files/2016/07/18/eff_large_wordlist.txt
- https://www.eff.org/files/2016/09/08/eff_short_wordlist_1.txt
- https://mko.re/diceware/diceware-wordlist-8k-composites-nl.txt