Tool 191: Generate a password (English, French, Spanish)

Description:

  This tool generates one or several passwords.
  
  Choosing a password is a complex task: it has to be random, but also
  easy to remember (otherwise people write it down).
  When choosing one password, we can use a mnemotechnic sentence (tiap =
  this is a password) or mix words (house + 2,E: = h2o,uEs:e).
  When a program has to generate passwords (for example for all users of
  an enterprise), the main problem is where to find/store sentences and
  words. An attacker knowing those lists will find passwords using a
  brute force attack.
  
  This password generator uses another method. It generates passwords
  composed of the two first letters of images. An image is an easy to
  remember word. For example:
    netwox 191 --numimages 5 --lang-english
      password: soasprsivo
      images: SOap AStronaut PRofessor SIx VOlcano
  So, user only have to remember those 5 images: soap, astronaut,
  professor, 6 and volcano. Those images are easy to draw or represent
  ideas easy to draw. For higher security, choose 5 or more images.
  
  In order to provide complex passwords, variations of generated
  password are proposed. With the last example:
    variation1: soaspr2ivo. In this case, one letter has changed
                            (s replaced by 2)
    variation2: soAsprs1vo. In this case, two letters have changed
                            (a replaced by A, and i by 1)
  So, you can use soAsprs1vo instead of soasprsivo.
  
  Finally, parameter --pronounceable generates pronounceable passwords.
  For example: netwox 191 --pronounceable --maxsyllables 3
   

Usage:

  netwox 191 [-n uint32] [-i uint32] [-E|+E] [-F|+F] [-S|+S] [-p|+p] [-m uint32] [-a data]

Parameters:

parameter description example
-n|--numpassword uint32 number of passwords to generate 1
-i|--numimages uint32 number of images in passwords 5
-E|--lang-english|+E|--no-lang-english use English words This boolean is set.
Use + or --no- to unset it.
-F|--lang-french|+F|--no-lang-french use French words  
-S|--lang-spanish|+S|--no-lang-spanish use Spanish words  
-p|--pronounceable|+p|--no-pronounceable generate pronounceable passwords  
-m|--maxsyllables uint32 max syllables in pronounceable passwords 0
-a|--allowedcharvar data allowed characters for variations ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@|!()[]{}/$+&^*

Example:

  netwox 191