Jens Steube
|
aa82d8d34d
|
Re-enable CPU optimizations and some CPU case in thread management
|
7 years ago |
Jens Steube
|
483ae613ee
|
Copy/paste error in optimized -m 2500 AUX 3 kernel
|
7 years ago |
Jens Steube
|
a15c165773
|
Revert the pos == 0 change due to some unexpected results on nvidia
|
7 years ago |
jsteube
|
874635cc49
|
Do not use a vector function to write into a scalar variable even if vectorize support is disabled
|
7 years ago |
jsteube
|
71adf1bd09
|
Do not use a vector function to write into a scalar variable even if vectorize support is disabled
|
7 years ago |
jsteube
|
f596d076aa
|
Optimize some WPA comparison kernel
|
7 years ago |
Jens Steube
|
e0e796bc2d
|
More optimized -m 500, -m 1600 and -m 6300 pure kernel
|
7 years ago |
Jens Steube
|
97f569a8ca
|
More optimized -m 500, -m 1600 and -m 6300 pure kernel
|
7 years ago |
Jens Steube
|
f6f16f56af
|
A bit optimized -m 500 pure kernel
|
7 years ago |
jsteube
|
b626e7f61b
|
Optimize update functions in inc_hash_* helper files by testing for pos == 0
|
7 years ago |
Jens Steube
|
ec63c2f017
|
switch_buffer_* function can return sooner if offset is zero
|
7 years ago |
Jens Steube
|
2dddef839c
|
Fix sha1_update_64 debugging comment
|
7 years ago |
Jens Steube
|
2a19f19904
|
Drop -m 6800 from no-unroll list in inc_vendor.cl
|
7 years ago |
jsteube
|
dfb95024bc
|
Fix temporary datatype in wpapmk kernels
|
7 years ago |
jsteube
|
fe4413797e
|
OpenCL Kernels: Use three separate comparison kernels (depending on keyver) for WPA instead of one
|
7 years ago |
jsteube
|
00bd356ade
|
Synchronize m01000s with m00900s
|
7 years ago |
jsteube
|
aa65ed28e5
|
Switch back c_append_helper to static
|
7 years ago |
Jens Steube
|
d656e9c3a4
|
OpenCL Kernels: Use the kernel local buffer size as additional reference in order to limit the thread-count
|
7 years ago |
jsteube
|
5951207365
|
Get rid of some old volatiles
|
7 years ago |
jsteube
|
05a01d3843
|
fix some datatypes
|
7 years ago |
jsteube
|
d5153539e2
|
Some syntax error
|
7 years ago |
jsteube
|
786384664e
|
DECLSPEC for CPU
|
7 years ago |
jsteube
|
4cbd0eb812
|
Fix missing compressor kernel in --stdout mode
|
7 years ago |
jsteube
|
512fb5f6fb
|
No inline keyword for rules
|
7 years ago |
jsteube
|
e4e1c1d515
|
We can't mix inline functions with static constants
|
7 years ago |
Jens Steube
|
8273bb8376
|
NV JiT doesn't like static inline keywords
|
7 years ago |
jsteube
|
3e08750900
|
OpenCL Kernels: Add general function declaration keyword (static inline)
|
7 years ago |
jsteube
|
5391edca0d
|
Weird macOS JiT likes this more
|
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
|
53e2b40bad
|
Fixed a uninitialized value in OpenCL kernels 9720, 9820 and 10420 leading to absurd benchmark performance
|
7 years ago |
jsteube
|
13a79cf942
|
Fix unoptimized Kerberos 5 TGS-REP etype 23 kernel for use on macOS
|
7 years ago |
jsteube
|
e877c30ebc
|
OpenCL Kernels: Remove password length restriction to 16 for Cisco-PIX and Cisco-ASA hashes
Fixes #1488
|
7 years ago |
jsteube
|
18bb0a9493
|
Add missing gpu_atinit() to m02000_a0 and m02000_a1
|
7 years ago |
jsteube
|
6a04e953e0
|
Fix missing gpu_atinit in --stdout kernel
|
7 years ago |
jsteube
|
a9d5f571b7
|
Remove extra token at end of #include directive
|
7 years ago |
Jens Steube
|
1f1eacca95
|
Fix -m 16600 -a 3 optimize mode kernels function declaration for CPU use
|
7 years ago |
jsteube
|
553668bb9f
|
Added hash-mode 16600 = Electrum Wallet (Salt-Type 1-3)
|
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 |
jsteube
|
ee9ec0f9a7
|
Add JWT esalt datatype
|
7 years ago |
Jens Steube
|
bb806d777e
|
Merge pull request #1493 from mohemiv/master
added -m 16400 = CRAM-MD5 Dovecot
|
7 years ago |
jsteube
|
53f3da9f63
|
OpenCL Kernels: Use static declaraction for uXXa variables used in __constant space
|
7 years ago |
jsteube
|
3a303ffce4
|
Replace variables from uXX to uXXa if used in __constant space
|
7 years ago |
Arseniy Sharoglazov
|
928cf471fb
|
The hash-mode for "CRAM-MD5 Dovecot" changed from 10201 to 16400
|
7 years ago |
Arseniy Sharoglazov
|
798f05355f
|
added -m 10201 = CRAM-MD5 Dovecot
|
7 years ago |
philsmd
|
bf656774bb
|
fixes #1279: added -m 16300 = Ethereum Pre-Sale Wallet, PBKDF2-HMAC-SHA256
|
7 years ago |
jsteube
|
0d89ddfcd9
|
Finish adding hash-mode 16200 = Apple Secure Notes
|
7 years ago |
jsteube
|
f573c1d96d
|
Add optimized -m 16100 kernels
|
7 years ago |
jsteube
|
9a3cf88887
|
Update -m 16100 kernel to enable cracking of sequences 1, 3 and 5
|
7 years ago |
jsteube
|
e5ca2e2fcb
|
Add more kernels for -m 16100
|
7 years ago |
jsteube
|
5847067c96
|
First working -m 16100 kernel
|
7 years ago |
jsteube
|
1b312d14fd
|
Added hash-mode 16000 = Tripcode
|
7 years ago |
jsteube
|
00abb849e1
|
Update inc_vector.cl for ideal performance with reference GTX1080 for NV and Vega64 for AMD
|
7 years ago |
jsteube
|
503f676cb0
|
Remove static keywords from OpenCL functions, they can cause old NV JiT compiler to fail
|
7 years ago |
jsteube
|
9c832092df
|
Fix some function declarations inside LUKS kernel
|
7 years ago |
jsteube
|
b4c3df876c
|
Fix some formating in -m 600
|
7 years ago |
jsteube
|
7c2dadab17
|
no volatile required here
|
7 years ago |
Jens Steube
|
55eaff3a45
|
Merge pull request #1365 from Fist0urs/DPAPI_reworked
-m 15300 reworked + splitted in 15300/15900
|
7 years ago |
Fist0urs
|
e3cb3e9b4c
|
test.pl ready and 0 error. Ready for PR
|
7 years ago |
jsteube
|
7a17b8159b
|
all() function is not working as expected in scalar datatype case
|
7 years ago |
Fist0urs
|
a6294537fd
|
Splitted DPAPI kernel in 2 to increase performances
|
7 years ago |
jsteube
|
207ce9b853
|
all() function is not working as expected in scalar datatype case
|
7 years ago |
jsteube
|
ddbe805c00
|
Fix last step of make_kn
|
7 years ago |
jsteube
|
68f5b12754
|
Get rid of swap32() in make_kn() in -m 2500
|
7 years ago |
jsteube
|
ab1dabebbe
|
Fix missing include in -m 2501
|
7 years ago |
jsteube
|
b14f44dcf7
|
Fix uninitialized keymic buffer
|
7 years ago |
jsteube
|
beab5457e6
|
Backport WPA-PSK-SHA256-AES-CMAC to -m 2501
|
7 years ago |
jsteube
|
ca1b6492e7
|
Some code simplify on AES CMAC
|
7 years ago |
jsteube
|
4e3a642f7f
|
Initial WPA2-PSK-SHA256-AES-CMAC support
|
7 years ago |
jsteube
|
98fc02e04b
|
Add PTK compute for keyver 3
|
7 years ago |
jsteube
|
617dbb97ba
|
Prepare migration -m 15800 into -m 2500
|
7 years ago |
philsmd
|
2dadae4e9a
|
fixed incorrect use of the esalt_bufs for -m 600 = BLAKE2-512
|
7 years ago |
mhasbini
|
de7ccd88ef
|
Fix overflow in mangle_dupechar_last function
|
7 years ago |
jsteube
|
b169653b8f
|
Fix missing return value in rule_op_mangle_toggle_at()
|
7 years ago |
jsteube
|
55f653f374
|
Get rid of volatile in TrueCrypt kernels
|
7 years ago |
jsteube
|
16e33b20fc
|
Fix out of boundary access in -m 4700
|
7 years ago |
jsteube
|
51dd982b12
|
Bring back some volatile for AMD
|
7 years ago |
jsteube
|
9125062ffc
|
Move volatiles for AMD closer to the problem
|
7 years ago |
jsteube
|
1963b12fdc
|
According to AMD docs, GCN 3 and 4 are the same
|
7 years ago |
jsteube
|
ac9f1da747
|
Add fine-tuned AMD GCN control macros
|
7 years ago |
Jens Steube
|
a910aea9e0
|
Do not use __local memory for -m 13100 if running on a device without physical shared memory
|
7 years ago |
Jens Steube
|
b58aa445b4
|
Do not use __local memory for -m 7500 if running on a device without physical shared memory
|
7 years ago |
Jens Steube
|
63f6ca5114
|
Do not use __local memory for whirlpool if running on a device without physical shared memory
|
7 years ago |
jsteube
|
8b0e7087c7
|
Fixed an invalid optimization code in kernel 7700 depending on the input hash, causing the kernel to loop forever
|
7 years ago |
jsteube
|
151dbc5349
|
Fix replace value in inc_hash_ripemd160.cl
|
7 years ago |
jsteube
|
f859f466ef
|
Fix -m 8300 in -a 0 mode
|
7 years ago |
jsteube
|
f5e04254dc
|
Fix -m 10800 in -a 0 mode
|
7 years ago |
jsteube
|
d3b9febb30
|
Fix some double variable declarations
|
7 years ago |
jsteube
|
40b57677cd
|
OpenCL Kernels: Reactivate Dalibors XOR optimization on MD5_H on all MD5 based algorithms
|
7 years ago |
jsteube
|
6d112aeb39
|
OpenCL Kernels: Rewritten Keccak kernel to run fully on registers and partially reversed last round
|
7 years ago |
jsteube
|
a378abee66
|
Add missing NEW_SIMD_CODE in -m 6600
|
7 years ago |
jsteube
|
1c169af0ad
|
Make -m 14100 a pure kernel only
|
7 years ago |
jsteube
|
2b9888486e
|
Make -m 14000 a pure kernel only and add volatile for asm statement
|
7 years ago |
jsteube
|
99f416435e
|
Fix invalid use of __constant in LM kernel
|
7 years ago |
jsteube
|
6db2f4cc18
|
Fix typo
|
7 years ago |
jsteube
|
918578bee1
|
Improve some NVidia specific inline assembly
|
7 years ago |
jsteube
|
9de1e557bb
|
More VEGA specific inline assembly to improve SHA1 based kernels
|
7 years ago |
jsteube
|
a0be36d7b8
|
Fix compile error caused by __add3()
|
7 years ago |
jsteube
|
00e38cc2c6
|
Add VEGA specific inline assembly to improve all MD4, MD5, SHA1 and SHA256 based kernels
|
7 years ago |
jsteube
|
7bfd343ec9
|
Optimized rule_op_mangle_dupechar_last(), rule_op_mangle_rotate_right(), rule_op_mangle_rotate_left() and append_block1() in rule engine
|
7 years ago |
jsteube
|
52a97fee75
|
Improve rule engine performance by improving append_0x80_xxx() performance by using precomputed values from constant memory
|
7 years ago |
jsteube
|
3260000357
|
Fix whirlpool pure kernel in -a 0 mode
|
7 years ago |
jsteube
|
e3810d054b
|
Fix some use of pw_t tmp variable
|
7 years ago |
jsteube
|
5e01ff4c53
|
Refactor some u32x to u32 where u32x is not needed
|
7 years ago |
jsteube
|
1aa76eac15
|
Refactor use of __constant to match up with the user selected attack mode
|
7 years ago |
jsteube
|
938c281ee0
|
Resurrect some volatile variables in order to correctly compile pure kernels on AMD drivers
|
7 years ago |
jsteube
|
48fbe81a09
|
Add more inline assembly for AMD ROCm
|
7 years ago |
jsteube
|
6c619155c3
|
Workaround ROCm compiler error in aes256_ExpandKey()
|
7 years ago |
jsteube
|
8c9c36ee2a
|
Fix out-of-bound access in aesXXX_InvertKey()
|
7 years ago |
jsteube
|
bed7e8f466
|
Remove unused truncate_block_xxx_xx() functions and update kernels to use the _S function
|
7 years ago |
jsteube
|
51dc1c7db3
|
Use truncate_block_4x4_le_S() instead of truncate_block_4x4_le() in -m 6800
|
7 years ago |
jsteube
|
9b73c464d2
|
Fix typo in macro
|
7 years ago |
jsteube
|
7b443ee7ff
|
Optimize performance of rule_op_mangle_title_sep(), rule_op_mangle_purgechar() and rule_op_mangle_replace()
|
7 years ago |
jsteube
|
0de41c2716
|
Some more optimizations for rule engine
|
7 years ago |
jsteube
|
9f8c5a253d
|
More rule engine performance optimizations
|
7 years ago |
jsteube
|
0783289e2f
|
Optimized a0 pure kernel for AMD
|
7 years ago |
jsteube
|
a5659d5619
|
Also switch optimized kernels rule engine to make use of kernel rules in constant memory
|
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
|
8853884f2a
|
Fix append_four_byte() in case sm8 is 0
|
7 years ago |
jsteube
|
f32e113942
|
Add missing case in append_block() in pure kernel rule engine
|
7 years ago |
jsteube
|
6907981f08
|
Backport current state of optimized kernel rule engine to CPU
|
7 years ago |
jsteube
|
508f1562f2
|
Fix --stdout kernels, gid_max was still set to u32
|
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 |
jsteube
|
d9c906e134
|
Move 0x80 to hardcoded position for sha3-256 bit in order to allow ROCm compiler to use registers only
|
7 years ago |
jsteube
|
694cc0b740
|
Remove all calls to overwrite_at_* functions
|
7 years ago |
jsteube
|
e984a829ea
|
Remove no longer needed overwrite_at_* functions
|
7 years ago |
jsteube
|
bf299fe043
|
Optimized 3DES for rocm
|
7 years ago |
jsteube
|
ad1ce462d1
|
Get rid of ceil() in OpenCL kernels
|
7 years ago |
jsteube
|
53f53fe014
|
Reduced number of required registers in SIP based on maximum possible esalt length
|
7 years ago |
jsteube
|
9ee5da40e0
|
Workaround rocm compiler error for -m 15300
|
7 years ago |
jsteube
|
88e995ddcf
|
Replace some SIMD related function calls
|
7 years ago |
jsteube
|
5b5bdf3889
|
Replace some SIMD related function calls
|
7 years ago |
jsteube
|
967e96728d
|
Make all the OpenCL kernel function includes static
|
7 years ago |
jsteube
|
21e9c63d46
|
Fix rotl64() the same was as rotr64()
|
7 years ago |
jsteube
|
58012ada0c
|
Fall back to old rotr64 optimization for AMD
|
7 years ago |
philsmd
|
4a89172140
|
reformatting; replaced some tabs with spaces
|
7 years ago |
jsteube
|
ec874c1d59
|
Optimized the following pure kernel rule engine functions:
- mangle_lrest()
- mangle_lrest_ufirst()
- mangle_urest()
- mangle_urest_lfirst()
- mangle_trest()
- mangle_toggle_at()
- mangle_reverse()
- mangle_dupeword()
- mangle_reflect()
- mangle_rotate_left()
- mangle_rotate_right()
- mangle_switch_first()
- mangle_switch_last()
- mangle_switch_at()
- mangle_title_sep()
- mangle_title_sep()
Added some helper functions:
- generate_cmask()
- append_four_byte()
- append_three_byte()
- append_two_byte()
- append_one_byte()
- append_block()
- exchange_byte()
Removed some helper functions:
- upper_at()
- lower_at()
- toggle_at()
- mangle_switch()
NOTE: Changes need to be backported to CPU when finished
|
7 years ago |
jsteube
|
9a57c4b20e
|
Fix missing boundary check in pure kernel rule engine
|
7 years ago |
jsteube
|
dcaa91a88f
|
Fix rule engine function call in amp_a0
|
7 years ago |
jsteube
|
0b0abb5c12
|
Prepare pure kernel rule engine for performance optimization
|
7 years ago |
jsteube
|
98b4aab9d0
|
Update inc_rp_optimized to inc_rp for pure kernels
|
7 years ago |
jsteube
|
cb1fe251de
|
Add missing functions to pure kernel rule engine
|
7 years ago |
jsteube
|
07b54c1257
|
Replace code to use pure kernel rule engine for slow hashes
|
7 years ago |
jsteube
|
8a0d21360b
|
Prepare for pure kernel rule engine support
|
7 years ago |
jsteube
|
34d882a116
|
Rename inc_rp.X to inc_rp_optimized.X
|
7 years ago |
jsteube
|
68a8f70edb
|
Mix in pure kernel functions in various optimized kernels
|
7 years ago |
jsteube
|
66f7590883
|
Mix in pure kernel functions in various optimized kernels
|
7 years ago |
jsteube
|
a228e296da
|
Fix some whirlpool vector function declaration
|
7 years ago |
jsteube
|
560a786ea7
|
Mix in pure kernel functions in various optimized kernels
|
7 years ago |