mirror of
https://github.com/hashcat/hashcat.git
synced 2025-02-02 10:51:16 +00:00
Reduce helptext width from 134 to 118; Reduce -w 1 target to 2ms
This commit is contained in:
parent
d4cc8e3701
commit
6b0a13d998
170
src/hashcat.c
170
src/hashcat.c
@ -19,7 +19,7 @@ const char *PROGNAME = "hashcat";
|
||||
const uint VERSION_BIN = 300;
|
||||
const uint RESTORE_MIN = 300;
|
||||
|
||||
double TARGET_MS_PROFILE[4] = { 4, 12, 96, 480 };
|
||||
double TARGET_MS_PROFILE[4] = { 2, 12, 96, 480 };
|
||||
|
||||
#define INCR_RULES 10000
|
||||
#define INCR_SALTS 100000
|
||||
@ -353,89 +353,88 @@ const char *USAGE_BIG[] =
|
||||
"# Options #",
|
||||
"###########",
|
||||
"",
|
||||
" Short- | Long- | Parameter- | Description | Example",
|
||||
" Option | Option | Type | |",
|
||||
"--------+---------------------------+------------+------------------------------------------------------+---------------------",
|
||||
" -m | --hash-type | Number | Hash-type, see references below | -m 1000",
|
||||
" -a | --attack-mode | Number | Attack-mode, see references below | -a 3",
|
||||
" -V | --version | | Print version | --version",
|
||||
" -h | --help | | Print help | --help",
|
||||
" | --quiet | | Suppress output | --quiet",
|
||||
" | --hex-charset | | Assume charset is given in hex | --hex-charset",
|
||||
" | --hex-salt | | Assume salt is given in hex | --hex-salt",
|
||||
" | --hex-wordlist | | Assume words in wordlist is given in hex | --hex-wordlist",
|
||||
" | --force | | Ignore warnings | --force",
|
||||
" | --status | | Enable automatic update of the status-screen | --status",
|
||||
" | --status-timer | Number | Sets seconds between status-screen update to X | --status-timer=1",
|
||||
" | --status-automat | | Display the status view in a machine readable format | --status-automat",
|
||||
" | --loopback | | Add new plains to induct directory | --loopback",
|
||||
" | --weak-hash-threshold | Number | Threshold X when to stop checking for weak hashes | --weak-hash-threshold=0",
|
||||
" | --markov-hcstat | File | Specify hcstat file to use, default is hashcat.hcstat| --markiv-hcstat=my.hcstat",
|
||||
" | --markov-disable | | Disables markov-chains, emulates classic brute-force | --markov-disable",
|
||||
" | --markov-classic | | Enables classic markov-chains, no per-position | --markov-classic",
|
||||
" -t | --markov-threshold | Number | Threshold X when to stop accepting new markov-chains | -t 50",
|
||||
" | --runtime | Number | Abort session after X seconds of runtime | --runtime=10",
|
||||
" | --session | String | Define specific session name | --session=mysession",
|
||||
" | --restore | | Restore session from --session | --restore",
|
||||
" | --restore-disable | | Do not write restore file | --restore-disable",
|
||||
" -o | --outfile | File | Define outfile for recovered hash | -o outfile.txt",
|
||||
" | --outfile-format | Number | Define outfile-format X for recovered hash | --outfile-format=7",
|
||||
" | --outfile-autohex-disable | | Disable the use of $HEX[] in output plains | --outfile-autohex-disable",
|
||||
" | --outfile-check-timer | Number | Sets seconds between outfile checks to X | --outfile-check-timer=30",
|
||||
" -p | --separator | Char | Separator char for hashlists and outfile | -p :",
|
||||
" | --show | | Show cracked passwords only | --show",
|
||||
" | --left | | Show un-cracked passwords only | --left",
|
||||
" | --username | | Enable ignoring of usernames in hashfile | --username",
|
||||
" | --remove | | Enable remove of hash once it is cracked | --remove",
|
||||
" | --remove-timer | Number | Update input hash file each X seconds | --remove-timer=30",
|
||||
" | --potfile-disable | | Do not write potfile | --potfile-disable",
|
||||
" | --potfile-path | | Specific path to potfile | --potfile-path=hashcat.pot",
|
||||
" | --debug-mode | Number | Defines the debug mode (hybrid only by using rules) | --debug-mode=4",
|
||||
" | --debug-file | File | Output file for debugging rules | --debug-file=goodrules.log",
|
||||
" | --induction-dir | Folder | Specify the induction directory to use for loopback | --induction-dir=inducts",
|
||||
" | --outfile-check-dir | Folder | Specify the outfile directory to monitor for plains | --outfile-check-dir=ext",
|
||||
" | --logfile-disable | | Disable the logfile | --logfile-disable",
|
||||
" | --truecrypt-keyfiles | File | Keyfiles used, separate with comma | --truecrypt-keyfiles=xx.png",
|
||||
" | --veracrypt-keyfiles | File | Keyfiles used, separate with comma | --veracrypt-keyfiles=xx.png",
|
||||
" | --veracrypt-pim | Number | VeraCrypt personal iterations multiplier | --veracrypt-pim=1000",
|
||||
" -b | --benchmark | | Run benchmark | -b",
|
||||
" -c | --segment-size | Number | Sets size in MB to cache from the wordfile to X | -c 32",
|
||||
" | --bitmap-min | Number | Sets minimum bits allowed for bitmaps to X | --bitmap-min=24",
|
||||
" | --bitmap-max | Number | Sets maximum bits allowed for bitmaps to X | --bitmap-min=24",
|
||||
" | --cpu-affinity | String | Locks to CPU devices, separate with comma | --cpu-affinity=1,2,3,4",
|
||||
" | --opencl-platforms | String | OpenCL platforms to use, separate with comma | --opencl-platforms=2",
|
||||
" -d | --opencl-devices | String | OpenCL devices to use, separate with comma | -d 1",
|
||||
" | --opencl-device-types | String | OpenCL device-types to use, separate with comma | --opencl-device-types=1,2",
|
||||
" | --opencl-vector-width | Number | Manual override OpenCL vector-width to X | --opencl-vector-width=4",
|
||||
" -w | --workload-profile | Number | Enable a specific workload profile, see pool below | -w 3",
|
||||
" -n | --kernel-accel | Number | Manual workload tuning, set outerloop step size to X | -n 64",
|
||||
" -u | --kernel-loops | Number | Manual workload tuning, set innerloop step size to X | -u 256",
|
||||
" | --gpu-temp-disable | | Disable temperature and fanspeed reads and triggers | --gpu-temp-disable",
|
||||
" Options Short / Long | Type | Description | Example",
|
||||
"===============================|======|======================================================|=======================",
|
||||
" -m, --hash-type | Num | Hash-type, see references below | -m 1000",
|
||||
" -a, --attack-mode | Num | Attack-mode, see references below | -a 3",
|
||||
" -V, --version | | Print version |",
|
||||
" -h, --help | | Print help |",
|
||||
" --quiet | | Suppress output |",
|
||||
" --hex-charset | | Assume charset is given in hex |",
|
||||
" --hex-salt | | Assume salt is given in hex |",
|
||||
" --hex-wordlist | | Assume words in wordlist is given in hex |",
|
||||
" --force | | Ignore warnings |",
|
||||
" --status | | Enable automatic update of the status-screen |",
|
||||
" --status-timer | Num | Sets seconds between status-screen update to X | --status-timer=1",
|
||||
" --status-automat | | Display the status view in a machine readable format |",
|
||||
" --loopback | | Add new plains to induct directory |",
|
||||
" --weak-hash-threshold | Num | Threshold X when to stop checking for weak hashes | --weak=0",
|
||||
" --markov-hcstat | File | Specify hcstat file to use | --markov-hc=my.hcstat",
|
||||
" --markov-disable | | Disables markov-chains, emulates classic brute-force |",
|
||||
" --markov-classic | | Enables classic markov-chains, no per-position |",
|
||||
" -t, --markov-threshold | Num | Threshold X when to stop accepting new markov-chains | -t 50",
|
||||
" --runtime | Num | Abort session after X seconds of runtime | --runtime=10",
|
||||
" --session | Str | Define specific session name | --session=mysession",
|
||||
" --restore | | Restore session from --session |",
|
||||
" --restore-disable | | Do not write restore file |",
|
||||
" -o, --outfile | File | Define outfile for recovered hash | -o outfile.txt",
|
||||
" --outfile-format | Num | Define outfile-format X for recovered hash | --outfile-format=7",
|
||||
" --outfile-autohex-disable | | Disable the use of $HEX[] in output plains |",
|
||||
" --outfile-check-timer | Num | Sets seconds between outfile checks to X | --outfile-check=30",
|
||||
" -p, --separator | Char | Separator CHR for hashlists and outfile | -p :",
|
||||
" --show | | Show cracked passwords only |",
|
||||
" --left | | Show un-cracked passwords only |",
|
||||
" --username | | Enable ignoring of usernames in hashfile |",
|
||||
" --remove | | Enable remove of hash once it is cracked |",
|
||||
" --remove-timer | Num | Update input hash file each X seconds | --remove-timer=30",
|
||||
" --potfile-disable | | Do not write potfile |",
|
||||
" --potfile-path | Dir | Specific path to potfile | --potfile-path=my.pot",
|
||||
" --debug-mode | Num | Defines the debug mode (hybrid only by using rules) | --debug-mode=4",
|
||||
" --debug-file | File | Output file for debugging rules | --debug-file=good.log",
|
||||
" --induction-dir | Dir | Specify the induction directory to use for loopback | --induction=inducts",
|
||||
" --outfile-check-dir | Dir | Specify the outfile directory to monitor for plains | --outfile-check-dir=x",
|
||||
" --logfile-disable | | Disable the logfile |",
|
||||
" --truecrypt-keyfiles | File | Keyfiles used, separate with comma | --truecrypt-key=x.png",
|
||||
" --veracrypt-keyfiles | File | Keyfiles used, separate with comma | --veracrypt-key=x.txt",
|
||||
" --veracrypt-pim | Num | VeraCrypt personal iterations multiplier | --veracrypt-pim=1000",
|
||||
" -b, --benchmark | | Run benchmark |",
|
||||
" -c, --segment-size | Num | Sets size in MB to cache from the wordfile to X | -c 32",
|
||||
" --bitmap-min | Num | Sets minimum bits allowed for bitmaps to X | --bitmap-min=24",
|
||||
" --bitmap-max | Num | Sets maximum bits allowed for bitmaps to X | --bitmap-min=24",
|
||||
" --cpu-affinity | Str | Locks to CPU devices, separate with comma | --cpu-affinity=1,2,3",
|
||||
" --opencl-platforms | Str | OpenCL platforms to use, separate with comma | --opencl-platforms=2",
|
||||
" -d, --opencl-devices | Str | OpenCL devices to use, separate with comma | -d 1",
|
||||
" --opencl-device-types | Str | OpenCL device-types to use, separate with comma | --opencl-device-type=1",
|
||||
" --opencl-vector-width | Num | Manual override OpenCL vector-width to X | --opencl-vector=4",
|
||||
" -w, --workload-profile | Num | Enable a specific workload profile, see pool below | -w 3",
|
||||
" -n, --kernel-accel | Num | Manual workload tuning, set outerloop step size to X | -n 64",
|
||||
" -u, --kernel-loops | Num | Manual workload tuning, set innerloop step size to X | -u 256",
|
||||
" --gpu-temp-disable | | Disable temperature and fanspeed reads and triggers |",
|
||||
#ifdef HAVE_HWMON
|
||||
" | --gpu-temp-abort | Number | Abort if GPU temperature reaches X degrees celsius | --gpu-temp-abort=100",
|
||||
" | --gpu-temp-retain | Number | Try to retain GPU temperature at X degrees celsius | --gpu-temp-retain=95",
|
||||
" --gpu-temp-abort | Num | Abort if GPU temperature reaches X degrees celsius | --gpu-temp-abort=100",
|
||||
" --gpu-temp-retain | Num | Try to retain GPU temperature at X degrees celsius | --gpu-temp-retain=95",
|
||||
#ifdef HAVE_ADL
|
||||
" | --powertune-enable | | Enable automatic power tuning (AMD OverDrive 6 only) | --powertune-enable",
|
||||
" --powertune-enable | | Enable automatic power tuning (AMD OverDrive 6 only) |",
|
||||
#endif
|
||||
#endif
|
||||
" | --scrypt-tmto | Number | Manually override TMTO value for scrypt to X | --scrypt-tmto=3",
|
||||
" -s | --skip | Number | Skip X words from the start | -s 1000000",
|
||||
" -l | --limit | Number | Limit X words from the start + skipped words | -l 1000000",
|
||||
" | --keyspace | | Show keyspace base:mod values and quit | --keyspace",
|
||||
" -j | --rule-left | Rule | Single Rule applied to each word from left wordlist | -j 'c'",
|
||||
" -k | --rule-right | Rule | Single Rule applied to each word from right wordlist | -k '^-'",
|
||||
" -r | --rules-file | File | Multiple Rules applied to each word from wordlists | -r rules/best64.rule",
|
||||
" -g | --generate-rules | | Enable generate random rules | -g 10000",
|
||||
" | --generate-rules-func-min | Number | Force min X funcs per rule |",
|
||||
" | --generate-rules-func-max | Number | Force max X funcs per rule |",
|
||||
" | --generate-rules-seed | Number | Force RNG seed set to X |",
|
||||
" -1 | --custom-charset1 | Charset | User-defined charset ?1 | -1 ?l?d?u",
|
||||
" -2 | --custom-charset2 | Charset | User-defined charset ?2 | -2 ?l?d?s",
|
||||
" -3 | --custom-charset3 | Charset | User-defined charset ?3 |",
|
||||
" -4 | --custom-charset4 | Charset | User-defined charset ?4 |",
|
||||
" -i | --increment | | Enable mask increment mode | --increment",
|
||||
" | --increment-min | Number | Start mask incrementing at X | --increment-min=4",
|
||||
" | --increment-max | Number | Stop mask incrementing at X | --increment-max=8",
|
||||
" --scrypt-tmto | Num | Manually override TMTO value for scrypt to X | --scrypt-tmto=3",
|
||||
" -s, --skip | Num | Skip X words from the start | -s 1000000",
|
||||
" -l, --limit | Num | Limit X words from the start + skipped words | -l 1000000",
|
||||
" --keyspace | | Show keyspace base:mod values and quit |",
|
||||
" -j, --rule-left | Rule | Single Rule applied to each word from left wordlist | -j 'c'",
|
||||
" -k, --rule-right | Rule | Single Rule applied to each word from right wordlist | -k '^-'",
|
||||
" -r, --rules-file | File | Multiple Rules applied to each word from wordlists | -r rules/best64.rule",
|
||||
" -g, --generate-rules | Num | Generate X random rules | -g 10000",
|
||||
" --generate-rules-func-min | Num | Force min X funcs per rule |",
|
||||
" --generate-rules-func-max | Num | Force max X funcs per rule |",
|
||||
" --generate-rules-seed | Num | Force RNG seed set to X |",
|
||||
" -1, --custom-CHR set1 | CS | User-defined CHR set ?1 | -1 ?l?d?u",
|
||||
" -2, --custom-CHR set2 | CS | User-defined CHR set ?2 | -2 ?l?d?s",
|
||||
" -3, --custom-CHR set3 | CS | User-defined CHR set ?3 |",
|
||||
" -4, --custom-CHR set4 | CS | User-defined CHR set ?4 |",
|
||||
" -i, --increment | | Enable mask increment mode |",
|
||||
" --increment-min | Num | Start mask incrementing at X | --increment-min=4",
|
||||
" --increment-max | Num | Stop mask incrementing at X | --increment-max=8",
|
||||
"",
|
||||
"################",
|
||||
"## Hash modes ##",
|
||||
@ -729,12 +728,12 @@ const char *USAGE_BIG[] =
|
||||
"",
|
||||
" # | Performance | Runtime | Power Consumption | Desktop Impact",
|
||||
" ---+-------------+---------+-------------------+----------------",
|
||||
" 1 | Low | 4 ms | Low | Minimal",
|
||||
" 1 | Low | 2 ms | Low | Minimal",
|
||||
" 2 | Default | 12 ms | Economic | Noticeable",
|
||||
" 3 | High | 96 ms | High | Unresponsive",
|
||||
" 4 | Nightmare | 480 ms | Insane | Headless",
|
||||
"",
|
||||
"If you have no idea what just happend, please visit the following pages:",
|
||||
"If you have no idea what just happend then visit the following pages:",
|
||||
"",
|
||||
"* https://hashcat.net/wiki/#howtos_videos_papers_articles_etc_in_the_wild",
|
||||
"* https://hashcat.net/wiki/#frequently_asked_questions",
|
||||
@ -2845,6 +2844,13 @@ static void autotune (hc_device_param_t *device_param)
|
||||
try_run (device_param, kernel_accel, kernel_loops);
|
||||
try_run (device_param, kernel_accel, kernel_loops);
|
||||
|
||||
device_param->kernel_accel = kernel_accel;
|
||||
device_param->kernel_loops = kernel_loops;
|
||||
|
||||
const u32 kernel_power = device_param->device_processors * device_param->kernel_threads * device_param->kernel_accel;
|
||||
|
||||
device_param->kernel_power = kernel_power;
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user