1
0
mirror of https://github.com/hashcat/hashcat.git synced 2024-12-25 16:08:18 +00:00
Commit Graph

1656 Commits

Author SHA1 Message Date
jsteube
103fdf04a1 Fixed a invalid scalar datatype return value in hc_bytealign() where it should be a vector datatype return value 2018-08-09 11:00:08 +02:00
Jens Steube
1c280e4a6e Small performance boost for bcrypt on CPU 2018-08-02 14:20:04 +02:00
Michael Sprecher
3a321c8dce
Added hash-mode 16900 = Ansible Vault 2018-08-01 19:44:30 +02:00
jsteube
fbf434146d Add set_mark_1x4() and set_mark_1x4_S() 2018-07-28 18:03:18 +02:00
Jens Steube
14c444fd47 Replace c_append_helper_mini[] table with on-the-fly calculation in order to workaround compiler bugs in AMD OpenCL runtime 2018-07-28 13:59:55 +02:00
jsteube
88ebca40b8 Added hash-mode 16800 = WPA-PMKID-PBKDF2
Added hash-mode 16801 = WPA-PMKID-PMK
Renamed lot's of existing WPA related variables to WPA-EAPOL in order to distinguish them with WPA-PMKID variables
Renamed WPA/WPA2 to WPA-EAPOL-PBKDF2
Renamed WPA/WPA2 PMK to WPA-EAPOL-PMK
2018-07-25 16:46:06 +02:00
philsmd
2e1845ec11
fixes #1624: increase esalt/nonce buffer to 1024 for -m 11400 = SIP 2018-07-23 15:51:39 +02:00
Jens Steube
a43d3ad176 Rename some hashcat specific OpenCL functions to avoid conflicts with existing OpenCL functions from OpenCL runtime 2018-07-22 12:20:20 +02:00
Jens Steube
02a2495349 Switched array pointer types in function declarations in order to be compatible with OpenCL 2.0 2018-07-22 11:47:42 +02:00
Jens Steube
0ab7ab9cec OpenCL kernels: Removed the use of 'volatile' in inline assembly instructions where it is not needed 2018-07-21 12:29:22 +02:00
jsteube
c1622d6593 Fixed detection of AMD_GCN version in case the rocm driver is used 2018-07-21 11:52:54 +02:00
jsteube
81a447b167 Fixed a function declaration attribute in -m 8900 kernel leading to unuseable -m 9300 which shares kernel code with -m 8900 2018-06-21 13:46:53 +02:00
jsteube
32d6b3e10e OpenCL kernels: Add '-pure' prefix to kernel filenames to avoid problems caused by reusing existing hashcat installation folder 2018-06-20 14:18:17 +02:00
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
2018-06-15 17:00:41 +02:00
Mathieu Geli
4dbc1f4a87 Implement 7701/7801 SAP CODVN half-hashes 2018-03-06 16:42:53 +03:00
jsteube
8079abffb0 Fixed a missing kernel in -m 5600 in combination with -a 3 and -O if mask is >= 16 characters 2018-02-28 11:25:52 +01:00
Jens Steube
a71c69983d Make words_buf_r in DES bitsliced kernels __constant 2018-02-21 10:50:24 +01:00
jsteube
ca1115a1ee No longer need to use 32 threads on second dimension for bitsliced algorithms 2018-02-20 01:01:50 +01:00
Jens Steube
ad50883080 Allow unroll for DES based algorithms but not bitsliced versions 2018-02-18 11:28:25 +01:00
Jens Steube
e79feb0b6f Add more reqd_work_group_size attributes to kernels 2018-02-17 22:16:05 +01:00
Jens Steube
ea2f158cf8 Give JiT a hint about bcrypt running at 8 threads always 2018-02-17 21:33:11 +01:00
Jens Steube
81b229c08a Make new c_append_helper a bit more AMD friendly 2018-02-17 15:18:19 +01:00
jsteube
3a23b275e5 Improved c_append_helper[] handling 2018-02-17 14:24:29 +01:00
jsteube
64eb9ca9ef Fix md5crypt speed on GTX1080 2018-02-17 11:45:05 +01:00
Jens Steube
aa82d8d34d Re-enable CPU optimizations and some CPU case in thread management 2018-02-16 18:56:21 +01:00
Jens Steube
483ae613ee Copy/paste error in optimized -m 2500 AUX 3 kernel 2018-02-16 11:48:11 +01:00
Jens Steube
a15c165773 Revert the pos == 0 change due to some unexpected results on nvidia 2018-02-16 11:38:08 +01:00
jsteube
874635cc49 Do not use a vector function to write into a scalar variable even if vectorize support is disabled 2018-02-16 10:48:49 +01:00
jsteube
71adf1bd09 Do not use a vector function to write into a scalar variable even if vectorize support is disabled 2018-02-16 10:28:16 +01:00
jsteube
f596d076aa Optimize some WPA comparison kernel 2018-02-16 00:30:47 +01:00
Jens Steube
e0e796bc2d More optimized -m 500, -m 1600 and -m 6300 pure kernel 2018-02-15 15:35:22 +01:00
Jens Steube
97f569a8ca More optimized -m 500, -m 1600 and -m 6300 pure kernel 2018-02-15 12:31:59 +01:00
Jens Steube
f6f16f56af A bit optimized -m 500 pure kernel 2018-02-14 19:13:23 +01:00
jsteube
b626e7f61b Optimize update functions in inc_hash_* helper files by testing for pos == 0 2018-02-14 17:31:41 +01:00
Jens Steube
ec63c2f017 switch_buffer_* function can return sooner if offset is zero 2018-02-14 11:35:00 +01:00
Jens Steube
2dddef839c Fix sha1_update_64 debugging comment 2018-02-14 11:03:35 +01:00
Jens Steube
2a19f19904 Drop -m 6800 from no-unroll list in inc_vendor.cl 2018-02-13 17:08:29 +01:00
jsteube
dfb95024bc Fix temporary datatype in wpapmk kernels 2018-02-13 16:34:00 +01:00
jsteube
fe4413797e OpenCL Kernels: Use three separate comparison kernels (depending on keyver) for WPA instead of one 2018-02-13 09:13:35 +01:00
jsteube
00bd356ade Synchronize m01000s with m00900s 2018-02-12 09:03:11 +01:00
jsteube
aa65ed28e5 Switch back c_append_helper to static 2018-02-12 09:02:37 +01:00
Jens Steube
d656e9c3a4 OpenCL Kernels: Use the kernel local buffer size as additional reference in order to limit the thread-count 2018-02-11 10:56:08 +01:00
jsteube
5951207365 Get rid of some old volatiles 2018-02-09 19:18:30 +01:00
jsteube
05a01d3843 fix some datatypes 2018-02-08 19:13:29 +01:00
jsteube
d5153539e2 Some syntax error 2018-02-08 09:49:59 +01:00
jsteube
786384664e DECLSPEC for CPU 2018-02-08 09:42:59 +01:00
jsteube
4cbd0eb812 Fix missing compressor kernel in --stdout mode 2018-02-07 22:28:52 +01:00
jsteube
512fb5f6fb No inline keyword for rules 2018-02-07 15:02:58 +01:00
jsteube
e4e1c1d515 We can't mix inline functions with static constants 2018-02-07 14:16:27 +01:00
Jens Steube
8273bb8376 NV JiT doesn't like static inline keywords 2018-02-06 22:05:15 +01:00
jsteube
3e08750900 OpenCL Kernels: Add general function declaration keyword (static inline) 2018-02-06 19:12:24 +01:00
jsteube
5391edca0d Weird macOS JiT likes this more 2018-02-05 19:39:20 +01:00
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
2018-02-05 17:18:58 +01:00
jsteube
53e2b40bad Fixed a uninitialized value in OpenCL kernels 9720, 9820 and 10420 leading to absurd benchmark performance 2018-02-02 14:02:33 +01:00
jsteube
13a79cf942 Fix unoptimized Kerberos 5 TGS-REP etype 23 kernel for use on macOS 2018-01-31 21:28:46 +01:00
jsteube
e877c30ebc OpenCL Kernels: Remove password length restriction to 16 for Cisco-PIX and Cisco-ASA hashes
Fixes #1488
2018-01-27 22:21:44 +01:00
jsteube
18bb0a9493 Add missing gpu_atinit() to m02000_a0 and m02000_a1 2018-01-26 20:19:25 +01:00
jsteube
6a04e953e0 Fix missing gpu_atinit in --stdout kernel 2018-01-26 14:56:57 +01:00
jsteube
a9d5f571b7 Remove extra token at end of #include directive 2018-01-25 23:48:31 +01:00
Jens Steube
1f1eacca95 Fix -m 16600 -a 3 optimize mode kernels function declaration for CPU use 2018-01-25 19:04:30 +01:00
jsteube
553668bb9f Added hash-mode 16600 = Electrum Wallet (Salt-Type 1-3) 2018-01-25 15:28:21 +01:00
Jens Steube
7062425d2b OpenCL Kernels: Use a special kernel to initialize the password buffer used during autotune measurements to reduce startup time 2018-01-23 20:33:26 +01:00
jsteube
0796c074c3 Added -m 16500 Kernels
Also changed function declaration of parser function from const hashconfig_t to just hashconfig_t
2018-01-21 18:53:55 +01:00
jsteube
ee9ec0f9a7 Add JWT esalt datatype 2018-01-21 15:32:37 +01:00
Jens Steube
bb806d777e
Merge pull request #1493 from mohemiv/master
added -m 16400 = CRAM-MD5 Dovecot
2018-01-19 10:13:46 +01:00
jsteube
53f3da9f63 OpenCL Kernels: Use static declaraction for uXXa variables used in __constant space 2018-01-18 23:19:31 +01:00
jsteube
3a303ffce4 Replace variables from uXX to uXXa if used in __constant space 2018-01-18 23:16:11 +01:00
Arseniy Sharoglazov
928cf471fb The hash-mode for "CRAM-MD5 Dovecot" changed from 10201 to 16400 2018-01-17 11:25:21 +03:00
Arseniy Sharoglazov
798f05355f added -m 10201 = CRAM-MD5 Dovecot 2018-01-15 15:52:52 +03:00
philsmd
bf656774bb
fixes #1279: added -m 16300 = Ethereum Pre-Sale Wallet, PBKDF2-HMAC-SHA256 2017-12-20 11:41:46 +01:00
jsteube
0d89ddfcd9 Finish adding hash-mode 16200 = Apple Secure Notes 2017-12-13 12:32:38 +01:00
jsteube
f573c1d96d Add optimized -m 16100 kernels 2017-12-03 14:35:39 +01:00
jsteube
9a3cf88887 Update -m 16100 kernel to enable cracking of sequences 1, 3 and 5 2017-11-30 13:41:25 +01:00
jsteube
e5ca2e2fcb Add more kernels for -m 16100 2017-11-30 10:16:14 +01:00
jsteube
5847067c96 First working -m 16100 kernel 2017-11-29 17:00:14 +01:00
jsteube
1b312d14fd Added hash-mode 16000 = Tripcode 2017-11-11 14:44:56 +01:00
jsteube
00abb849e1 Update inc_vector.cl for ideal performance with reference GTX1080 for NV and Vega64 for AMD 2017-10-26 13:41:47 +02:00
jsteube
503f676cb0 Remove static keywords from OpenCL functions, they can cause old NV JiT compiler to fail 2017-10-20 13:23:43 +02:00
jsteube
9c832092df Fix some function declarations inside LUKS kernel 2017-10-10 01:27:32 +02:00
jsteube
b4c3df876c Fix some formating in -m 600 2017-10-09 18:45:11 +02:00
jsteube
7c2dadab17 no volatile required here 2017-09-21 20:08:24 +02:00
Jens Steube
55eaff3a45 Merge pull request #1365 from Fist0urs/DPAPI_reworked
-m 15300 reworked + splitted in 15300/15900
2017-09-21 17:02:18 +02:00
Fist0urs
e3cb3e9b4c test.pl ready and 0 error. Ready for PR 2017-09-21 16:55:30 +02:00
jsteube
7a17b8159b all() function is not working as expected in scalar datatype case 2017-09-21 12:23:33 +02:00
Fist0urs
a6294537fd Splitted DPAPI kernel in 2 to increase performances 2017-09-21 12:23:33 +02:00
jsteube
207ce9b853 all() function is not working as expected in scalar datatype case 2017-09-20 23:00:00 +02:00
jsteube
ddbe805c00 Fix last step of make_kn 2017-09-20 09:40:14 +02:00
jsteube
68f5b12754 Get rid of swap32() in make_kn() in -m 2500 2017-09-19 13:45:43 +02:00
jsteube
ab1dabebbe Fix missing include in -m 2501 2017-09-19 12:19:46 +02:00
jsteube
b14f44dcf7 Fix uninitialized keymic buffer 2017-09-19 11:58:18 +02:00
jsteube
beab5457e6 Backport WPA-PSK-SHA256-AES-CMAC to -m 2501 2017-09-19 10:22:03 +02:00
jsteube
ca1b6492e7 Some code simplify on AES CMAC 2017-09-19 01:12:29 +02:00
jsteube
4e3a642f7f Initial WPA2-PSK-SHA256-AES-CMAC support 2017-09-19 01:08:38 +02:00
jsteube
98fc02e04b Add PTK compute for keyver 3 2017-09-18 13:50:09 +02:00
jsteube
617dbb97ba Prepare migration -m 15800 into -m 2500 2017-09-18 13:21:00 +02:00
philsmd
2dadae4e9a fixed incorrect use of the esalt_bufs for -m 600 = BLAKE2-512 2017-09-17 15:28:24 +02:00
mhasbini
de7ccd88ef Fix overflow in mangle_dupechar_last function 2017-09-16 20:43:38 +03:00
jsteube
b169653b8f Fix missing return value in rule_op_mangle_toggle_at() 2017-09-08 22:49:49 +02:00
jsteube
55f653f374 Get rid of volatile in TrueCrypt kernels 2017-09-08 19:47:56 +02:00
jsteube
16e33b20fc Fix out of boundary access in -m 4700 2017-09-08 19:42:34 +02:00
jsteube
51dd982b12 Bring back some volatile for AMD 2017-09-08 14:08:21 +02:00
jsteube
9125062ffc Move volatiles for AMD closer to the problem 2017-09-08 13:32:19 +02:00
jsteube
1963b12fdc According to AMD docs, GCN 3 and 4 are the same 2017-09-08 12:46:00 +02:00
jsteube
ac9f1da747 Add fine-tuned AMD GCN control macros 2017-09-07 20:33:43 +02:00
Jens Steube
a910aea9e0 Do not use __local memory for -m 13100 if running on a device without physical shared memory 2017-09-05 17:41:55 +02:00
Jens Steube
b58aa445b4 Do not use __local memory for -m 7500 if running on a device without physical shared memory 2017-09-05 17:37:20 +02:00
Jens Steube
63f6ca5114 Do not use __local memory for whirlpool if running on a device without physical shared memory 2017-09-05 16:45:20 +02:00
jsteube
8b0e7087c7 Fixed an invalid optimization code in kernel 7700 depending on the input hash, causing the kernel to loop forever 2017-09-03 13:36:14 +02:00
jsteube
151dbc5349 Fix replace value in inc_hash_ripemd160.cl 2017-09-01 16:35:08 +02:00
jsteube
f859f466ef Fix -m 8300 in -a 0 mode 2017-09-01 16:10:29 +02:00
jsteube
f5e04254dc Fix -m 10800 in -a 0 mode 2017-09-01 16:06:42 +02:00
jsteube
d3b9febb30 Fix some double variable declarations 2017-08-30 16:29:25 +02:00
jsteube
40b57677cd OpenCL Kernels: Reactivate Dalibors XOR optimization on MD5_H on all MD5 based algorithms 2017-08-30 15:32:09 +02:00
jsteube
6d112aeb39 OpenCL Kernels: Rewritten Keccak kernel to run fully on registers and partially reversed last round 2017-08-30 13:27:04 +02:00
jsteube
a378abee66 Add missing NEW_SIMD_CODE in -m 6600 2017-08-29 12:01:43 +02:00
jsteube
1c169af0ad Make -m 14100 a pure kernel only 2017-08-28 22:26:30 +02:00
jsteube
2b9888486e Make -m 14000 a pure kernel only and add volatile for asm statement 2017-08-28 22:20:40 +02:00
jsteube
99f416435e Fix invalid use of __constant in LM kernel 2017-08-28 19:40:51 +02:00
jsteube
6db2f4cc18 Fix typo 2017-08-28 15:54:47 +02:00
jsteube
918578bee1 Improve some NVidia specific inline assembly 2017-08-28 14:15:47 +02:00
jsteube
9de1e557bb More VEGA specific inline assembly to improve SHA1 based kernels 2017-08-28 09:24:06 +02:00
jsteube
a0be36d7b8 Fix compile error caused by __add3() 2017-08-27 19:46:17 +02:00
jsteube
00e38cc2c6 Add VEGA specific inline assembly to improve all MD4, MD5, SHA1 and SHA256 based kernels 2017-08-27 19:36:07 +02:00
jsteube
7bfd343ec9 Optimized rule_op_mangle_dupechar_last(), rule_op_mangle_rotate_right(), rule_op_mangle_rotate_left() and append_block1() in rule engine 2017-08-27 16:47:21 +02:00
jsteube
52a97fee75 Improve rule engine performance by improving append_0x80_xxx() performance by using precomputed values from constant memory 2017-08-27 14:22:20 +02:00
jsteube
3260000357 Fix whirlpool pure kernel in -a 0 mode 2017-08-26 19:51:37 +02:00
jsteube
e3810d054b Fix some use of pw_t tmp variable 2017-08-26 19:48:38 +02:00
jsteube
5e01ff4c53 Refactor some u32x to u32 where u32x is not needed 2017-08-26 18:31:50 +02:00
jsteube
1aa76eac15 Refactor use of __constant to match up with the user selected attack mode 2017-08-25 17:52:55 +02:00
jsteube
938c281ee0 Resurrect some volatile variables in order to correctly compile pure kernels on AMD drivers 2017-08-25 17:06:07 +02:00
jsteube
48fbe81a09 Add more inline assembly for AMD ROCm 2017-08-25 16:33:00 +02:00
jsteube
6c619155c3 Workaround ROCm compiler error in aes256_ExpandKey() 2017-08-25 12:10:36 +02:00
jsteube
8c9c36ee2a Fix out-of-bound access in aesXXX_InvertKey() 2017-08-25 11:52:07 +02:00
jsteube
bed7e8f466 Remove unused truncate_block_xxx_xx() functions and update kernels to use the _S function 2017-08-24 20:07:43 +02:00
jsteube
51dc1c7db3 Use truncate_block_4x4_le_S() instead of truncate_block_4x4_le() in -m 6800 2017-08-24 19:53:29 +02:00
jsteube
9b73c464d2 Fix typo in macro 2017-08-24 17:19:16 +02:00
jsteube
7b443ee7ff Optimize performance of rule_op_mangle_title_sep(), rule_op_mangle_purgechar() and rule_op_mangle_replace() 2017-08-24 17:14:33 +02:00
jsteube
0de41c2716 Some more optimizations for rule engine 2017-08-24 15:09:55 +02:00
jsteube
9f8c5a253d More rule engine performance optimizations 2017-08-24 00:49:46 +02:00
jsteube
0783289e2f Optimized a0 pure kernel for AMD 2017-08-23 13:40:22 +02:00
jsteube
a5659d5619 Also switch optimized kernels rule engine to make use of kernel rules in constant memory 2017-08-23 12:46:14 +02:00
jsteube
1d04de3a8e Limit kernel-loops in straight-mode to 256, therefore allow rules to be stored in constant memory 2017-08-23 12:43:59 +02:00
jsteube
51372438fe Allow OpenCL kernel inline assembly if ROCm drivers was detected 2017-08-22 18:47:53 +02:00
jsteube
8853884f2a Fix append_four_byte() in case sm8 is 0 2017-08-21 16:04:43 +02:00
jsteube
f32e113942 Add missing case in append_block() in pure kernel rule engine 2017-08-20 15:08:51 +02:00
jsteube
6907981f08 Backport current state of optimized kernel rule engine to CPU 2017-08-20 12:50:24 +02:00
jsteube
508f1562f2 Fix --stdout kernels, gid_max was still set to u32 2017-08-20 12:13:34 +02:00
jsteube
319799bbbf Switch the datatypes of the variables responsible for work-item count and work-item size from u32 to u64 2017-08-19 16:39:22 +02:00
jsteube
d9c906e134 Move 0x80 to hardcoded position for sha3-256 bit in order to allow ROCm compiler to use registers only 2017-08-18 16:22:25 +02:00
jsteube
694cc0b740 Remove all calls to overwrite_at_* functions 2017-08-17 16:20:01 +02:00