MP64(1)

NAME
mp64 - high-performance word generator with a per-position configurable charset

SYNOPSIS
mp64 [options]... mask

DESCRIPTION

Maskprocessor is a fast word list generator. It enumerates all combinations from a given user-defined keyspace and outputs the results. Since it supports different alphabets (which also can be combined) at different positions in the generation template ('mask'), this approach allows a more fine-tunable generation of candidates than using 'naive' brute force enumeration of words. Masks are defined using the description also used in the Hashcat password recovery utility.

High-Performance word generator with a per-position configureable charset

* Startup:

-V,  --version
    Print version

-h,  --help
    Print help

* Increment:

-i,  --increment=NUM:NUM
    Enable increment mode. 1st NUM=start, 2nd NUM=stop Example: -i 4:8 searches lengths 4-8 (inclusive)

* Misc:

--combinations
    Calculate number of combinations

--hex-charset
    Assume charset is given in hex

-q,  --seq-max=NUM
    Maximum number of multiple sequential characters

-r,  --occurrence-max=NUM
    Maximum number of occurrence of a character

* Resources:

-s,  --start-at=WORD
    Start at specific position

-l,  --stop-at=WORD
    Stop at specific position

* Files:

-o,  --output-file=FILE
    Output-file

* Custom charsets:

-1,  --custom-charset1=CS
    User-defineable charsets

-2,  --custom-charset2=CS
    Example:

-3, --custom-charset3=CS --custom-charset1=?dabcdef

-4,  --custom-charset4=CS
    sets charset ?1 to 0123456789abcdef

* Built-in charsets:

    ?l = abcdefghijklmnopqrstuvwxyz ?u = ABCDEFGHIJKLMNOPQRSTUVWXYZ ?d = 0123456789 ?s = !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ ?a = ?l?u?d?s ?b = 0x00 - 0xff

MASKS

For each position of the generated password candidates we need to configure a placeholder. If a password we want to crack has the length 8, our mask must consist of 8 placeholders. A mask is a simple string that configures the keyspace of the password candidate engine using placeholders. A placeholder can be either a custom charset variable, a built-in charset variable or a static letter. A variable is indicated by the ? letter followed by one of the built-in charset (l, u, d, s, a) or one of the custom charset variable names (1, 2, 3, 4). A static letter is not indicated by a letter. An exception is if we want the static letter ? itself, which must be written as ??.

BUILTIN CHARSETS

?l = abcdefghijklmnopqrstuvwxyz, ?u = ABCDEFGHIJKLMNOPQRSTUVWXYZ, ?d = 0123456789, ?s = (space)!"#$%&'()*+,-./:;<=>?@[]^_`{|}~, ?a = ?l?u?d?s, ?b = 0x00-0xff

CUSTOM CHARSETS

There are four command line parameters to configure four custom charsets: --custom-charset1=CS, --custom-charset2=CS, --custom-charset3=CS, --custom-charset4=CS.

These command line parameters have four analogous shortcuts called -1, -2, -3 and -4. You can specify the chars directly on the command line.

PASSWORD LENGTH INCREMENT

A Mask attack is always specific to a password length. For example, if we use the mask ????l?l?l?l?l?l?l?l??? we can only crack a password of the length 8. But if the password we try to crack has the length 7 we will not find it. That is why we have to repeat the attack several times, each time with one placeholder added to the mask. This is transparently automated by using the '--increment' flag.

?l -> ?l?l -> ?l?l?l -> ?l?l?l?l -> ?l?l?l?l?l -> ?l?l?l?l?l?l -> ?l?l?l?l?l?l?l -> ?l?l?l?l?l?l?l?l

REPORTING BUGS

Please report bugs upstream to the maskprocessor issue tracker on GitHub: https://github.com/hashcat/maskprocessor/issues

COPYRIGHT

This tool is developed and maintained by Jens Steube under the MIT License.