### 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