jsteube
7e1e1d34f8
Use real dlopen() to load the module
6 years ago
jsteube
fa0b8e643d
Fix pwdump column names
6 years ago
jsteube
ac55386553
Get rid of hash_mode in selftest.c
6 years ago
jsteube
ea22065b9c
Get rid of hash_mode in user_options.c
6 years ago
jsteube
e56c5035aa
Get rid of hash_mode in wordlist.c
6 years ago
jsteube
abbfc3d10b
Get rid of hash_mode in hlfmt.c
6 years ago
jsteube
4993a85b27
Get rid of hash_mode in dictstat.c
6 years ago
jsteube
3c37daf94b
Get rid of hash_mode in autotune.c
6 years ago
jsteube
074947c6db
Get rid of hashconfig_get_kernel_threads() and hashconfig_get_kernel_loops()
6 years ago
jsteube
af22a9d1d9
Remove hashconfig_forced_kernel_threads()
6 years ago
jsteube
6e794841e3
Add default_benchmark_esalt(), default_benchmark_hook_salt(), default_benchmark_salt()
6 years ago
jsteube
e79fa9c22f
Simplify use of default functions
6 years ago
jsteube
ca169a890c
Add more global default value functions
6 years ago
jsteube
1d8c31a7e2
Add more global default value functions
6 years ago
jsteube
a4fb31e8f7
Add more global default value functions
6 years ago
jsteube
3848c73f80
Add decoder_apply_optimizer ()
...
Add encoder_apply_optimizer ()
Add decoder_apply_options ()
Add encoder_apply_options ()
6 years ago
Jens Steube
bd37903131
Add hook_size, tmp_size, hook_salt_size
6 years ago
Jens Steube
3aecd150f9
Call module_hash_encode() in ascii_digest()
6 years ago
Jens Steube
222d76f01e
Replace parse_func() with module_hash_decode()
6 years ago
Jens Steube
55add7c60e
The goal of this branch to develop a plugin like interface for hashcat kernels.
...
The modification of existing core source files to add new hashcat kernels conflicts with the idea of having private hashcat kernel repositories especially when backporting latest hashcat core changes and new features.
The final outcome of this should be a plugin format that does not require modifications on the core soruce files.
Also convert all existing hash-modes to hashcat modules.
We'll start with dynamic loading the modules at runtime rather than linking them at compile time.
This will require some extra code for different OS types but should beneficial on a long term.
This commit add some first ideas of how such modules could look like, however there's no dynamic loading interface yet.
Next steps will be removing all hash-mode depending special code from source files and move them to the modules.
Finally merge with master.
6 years ago
Jens Steube
0b2ffec379
Fixed selection of OpenCL devices (-d) if there's more than 32 OpenCL devices installed
6 years ago
Jens Steube
fca4f7e8a6
Prepare to use --keyboard-layout-mapping for algorithms other than TC/VC
6 years ago
Jens Steube
e770449702
OpenCL Runtime: Use our own yielding technique for synchronizing rather than vendor specific
...
Parameter: Rename --nvidia-spin-damp to --spin-damp (now accessible for all devices)
6 years ago
Jens Steube
ae577410d0
OpenCL Device: Do a real query on OpenCL local memory type instead of just assuming it
6 years ago
Jens Steube
5d5ac1c935
Prepare for on-the-fly keyboard layout substituations required to crack booting TrueCrypt/VeraCrypt volumes
6 years ago
Jens Steube
06b39dc3d5
Startup: Show OpenCL runtime initialization message (per device)
6 years ago
Jens Steube
a5818facf2
Brain: Set --brain-client-features default from 3 to 2
6 years ago
Jens Steube
2aff01b20e
Hardware Monitor: Renamed --gpu-temp-abort to --hwmon-temp-abort
...
Hardware Monitor: Renamed --gpu-temp-disable to --hwmon-disable
Fixed invalid warnings about throttling in case --hwmon-disable was used
Fixes https://github.com/hashcat/hashcat/issues/1757
6 years ago
Jens Steube
2a366741a5
Added new option --kernel-threads to manually override the automatically calculated number of threads
6 years ago
Jens Steube
344ea5b36d
Memory: Reduced default maximum bitmap size from 24 to 18 and give a notice to use --bitmap-max to restore
6 years ago
Jens Steube
83632a83e4
Memory: Limit maximum host memory to allocate depending on bitness
6 years ago
philsmd
dbb81fb48e
fixes #1744 : added --stdin-timeout-abort to allow a custom time (in seconds) to wait before abort (use 0 to disabled it)
6 years ago
Jens Steube
d6fe2c7cd4
The hashcat brain
6 years ago
jsteube
d96b649751
Add support for -a 1 in -S mode
6 years ago
Jens Steube
a4ac370496
Test fix for plain_t in 32 bit mode
6 years ago
philsmd
73ed017daf
stdin: add read timeout checks (abort if no input for a long time)
6 years ago
R. Yushaev
5c87720acc
Add SHA3 and Keccak
...
The previous hash-mode 5000 covered Keccak-256 only. FIPS changed one
padding byte while adopting Keccak as the SHA3 standard, which gives us
different digests. Now we have separate kernels for SHA3 and Keccak.
- Added hash-mode 17300 = SHA3-224
- Added hash-mode 17400 = SHA3-256
- Added hash-mode 17500 = SHA3-384
- Added hash-mode 17600 = SHA3-512
- Added hash-mode 17700 = Keccak-224
- Added hash-mode 17800 = Keccak-256
- Added hash-mode 17900 = Keccak-384
- Added hash-mode 18000 = Keccak-512
- Removed hash-mode 5000 = SHA-3 (Keccak)
6 years ago
jsteube
52c52836e3
Add new option --slow-candidates which allows hashcat to generate passwords on-host
6 years ago
philsmd
0f449b6440
hcstat2: allow to use option --markov-hcstat2 instead of just --markov-hcstat
6 years ago
jsteube
067ffa9d64
Add more tracker for amplifier and iterations to status screen
6 years ago
jsteube
27db8ced7e
Add a tracker for salts, amplifier and iterations to status screen
6 years ago
jsteube
6092308324
Add sempaphore macros for later use
...
Switch from CriticalSection to regular Mutex on windows
6 years ago
jsteube
e67195aa11
Try to evaluate available OpenCL device memory and use this information instead of total available OpenCL device memory for autotune
6 years ago
jsteube
bdec457951
TrueCrypt/VeraCrypt cracking: Do an entropy check on the TC/VC header on start
6 years ago
jsteube
c1ebfe486f
Refactor --progress-only and --speed-only calculation
6 years ago
jsteube
cc8fa3ee80
Remove TOKEN_ATTR_TERMINATE_STRING from input_tokenizer() and replace with equalivalent code where it's needed
6 years ago
jsteube
048298020e
All remaining parser functions have been rewritten to make use of input_tokenizer():
...
chacha20_parse_hash
crammd5_dovecot_parse_hash
electrum_wallet13_parse_hash
ethereum_pbkdf2_parse_hash
ethereum_presale_parse_hash
ethereum_scrypt_parse_hash
filevault2_parse_hash
filezilla_server_parse_hash
jks_sha1_parse_hash
jwt_parse_hash
mywalletv2_parse_hash
netbsd_sha1crypt_parse_hash
plaintext_parse_hash
tacacs_plus_parse_hash
tripcode_parse_hash
Removed old generic salt parser function parse_and_store_salt()
6 years ago
jsteube
230ec5e004
Add TOKEN_ATTR_TERMINATE_STRING feature to input_tokenizer()
...
The following parser functions have been rewritten to make use of input_tokenizer():
bitcoin_wallet_parse_hash
sip_auth_parse_hash
crc32_parse_hash
oraclet_parse_hash
seven_zip_parse_hash
6 years ago
jsteube
82457d2904
Fixed a missing check for errors on OpenCL device leading to invalid removal of restore file
6 years ago
jsteube
384fe1ba15
Add support for multiple valid signatures in input_tokenizer()
6 years ago
jsteube
9196f1ba55
Added rounds_count_length() function to detect optional rounds=
...
substring in *crypt hashes
The following parser functions have been rewritten to make use of
input_tokenizer():
phpass_parse_hash()
md5crypt_parse_hash()
md5apr1_parse_hash()
episerver_parse_hash()
6 years ago
jsteube
f574cbc88a
the following parser functions have been rewritten to make use of
...
input_tokenizer()
dcc2_parse_hash()
dpapimk_parse_hash()
6 years ago
jsteube
50824a24c6
Rewrite parse_and_store_salt from scratch and rename original to parse_and_store_salt_legacy() for migration phase
...
Rewrite several *_parse_hash() functions to use parse_and_store_generic_salt()
6 years ago
jsteube
5f83dd8620
Convert cisco4_parse_hash() to make use of input_tokenizer()
...
Convert lm_parse_hash() to make use of input_tokenizer()
6 years ago
jsteube
2abe8caf24
Convert bcrypt_parse_hash() to make use of input_tokenizer()
...
Add more code to input_tokenizer()
6 years ago
jsteube
26dea37c9d
TEST CODE: tokenizer function in order to simplify parsing functions
6 years ago
jsteube
547025ec47
HCCAPX management: Use advanced hints in message_pair stored by hcxtools about endian bitness of replay counter
...
Fixed missing code section in -m 2500 and -m 2501 to crack corrupted handshakes with a LE endian bitness base
6 years ago
jsteube
469fece141
OpenCL Kernels: Abort session if kernel self-test failed
6 years ago
Jens Steube
1361651730
Add OPTS_TYPE_PREFERED_THREAD marker
6 years ago
jsteube
fe4413797e
OpenCL Kernels: Use three separate comparison kernels (depending on keyver) for WPA instead of one
6 years ago
jsteube
91e522d094
Add special marker for speed only mode
6 years ago
jsteube
c4f30220a0
OpenCL Kernels: Refactored kernel thread management from native to maximum per kernel
6 years ago
Jens Steube
d38608b9bc
Add get_kernel_preferred_wgs_multiple() for future use
6 years ago
Jens Steube
1f442b5b0c
Add get_kernel_local_mem_size() for future use
6 years ago
Jens Steube
d656e9c3a4
OpenCL Kernels: Use the kernel local buffer size as additional reference in order to limit the thread-count
6 years ago
Jens Steube
9b1e66d87c
Fixed a race condition in combinator- and hybrid-mode where the same scratch buffer was used by multiple threads
7 years ago
jsteube
05a01d3843
fix some datatypes
7 years ago
jsteube
a3a16f676f
OpenCL Kernels: Add a decompressing kernel and a compressing host code in order to reduce PCIe transfer time
...
For details see https://hashcat.net/forum/thread-7267.html
7 years ago
jsteube
11b18512c7
Terminal: Add workitem settings to status display (can be handy for debugging)
7 years ago
Jens Steube
7062425d2b
OpenCL Kernels: Use a special kernel to initialize the password buffer used during autotune measurements to reduce startup time
7 years ago
jsteube
0796c074c3
Added -m 16500 Kernels
...
Also changed function declaration of parser function from const hashconfig_t to just hashconfig_t
7 years ago
Gabriele Gristina
03fab4a345
Fix clock_gettime() on OSX (v2)
7 years ago
Jens Steube
c41af948ba
Merge pull request #1471 from neheb/32to64
...
remove special time handling in hashcat.
7 years ago
jsteube
bbe9b723e1
Timer: Switch from gettimeofday() to clock_gettime() to workaround problems on cygwin
7 years ago
Rosen Penev
1c5915cae3
remove special time handling in hashcat.
...
There's a way to get 64-bit time_t and 64-bit stat in MinGW, so use that.
7 years ago
jsteube
494c2724f5
Add some types for later use
7 years ago
jsteube
ea795ef5ab
Move out code to check for hashfile or hash on commandline into dedicated function
7 years ago
jsteube
1184ae1cdd
Added option --benchmark-all to benchmark all hash-modes not just the default selection
7 years ago
jsteube
b864fa5ba7
Removed option --gpu-temp-retain that tried to retain GPU temperature at X degrees celsius, please use driver specific tools
...
Removed option --powertune-enable to enable power tuning, please use driver specific tools
7 years ago
Rosen Penev
353d3c3008
Fix a bunch of cast-qual warnings
7 years ago
Rosen Penev
8458f07a57
Replace char[] with *char
...
The latter is more correct. The side effect is that filesize becomes smaller.
gcc clang
before
O2
756112 762120
Os
674192 680216
after
O2
748456 760728
Os
666536 674728
7 years ago
jsteube
635b2bfd50
Do initial OpenCL device thread management a bit different
7 years ago
philsmd
276879b1ea
show/left: improve speed of --show/--left again by using a single malloc/free for all nodes and reduce RAM by using the first nodes hash information
7 years ago
philsmd
433513a47f
get rid of last_node in pot_tree_entry, we update the first node of the list instead of the last one
7 years ago
philsmd
6542331101
show/left: improved the performance by using a tree and linked node structure
7 years ago
jsteube
2517292ac1
Removed option --weak-hash-check (zero-length password check) to increase startup time, it also causes many Trap 6 error on OSX
7 years ago
jsteube
7a278ef035
Fix overflow in out_push()
7 years ago
jsteube
5551337cf6
Show advice to use optimized kernels only if there's actually one for this hash-mode
7 years ago
Jens Steube
fcd20fbacb
OpenCL Runtime: Fall back to 64 threads default (from 256) on AMD GPU to prevent creating too many workitems
7 years ago
jsteube
688a580d6c
Fixed an integer overflow in innerloop_step and innerloop_cnt variables
7 years ago
jsteube
1d04de3a8e
Limit kernel-loops in straight-mode to 256, therefore allow rules to be stored in constant memory
7 years ago
jsteube
51372438fe
Allow OpenCL kernel inline assembly if ROCm drivers was detected
7 years ago
jsteube
12d95fd22c
Added option --example-hashes to show an example hash for each hash-mode
7 years ago
jsteube
58d1dedd1e
OpenCL Buffers: Do not allocate memory for amplifiers for fast hashes, it's simply not needed
7 years ago
jsteube
319799bbbf
Switch the datatypes of the variables responsible for work-item count and work-item size from u32 to u64
7 years ago
philsmd
e33e828bc6
replace all time_t/__time64_t with hc_time_t and all related functions
7 years ago
philsmd
1644ac30b5
use an overflow check instead of a hard coded value for ETA
7 years ago
jsteube
ac9bc55c9e
Fall back to 64 threads default (from 256) because modern GPU create too many workitems which then results in too less GPU memory available
7 years ago
jsteube
1cf6a078b0
Make tmp_size a real size_t as with latest GPU number can exceed 2^32
7 years ago
philsmd
bc1a101d2b
fixes #1321 : new option --wordlist-autohex-disable
7 years ago