Skip to content

Substitution

Михаил edited this page Oct 31, 2016 · 11 revisions

This command allow to get all possible variation of one word, wherein made all possible substitutions of every letter. All possible substitutions are taken from default (or specified) dictionary with list of methods. Also you can run this command in interactive mode, and enter one word per line to obtain list of substitutes for each.

##Help To see the usage: PasswordListGenerator.exe subs

If you want to see additional help: PasswordListGenerator.exe help subs

##Options

###Change input

###Change output

###Ignore case Default dictionary specifies only capital case english letters. If you want use default dictionary (or you own dictionary without lowercase symbols) you must specify --ignore-case option. Then every symbol in your source word will be replaced without caring about letter case.

PasswordListGenerator.exe subs --ignore-case iNpuT_wOrD

###Dictionary structure

{
    "Method1": {      //Name of first method
        "A": [          //First symbol
            "/-\\",       //First replacement
            "4",          //Second replacement
            ...           //And so on
            "A"
        ],
        "B": [],        //Second symbol
        ...             //And so on
        "Z": []
    },
    "Method2": {...}, //Name of second method
    ...               //And so on
    "MethodN": {...}
}

The file's fields filled with in accordance with the JSON Standart.

You can find default dictionary for example in [EnglishLeetDict.json] (https://github.com/gek0n/passwordlistgenerator/tree/master/PasswordListGenerator/PasswordListGenerator/Resources/EnglishLeetDict.json) file.

You can named methods of dictionary as you want, and you can replace any ASCII characters with any string. Number of methods or symbols is undefined.

###Set the dictionary If you want specify other dictionary, you need to create json file with described structure.

After create the file, you must specify new dictionary using -d or --dict option:

PasswordListGenerator.exe subs -d new_dict.json input_word

[EnglishLeetDict.json] (https://github.com/gek0n/passwordlistgenerator/tree/master/PasswordListGenerator/PasswordListGenerator/Resources/EnglishLeetDict.json) json file is default dictionary for substitutions.

###Choice the method If you want specify substitution method, you need specify new dictionary or use default (see section). After that you need choice a method specified in the dictionary (see section).

Use -m or --method to specify method, defined in the dictionary:

PasswordListGenerator.exe subs --method GoodLeet input_word

or

PasswordListGenerator.exe subs -d new_dict.json -m method1 input_word

There are 4 methods in default dictionary: GoodLeet, MadLeet, Cyrillic and Pronunciation.

  • GoodLeet (default) is provide alphabet to make easy-to-read leet words from source word.
  • MadLeet is provide alphabet to make complicated leet words from source word.
  • Cyrillic is provide alphabet for replace english letters by it's russian analog.
  • Pronunciation is provide alphabet for replace english letters by it's pronounced form.

You can specify your own methods in your own dictionary for any ASCII letters.

###Specify encoding If you want input word in some not UTF-8 encoding, you need to specify --in-encoding option (or --out-encoding for output substitutions). You can specify any encoding in this option:

PasswordListGenerator.exe subs --in-encoding="cp1251" input_word

Default encoding for input and output is UTF-8.

###Verbose If you want to see more information about substitutions, you must specify -v or --verbose option.

Introdutcion

Commands

Clone this wiki locally