# passgen passgen generates passphrases based on wordlists. Usage: ``` Usage: passgen [options] Options: -h, --help Display this help message and exit -s, --short Use the short EFF wordlist (dfault) -l, --large Use the large EFF wordlist --camelcase, -cc Generate passphrase in CamelCase format -wl , --wordlist Use a custom wordlist file located at -n , -wc , --wordcount Amount of words to use for passphrase, default = 5 --separator Specify a character to use as a separator between words, default = `-` Description: Generate passphrases based on wordlists. Examples: passgen -h passgen --short 4 passgen -wl /path/to/custom_wordlist.txt --wordcount 4 ``` 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 Compiling: Compile for Linux: ``` mkdir build-linux && cd build-linux && cmake .. && make ``` Compile for Windows: ``` mkdir build-windows && cd build-windows && cmake -DCMAKE_TOOLCHAIN_FILE=../mingw-toolchain.cmake .. && make ``` Wordlists are embedded using the following command: ``` xxd -i > include/.txt.hpp ``` 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