1
0
mirror of https://github.com/hashcat/hashcat.git synced 2025-02-02 10:51:16 +00:00
Commit Graph

607 Commits

Author SHA1 Message Date
jsteube
a2d99c5ac6 Rewrite several *_parse_hash() functions to use parse_and_store_generic_salt() 2018-06-25 16:30:40 +02:00
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()
2018-06-25 11:36:09 +02:00
jsteube
5f83dd8620 Convert cisco4_parse_hash() to make use of input_tokenizer()
Convert lm_parse_hash() to make use of input_tokenizer()
2018-06-24 14:04:05 +02:00
jsteube
2abe8caf24 Convert bcrypt_parse_hash() to make use of input_tokenizer()
Add more code to input_tokenizer()
2018-06-23 22:32:49 +02:00
jsteube
26dea37c9d TEST CODE: tokenizer function in order to simplify parsing functions 2018-06-23 16:00:49 +02:00
jsteube
c28fdf7f44 Added hash-mode 16700 = FileVault 2 2018-06-18 14:38:35 +02:00
Jens Steube
fee4cb42cc
Merge pull request #1541 from erpscanteam/master
POC for cracking SAP "half hashes" CODVN B+F/G
2018-06-12 16:38:21 +02:00
philsmd
7d6c0d746c
7-Zip: increase the crc length to parse
Similar to the increase done with this commit: d382400805
we need to increase the crc length again such that hashcat can load hashes corresponding to some very highly compressed files within the 7-Zip archive. 

For reference, this problem was first reported here: https://hashcat.net/forum/thread-7378.html :

as you can see
```
...$1059026$5d00001000): Salt-value exception
```

The value 1059026 is about 1MB of decrypted and decompressed data that needs to be checksummed.
2018-03-22 09:52:40 +01:00
Mathieu Geli
4dbc1f4a87 Implement 7701/7801 SAP CODVN half-hashes 2018-03-06 16:42:53 +03:00
jsteube
63defd1cea Remove unused variable 2018-02-28 11:57:23 +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
872f82ab8d Get rid of thread limit for bitsliced kernels 2018-02-18 11:10:33 +01:00
Jens Steube
e79feb0b6f Add more reqd_work_group_size attributes to kernels 2018-02-17 22:16:05 +01:00
Jens Steube
7674c3a556 Revert "Thread limits on bitsliced kernels no longer required"
This reverts commit ba5f23474e.
2018-02-17 21:28:02 +01:00
Jens Steube
ba5f23474e Thread limits on bitsliced kernels no longer required 2018-02-17 20:41:07 +01:00
jsteube
b8b816eada Fix 64 marker for -m 11300 and -m 15900 2018-02-16 21:53:25 +01:00
Jens Steube
aa82d8d34d Re-enable CPU optimizations and some CPU case in thread management 2018-02-16 18:56:21 +01:00
jsteube
dfb95024bc Fix temporary datatype in wpapmk kernels 2018-02-13 16:34:00 +01:00
Jens Steube
f75accef59 Update -m 2501 selftest hash in order to succeed with new AUX kernels 2018-02-13 12:09:00 +01:00
Jens Steube
6cd6b08229 Other format that base on md5crypt should also use OPTS_TYPE_PREFERED_THREAD 2018-02-13 11:59:47 +01:00
Jens Steube
413ade76fb Add OPTS_TYPE_PREFERED_THREAD flag for -m 500 2018-02-13 11:12:08 +01:00
Jens Steube
1361651730 Add OPTS_TYPE_PREFERED_THREAD marker 2018-02-13 10:27:43 +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
91e522d094 Add special marker for speed only mode 2018-02-12 09:41:46 +01:00
jsteube
c4f30220a0 OpenCL Kernels: Refactored kernel thread management from native to maximum per kernel 2018-02-11 21:29:57 +01:00
jsteube
ce8f445ebe Fix a few warnings and divide by zero (speed_pos) 2018-02-11 14:25:55 +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
Jens Steube
75c4d09301 CPU threads still work better on a single local work item 2018-02-09 23:40:52 +01:00
Jens Steube
b0ff625844 OpenCL Kernels: Thread-count is switched from native to maximum - as a consequence we assume host memory pool of 2GB per GPU 2018-02-09 16:42:28 +01:00
jsteube
088c45040b Remove some redundant constants 2018-02-09 10:48:19 +01:00
jsteube
05a01d3843 fix some datatypes 2018-02-08 19:13:29 +01:00
jsteube
cdc4f3828b Reduce max kernel threads from 256 to 64 in -w 4 to save host and GPU memory 2018-02-06 09:38:54 +01:00
jsteube
2f30e5e929 Fixed invalid support for SIMD in -m 400 2018-02-05 15:57:36 +01:00
Jens Steube
3d2c0018fc Limit the maximum OpenCL thread count to 256
If an OpenCL device allows a very high thread count (for example 1024 on nvidia), the host memory required is 32 times as high with 32 (It jumps from 128MB to 4GB device memory requirement). since there's no device with that much device memory (because of 1/4 memory rule) it has to limit the kernel_accel_max to be a very low number because the pws buffer will be so large otherwise. therefore autotune will be unable to calculate a good kernel_accel multiplier. currently there's no OpenCL device known that needs result in a better performance with 1024 threads compared to 256. as a result, we limit the number of threads to 256, which turns out to be a general good value.
2018-02-03 12:28:00 +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
553668bb9f Added hash-mode 16600 = Electrum Wallet (Salt-Type 1-3) 2018-01-25 15:28:21 +01:00
jsteube
7a8239b4c1 Fixed the maximum password length check in password reassembling function
Fixes #1492
2018-01-22 18:59:46 +01:00
jsteube
ce0cee0ac4 Stick to original JWT format from jwt.io 2018-01-21 19:57:24 +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
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
838a71637a Remove fixed iteration count for apple secure notes 2017-12-17 23:29:02 +01:00
jsteube
535945b03a Fix rename $SN$ signature to $ASN$ for apple secure notes 2017-12-13 12:39:00 +01:00
jsteube
d9c5c42966 Rename $SN$ signature to $ASN$ for apple secure notes 2017-12-13 12:36:01 +01:00
jsteube
0d89ddfcd9 Finish adding hash-mode 16200 = Apple Secure Notes 2017-12-13 12:32:38 +01:00
jsteube
1184ae1cdd Added option --benchmark-all to benchmark all hash-modes not just the default selection 2017-12-05 11:08:59 +01:00
jsteube
4414b520c8 remove unused variables 2017-12-04 11:20:48 +01:00
jsteube
829ea605c5 Self Test: Skip self-test for mode 8900 user-configurable scrypt settings are incompatible to fixed settings in the self-test hash
Self Test: Skip self-test for mode 15700 because settings are too high and create a too long startup time
2017-12-04 11:14:39 +01:00
jsteube
f573c1d96d Add optimized -m 16100 kernels 2017-12-03 14:35:39 +01:00
jsteube
0fbaff8b90 Revert: Have -m 16100 always running in keep-guessing mode 2017-11-30 12:36:43 +01:00
jsteube
cda0d7dd35 Have -m 16100 always running in keep-guessing mode 2017-11-30 12:35:22 +01:00
jsteube
5847067c96 First working -m 16100 kernel 2017-11-29 17:00:14 +01:00
philsmd
9d58ddd9f6
fixed strtok_r () calls, could prevent memory crashes 2017-11-18 14:23:02 +01:00
philsmd
d382400805
fixes #1450: allow longer crc32 data length field for -m 11600 2017-11-18 12:59:21 +01:00
Rosen Penev
353d3c3008 Fix a bunch of cast-qual warnings 2017-11-13 20:46:26 -08:00
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
2017-11-13 12:12:44 -08:00
Jens Steube
ea5425b344
Merge pull request #1439 from neheb/master
Change atoi family to strtol family
2017-11-13 09:10:57 +01:00
jsteube
1b312d14fd Added hash-mode 16000 = Tripcode 2017-11-11 14:44:56 +01:00
Royce Williams
59701ee7ed change wording when user tries -O, but not needed 2017-11-06 06:33:55 -09:00
Rosen Penev
1109017a53 Change atoi family to strtol family
Suggested by clang tidy
2017-11-05 12:33:41 -08:00
Rosen Penev
3ba84f17f1 More clang tidy fixes 2017-11-05 01:52:29 -07:00
Jens Steube
77f3eb2864 OpenCL Kernels: Thread-count is set to hardware native count except if -w 4 is used then OpenCL maximum is used 2017-10-22 14:16:32 +02:00
jsteube
d0f5c9f2b3 Rename MacOS to macOS 2017-10-20 13:36:47 +02:00
jsteube
980f04a7b6 Rename instances of OSX to MacOS 2017-10-20 11:58:31 +02:00
jsteube
b99eb92b56 Re-enable amdgpu-pro, do some warm-up in benchmark mode 2017-10-19 20:56:14 +02:00
jsteube
635b2bfd50 Do initial OpenCL device thread management a bit different 2017-10-19 14:54:03 +02:00
jsteube
0d192df517 Run integreted GPU at 8 threads max 2017-10-18 17:02:12 +02:00
Jens Steube
a037ba0c73 Merge pull request #1375 from neheb/warning
Fix for clang and some cppcheck warnings
2017-09-29 11:20:35 +02:00
Rosen Penev
148c4335aa fix printf formats. 2017-09-27 20:05:04 -07:00
Fist0urs
e3cb3e9b4c test.pl ready and 0 error. Ready for PR 2017-09-21 16:55:30 +02:00
Fist0urs
a6294537fd Splitted DPAPI kernel in 2 to increase performances 2017-09-21 12:23:33 +02:00
Jens Steube
24a78574e2 Fix use of veracrypt-pim 2017-09-19 16:41:31 +02:00
jsteube
bac000667c Fix wpa_parse_hash(), the wpa esalt was partially initialized beforehand, we can not simply memset it to zero 2017-09-19 12:01:11 +02:00
jsteube
617dbb97ba Prepare migration -m 15800 into -m 2500 2017-09-18 13:21:00 +02:00
jsteube
5551337cf6 Show advice to use optimized kernels only if there's actually one for this hash-mode 2017-09-16 22:33:04 +02:00
jsteube
34c5eac550 Fixed the use of --veracrypt-pim option. It was completely ignored without showing an error 2017-09-16 12:53:45 +02:00
jsteube
3aec5ecf1c Add some advice and notes about pure and optimized OpenCL kernels 2017-09-16 12:17:31 +02:00
jsteube
3b89153c2d Fix use of --hex-salt with SALT_TYPE_GENERIC 2017-09-06 22:14:06 +02:00
jsteube
0dfe015301 Fixed a parser error in multiple modes not checking for return code, resulting in negative memory index writes 2017-09-04 15:53:13 +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
Jens Steube
8fb583f0a7 Simplify kernel thread calculation for SCRYPT based algorithms 2017-08-29 22:43:26 +02:00
Jens Steube
12295dcd90 Restore v3.6.0 kernel thread handling of scrypt 2017-08-29 18:30:50 +02:00
Jens Steube
fcd20fbacb OpenCL Runtime: Fall back to 64 threads default (from 256) on AMD GPU to prevent creating too many workitems 2017-08-29 17:36:50 +02:00
Royce Williams
1a162e2ab4 Clarify Blake2b label 2017-08-24 07:19:50 -08:00
jsteube
12d95fd22c Added option --example-hashes to show an example hash for each hash-mode 2017-08-22 11:09:46 +02:00
jsteube
c8da13c3aa Update default scrypt tmto to be ideal for latest NV and AMD top models 2017-08-17 17:46:54 +02:00
jsteube
cd5470f00e Add missing benchmark salt length default for SIP mode 2017-08-17 12:13:47 +02:00
jsteube
92a288fbd3 Resolved merge conflict by incorporating both suggestions. 2017-08-17 12:12:03 +02:00
philsmd
0d6b9d0419
fixes #1313: keep/print the original salt for descrypt hashes 2017-08-17 11:29:04 +02:00
philsmd
1d5dbab258
fixes #1278: allow the '#' character within the username field of DCC2 hashes 2017-08-17 07:51:19 +02:00
jsteube
adacccecdf Add pure kernels for FileZilla Server >= 0.9.55 2017-08-09 14:48:47 +02:00
jsteube
c8a645dc16 Fix invalid default salt length for mode 11000 in benchmark 2017-08-04 14:12:37 +02:00
jsteube
177800d1d0 Add pure kernels for RAdmin2 2017-08-03 15:21:39 +02:00
jsteube
a9375b9817 Fix maximum password length supported in MS Office <= 2003 2017-08-03 15:08:08 +02:00
jsteube
e0c86f40e5 Fix maximum password length supported in Lotus Notes/Domino 6 2017-08-03 14:33:31 +02:00
jsteube
1f42377931 Simplify Lotus Notes/Domino 5 kernel 2017-08-03 14:11:31 +02:00
jsteube
54eb0b158d Prepare DNSSEC (NSEC3) optimized kernel for pure kernel version 2017-08-03 12:35:05 +02:00
jsteube
4626270a1e Set maximum allowed password length for Sybase ASE to 30, according to documentation 2017-08-02 13:36:00 +02:00
jsteube
83d37ebeff Add pure kernels for FortiGate (FortiOS) 2017-08-01 14:16:27 +02:00
jsteube
d573a73072 Use MIN() for setting pw_max 2017-08-01 10:23:14 +02:00
jsteube
03bb234045 Preparation for WPA/WPA2 AES-CMAC: works till PMK 2017-07-20 12:46:18 +02:00
jsteube
10d9918bb1 Remove password minimum length for -m 112 and -m 3100 2017-07-19 12:35:54 +02:00
jsteube
9e61928416 Fix some copy/paste error 2017-07-19 10:53:02 +02:00
jsteube
08a3fc2bb3 Enable automatic fallback to optimized kernel if pure kernel is not found 2017-07-18 20:32:56 +02:00
jsteube
beb6ee2061 Add OPTI_TYPE_OPTIMIZED_KERNEL
Rename unconverted fast hash kernels to optimized kernels
Finalize some converted fast hashes to default kernels
2017-07-18 14:45:15 +02:00
jsteube
fbea72ebd6 Renamed default kernels to optimized kernels
Renamed pure kernels to default kernels
Replaced long option --length-limit-disable with --optimized-kernel-enable
Replaced short option -L with -O
Set --optimized-kernel-enable to unset by default
2017-07-18 13:23:42 +02:00
jsteube
f87ac21065 Some small corrections on salt length for MD5-ASA 2017-07-17 20:25:08 +02:00
jsteube
945cf9be2f md5($salt.$pass.$salt) 2017-07-17 17:24:32 +02:00
jsteube
9d92100a57 Move no-rules check to interface.c so that interface.c is the only source where pw_min and pw_max are set 2017-07-17 15:27:03 +02:00
jsteube
79bb69bcd4 Assign more official pw_min and pw_max values to related modes 2017-07-17 15:00:28 +02:00
jsteube
14fb0d5a17 Assign more official pw_min and pw_max values to related modes 2017-07-17 14:46:26 +02:00
jsteube
7e95700cd4 Assign more official pw_min and pw_max values to related modes 2017-07-17 14:33:51 +02:00
jsteube
2047625899 Update pw_min, pw_max, salt_min and salt_max switch cases to current development status 2017-07-17 13:48:33 +02:00
jsteube
1cd0212f73 Fix Cisco-PIX and Cisco-ASA pw_max as they limit themself to 16 2017-07-17 08:50:09 +02:00
jsteube
0e7bb074e6 Allow some oversized salt-length with dedicated kernels 2017-07-15 18:05:25 +02:00
jsteube
967d7b9323 Rename SALT_TYPE_INTERN to SALT_TYPE_GENERIC 2017-07-14 14:57:31 +02:00
jsteube
8e3153549f Fix invalid use of SALT_MAX_OLD 2017-07-14 14:41:23 +02:00
jsteube
f70da8a04c Increase salt length for salt of generic hash types
Remove --hex-salt support for non-generic hash types
2017-07-13 11:03:57 +02:00
jsteube
2c79d26778 Add -m 10700 pure kernel for -L support 2017-07-11 10:43:18 +02:00
jsteube
8a6e3a5275 Add support in HMAC for passwords larger than block size of the underlaying hash 2017-07-10 11:15:15 +02:00
jsteube
f619811b70 Remove PBKDF2-HMAC-MD5 includes password length limit 2017-07-09 23:53:53 +02:00
jsteube
97020f6521 Vectorized Ethereum Wallet + SCRYPT and added support for long passwords 2017-07-09 23:32:44 +02:00
jsteube
a91d048c04 Vectorized Ethereum Wallet, PBKDF2-HMAC-SHA256 and added support for long passwords 2017-07-09 23:10:28 +02:00
jsteube
25fba33901 Vectorized DPAPI masterkey file v1 and v2 and added support for long passwords 2017-07-09 23:05:14 +02:00
Jens Steube
ec7b416baf Merge pull request #1291 from ZerBea/master
removed message-pair-check - no longer needed
2017-07-09 20:02:09 +02:00
jsteube
32329cf3f4 Vectorized Juniper/NetBSD sha1crypt and added support for long passwords 2017-07-09 20:01:45 +02:00
ZerBea
a6a732704f removed message-pair-check - no longer needed 2017-07-09 19:54:08 +02:00
jsteube
de9d026bb0 Vectorized iTunes backup < 10.0 and added support for long passwords 2017-07-09 19:37:36 +02:00
jsteube
8f73d356f2 Vectorized LUKS and added support for long passwords 2017-07-09 19:24:34 +02:00
jsteube
1049fa386a Add OPTI_TYPE_SLOW_HASH_SIMD_LOOP in interface.c where it was missing 2017-07-09 18:01:55 +02:00
jsteube
709cfa2e91 Added long passwords support for KeePass 1 (AES/Twofish) and KeePass 2 (AES) 2017-07-09 15:12:11 +02:00
jsteube
837b5a31d1 Added long passwords support for AxCrypt 2017-07-09 00:13:00 +02:00
jsteube
fc32b24236 Vectorized RAR5 and added support for long passwords 2017-07-08 23:55:56 +02:00
jsteube
933fa47d21 Vectorized Android FDE (Samsung DEK) and added support for long passwords 2017-07-08 21:56:36 +02:00
jsteube
edf904f309 Vectorized MS-AzureSync PBKDF2-HMAC-SHA256 and added support for long passwords 2017-07-08 21:39:15 +02:00
jsteube
af46a1560b Vectorized Blockchain, My Wallet and added support for long passwords 2017-07-07 23:32:41 +02:00
jsteube
a1321d2d64 Added long passwords support for BSDi Crypt, Extended DES 2017-07-07 22:16:42 +02:00
jsteube
02ce227ff1 Vectorized Oracle T: Type (Oracle 12+) and added support for long passwords 2017-07-07 22:09:51 +02:00
jsteube
6e57aa1c0f Vectorized eCryptfs and added support for long passwords 2017-07-07 21:46:41 +02:00
jsteube
eda88e6c84 Vectorized PBKDF2-HMAC-MD5 and added support for long passwords 2017-07-07 16:58:28 +02:00
jsteube
d3e6ae42f0 Added long passwords support for 7-Zip 2017-07-07 16:48:18 +02:00
jsteube
27a57383f0 Vectorized Password Safe v3 and added support for long passwords 2017-07-07 16:02:49 +02:00
jsteube
5de48182b4 Fixed max password length limit in mode 10500 2017-07-07 12:33:06 +02:00
jsteube
bedc481390 Added long passwords support for SAP CODVN H (PWDSALTEDHASH) iSSHA-1 2017-07-07 12:14:06 +02:00
jsteube
8916de538a Vectorized MS Office 2013 and added support for long passwords 2017-07-07 10:38:05 +02:00
jsteube
51470b2b04 Vectorized MS Office 2010 and added support for long passwords 2017-07-07 10:03:59 +02:00
jsteube
61f39b37d2 Vectorized MS Office 2007 and added support for long passwords 2017-07-07 00:29:05 +02:00
jsteube
17b003b355 Vectorized Lotus Notes/Domino 8 and added support for long passwords 2017-07-06 14:57:28 +02:00
jsteube
cbd37ab587 Update some more modes to already converted modes with long password support 2017-07-06 14:39:05 +02:00
jsteube
df3890b49d Added long passwords support for SCRYPT 2017-07-06 14:27:36 +02:00
jsteube
ccd85f345d Vectorized 1Password, cloudkeychain and added support for long passwords 2017-07-06 14:11:33 +02:00
jsteube
6cbd2acd24 Added long passwords support for Drupal7 2017-07-06 11:02:43 +02:00
jsteube
8abd7ae9d1 Fix some old GCC compiler warnings 2017-07-06 10:35:25 +02:00
jsteube
819b53eb1d Added long passwords support for sha256crypt $, SHA256 (Unix) 2017-07-05 13:43:14 +02:00
jsteube
7fec4f27d8 Vectorized OSX v10.8+ (PBKDF2-SHA512) and added support for long passwords 2017-07-05 13:01:55 +02:00
jsteube
195e3c744c Vectorized TrueCrypt PBKDF2-HMAC-Whirlpool and added support for long passwords 2017-07-05 10:08:47 +02:00
jsteube
f2067d6962 Vectorized TrueCrypt PBKDF2-HMAC-RipeMD160 and added support for long passwords 2017-07-04 18:51:02 +02:00
jsteube
55874ec853 Vectorized VeraCrypt PBKDF2-HMAC-SHA256 and added support for long passwords 2017-07-04 15:40:34 +02:00
jsteube
907b065e00 Vectorized TrueCrypt PBKDF2-HMAC-SHA512 and added support for long passwords 2017-07-04 12:19:40 +02:00
jsteube
5eb76ccdde Vectorized Password Safe v3 and added support for long passwords 2017-07-04 11:22:48 +02:00
jsteube
fc100a852b Added hash-mode 2501 = WPA/WPA2 PMK
Fixes https://github.com/hashcat/hashcat/issues/1287
Limited hash-mode 2500 to max length 63
Fixes https://github.com/hashcat/hashcat/issues/1286
2017-07-03 16:11:57 +02:00
jsteube
1dfdefae69 Vectorized LastPass + LastPass sniffed kernel and added support for long passwords 2017-07-03 13:14:55 +02:00
jsteube
c3f0bb77dd Vectorized AIX {ssha1} kernel and added support for long passwords 2017-07-03 13:06:59 +02:00
jsteube
2e78cf1d58 Vectorized 1Password, agilekeychain kernel and added support for long passwords 2017-07-03 13:00:42 +02:00
jsteube
a8a1fe1b4f Vectorized AIX {ssha512} kernel and added support for long passwords 2017-07-03 12:44:03 +02:00
jsteube
113b8f672f Comment some pw_min and pw_max ranges for better overview 2017-07-03 12:14:15 +02:00
jsteube
bb1341015f Vectorized AIX {ssha256} kernel and added support for long passwords 2017-07-03 12:08:45 +02:00
jsteube
ccc9e46508 Vectorized Android FDE <= 4.3 kernel and added support for passwords up to length 256 2017-07-03 11:29:32 +02:00
jsteube
b149b87014 Update converted modules in interface.c 2017-07-01 14:50:39 +02:00
jsteube
52c1e15f3f Move kernel-code for -L to standalone files with -pure suffix 2017-07-01 13:02:07 +02:00
jsteube
194af74e91 Add support for maximum bcrypt password length 2017-07-01 11:04:59 +02:00
jsteube
c3f374c733 Fix some maximum password length handling with --length-limit-disable feature 2017-06-30 17:28:19 +02:00
jsteube
f7a8e7c54b Multiple changes:
* Added more preparations to support to crack passwords and salts up to length 256
* Added option --length-limit-disable to disable optimization based on password- and salt-length
* Added option --self-test-disable to disable self-test functionality on startup
2017-06-29 12:19:05 +02:00
jsteube
6fb79b726c Respect the use of OPTI_TYPE_PRECOMPUTE_MERKLE in interface.c parser 2017-06-28 13:46:03 +02:00
jsteube
71d4926afa Converted -m 400 to password length 256 support
Something weird happend here, read on!

I've expected some performance drop because this algorithm is using the password data itself inside the iteration loop.
That is different to PBKDF2, which I've converted in mode 2100 before and which did not show any performance as expected.

So after I've finished converting this kernel and testing everything works using the unit test, I did some benchmarks to see how much the
performance drop is.

On my 750ti, the speed dropped (minimal) from 981kH/s -> 948kH/s, that's mostly because of the SIMD support i had to drop.
If I'd turn off the SIMD support in the original, the drop would be even less, that us 967kH/s -> 948kH/s which is a bit of a more reasable
comparison in case we just want to rate the drop that is actually caused by the code change itself.

The drop was acceptable for me, so I've decided to check on my GTX1080.Now the weird thing: The performance increased from 6619kH/s to
7134kH/s!!

When I gave it a second thought, it turned out that:

1. The GTX1080 is a scalar GPU so it wont suffer from the drop of the SIMD code as the 750ti did
2. There's a change in how the global data (password) is read into the registers, it reads only that amount of data it actually needs by using
the pw_len information
3. I've added a barrier for CLK_GLOBAL_MEM_FENCE as it turned out to increase the performance in the 750ti

Note that this kernel is now branched into password length < 40 and larger.

There's a large drop on performance where SIMD is really important, for example CPU.

We could workaround this issue by sticking to SIMD inside the length < 40 branch, but I don't know yet how this can be done efficiently.
2017-06-22 13:49:15 +02:00
jsteube
83455817a7 Working example of password up to length 256 for mode 2100 2017-06-20 17:30:07 +02:00
jsteube
ad242c2f12 Working example of generic salt up to length 256 for mode 2100 2017-06-20 17:17:13 +02:00
jsteube
4174f06008 PoC using a length-independant MD4 hash processing in -m 2100 2017-06-18 23:31:40 +02:00
jsteube
a673aee037 Very hot commit, continue reading here:
This is a test commit using buffers large enough to handle both passwords and salts up to length 256.
It requires changes to the kernel code, which is not included in here.
It also requires some of the host code to be modified. Before we're going to modify kernel code to support the larger lengths I want to be
sure of:
1. Host code modification is ok (no overflows or underflows)
2. Passwords and Salts are printed correctly to status, outfile, show, left, etc.
3. Performance does not change (or only very minimal)
This is not a patch that supports actual cracking both passwords and salts up to length 256, but it can not fail anyway.
If if it does, there's no reason to continue to add support for both passwords and salts up to length 256.
2017-06-17 17:57:30 +02:00
jsteube
7905d79a28 Limit -m 2100 password length to 27 because if utf16 2017-06-16 23:17:56 +02:00
jsteube
c9caca2b0c Increase max password length for DCC2 to 32 2017-06-16 19:28:55 +02:00
jsteube
d7e66996c9 Add support for self-test modes that use a binary hashfile (wpa, tc, vc, etc) 2017-06-14 14:05:50 +02:00
jsteube
94a35ae50a Add support for hooks in selftest function 2017-06-14 12:07:33 +02:00
Jens Steube
08fc0ec1fb Added self-test funcionality for OpenCL kernels on startup
Fixed a parser error for mode -m 9820 = MS Office <= 2003 $3, SHA1 + RC4, collider #2
2017-06-13 19:07:08 +02:00
Jens Steube
7e5b8d3f25 Added hash-mode 15500 = JKS Java Key Store Private Keys (SHA1) 2017-06-09 09:56:06 +02:00
Jens Steube
9d49ae547b Merge pull request #1271 from DoZ10/chacha20
Chacha20: Fixed error in format parser separator validation
2017-06-08 19:15:25 +02:00
DoZ10
e6c549e4a0 Complied with other parsers coding style 2017-06-07 08:28:13 -04:00
DoZ10
531473cc72 Fix. Added undef INVALID_SEPARATOR_POINTER 2017-06-06 13:29:50 -04:00
DoZ10
990a72affe Fixed error in separator check 2017-06-06 13:26:10 -04:00
Royce Williams
b9d68d2377 $chacha20$ (all lower case) per @magnumripper 2017-06-06 04:51:32 -08:00
Chick3nman
a973d4b94b Fixed mode 9810/9820 labeling
Removed $4 from label to avoid confusion.
2017-06-06 03:09:50 -05:00
jsteube
b8ad89c529 Rename function and variables containing 'unicode' to 'utf16le' because that's what's meant actually 2017-06-05 12:15:28 +02:00
Royce Williams
3fc185a66b tidy changes.txt and name normalizations 2017-06-04 13:54:41 -08:00
jsteube
018bb208d9 Refactor OPTS_TYPE_PT_UNICODE -> OPTS_TYPE_PT_UNICODE_LE and add OPTS_TYPE_PT_UNICODE_BE 2017-06-04 22:46:05 +02:00
Jens Steube
3d888b6b2d it's possible to crack scrypt on GPU even with higher scrypt setting
the trick is to intentionally under-utilize the GPU warps
120H/s on my 4*1080: https://pastebin.com/z124G2cN
2017-06-04 15:49:09 +02:00
Jens Steube
b23ab71d5c - Added hash-mode 15600 = Ethereum Wallet, PBKDF2-HMAC-SHA256
- Added hash-mode 15700 = Ethereum Wallet, PBKDF2-SCRYPT
Resolves https://github.com/hashcat/hashcat/issues/1227
Resolves https://github.com/hashcat/hashcat/issues/1228
2017-06-03 23:23:03 +02:00
Fist0urs
f8c3fecec3 interface.c: dpapimk_parse_hash, fix signed/unsigned comparison 2017-05-19 14:49:42 +02:00
Jens Steube
f2ad095191 Merge pull request #1237 from DoZ10/master
New algorithm: Chacha20
2017-05-18 13:51:47 +02:00
philsmd
af3619f3c5
-m 11600 = 7zip: do not allow truncated hashes anymore, but increase supported data length to ~320KB 2017-05-17 15:07:16 +02:00
philsmd
aa14b4ec9e
for -m 11600 = 7zip we need to remove special case, since the padding attack is now gone 2017-05-17 14:15:13 +02:00
philsmd
1f93d2060f
fixes #1239: remove AES padding attack for 7zip since we can't guarantee that the padding is always zero 2017-05-17 13:53:55 +02:00
DoZ10
5683df2e17 Fixed conflicts 2017-05-16 20:36:55 -04:00
DoZ10
8b6120243d Applied performance changes and fixed multi-mode bad implementation 2017-05-16 19:59:46 -04:00
DoZ10
264ec951c2 Enhanced test.pl for 15400 and removed endianess confusion 2017-05-15 19:21:49 -04:00
DoZ10
8dfd1bf066 Final. Implemented offset parameter to reach next keystream in kernels. Tested all kernels with scalar and vector modes 2017-05-15 18:34:34 -04:00
DoZ10
cfc3fa64c0 Implemented offset parameter to reach full ks block of 64 bytes 2017-05-15 08:47:40 -04:00
Fist0urs
a78dce94db All remarks treated:
1) done + got rid of all u8 datatypes in shared struct
	2) cf. previous
	3) necessary as this is computed in _init then used in _comp
	4) done
	5) done
	6) done => switch to 16
	7) done
2017-05-14 19:45:35 +02:00
DoZ10
f0842f6d17 Implemented size and hex checks in interface.c 2017-05-14 07:32:33 -04:00
DoZ10
9dee1d274d Removed plain_length parameter and copied esalt buffer to salt ofr sorting mechanism. 2017-05-14 07:14:57 -04:00
DoZ10
0d3b5393ef Swapped mode 670 -> 15400 2017-05-14 06:52:14 -04:00
DoZ10
9c311091d0 Fixed pw_max to 32 2017-05-09 21:31:07 -04:00
Fist0urs
7ff09c6710 Preparing PR 2017-05-09 20:14:07 +02:00
DoZ10
a208007d9d Removed forgotten comment. 2017-05-08 20:04:58 -04:00
DoZ10
c50e8bc486 Fixed position parameters. Tested all kernels. Ok. 2017-05-07 14:02:00 -04:00
DoZ10
3c67e0054c Implemented Perl test and fixed issues. Now have a working base. 2017-05-06 20:40:10 -04:00
DoZ10
cd9dc989ce Implemented Chacha20 crypto. 2017-05-06 14:24:50 -04:00
Fist0urs
40bbb0023c Merge branch 'master' of https://github.com/hashcat/hashcat into DPAPImk 2017-05-06 17:00:17 +02:00
Fist0urs
d537712f27 Both DPAPImk v1 and v2 work for single hash, still a bug on multi-hash
Remaining this bug + tests.pl before PR
2017-05-06 16:55:36 +02:00
DoZ10
fb86f89f63 Fixed print output endianess in interface.c 2017-05-05 09:23:14 -04:00
DoZ10
f6cd42352d CPU parsing mostly done. Kernel showing good values. 2017-05-05 09:02:18 -04:00
DoZ10
152f0b5152 Init work on Chacha20 2017-05-04 22:34:52 -04:00
Fist0urs
29d331ee17 hmac-sha1 + SID almost working, padding problem 2017-05-02 23:56:00 +02:00
DoZ10
31fbe481fa Fixed final details 2017-05-02 07:17:29 -04:00
DoZ10
9d0855c02f Fixed interface.c to remove XORing madness and blake2_t naming convention 2017-05-01 16:38:48 -04:00
Fist0urs
014278ab0e Working:
- MD4/sha1
  - hmac-sha1
  - pbkdf2-hmac-sha1
  - pbkdf2-hmac-sha512
Remaining:
  - handling of long salt (SID)
  - (AES256/DES3) + the end
2017-05-01 22:21:54 +02:00
DoZ10
98b9e38d54 Fix for app compilation error on mingw 2017-04-30 21:31:51 -04:00
DoZ10
87e0281237 Moved init params in CPU (interface.c). Fixed vector-type problem in kernel a0. 2017-04-30 20:34:01 -04:00
Fist0urs
73d48dcd26 Initial commit, new format DPAPImk, works till hmac-sha1 2017-05-01 00:48:09 +02:00
DoZ10
e71c68e0af Fixed endianness to remove unecessary kernel swaps ops 2017-04-29 22:10:06 -04:00
DoZ10
58c1f46b19 Merge and conflict resolve. 2017-04-24 21:47:35 -04:00
DoZ10
e23f88fec8 Fixed Test files to match output. $Blake2$ Tag added to interface hash output 2017-04-23 10:28:58 -04:00
DoZ10
a60cddc2cc Added Blake2 signature according for JtR format. 2017-04-22 07:35:22 -04:00
DoZ10
f56ffdc32f Removed OPTS_TYPE_ST_ADDBITS15 2017-04-20 19:17:36 -04:00
DoZ10
3cc681989c fix: changed salt configuration. 2017-04-20 19:09:03 -04:00
DoZ10
afdef5ce1c fix: Kernel m00600_a3.cl function s04. 2017-04-19 13:27:28 -04:00
DoZ10
c2af1e7c5c undo: debug 2017-04-16 11:55:21 -04:00
DoZ10
c0cedbf15f add: now target hash is okay. 2017-04-16 11:28:06 -04:00
DoZ10
d5ca5d59db add: lots of things.... 2017-04-16 10:07:12 -04:00
Jens Steube
26a345334f Added hash-mode 15200 = Blockchain, My Wallet, V2
Fixes https://github.com/hashcat/hashcat/issues/109
2017-04-16 13:19:23 +02:00
Jens Steube
e3cef832be Use the ROUNDS_MYWALLET instead of a hard-coded value 2017-04-16 12:47:14 +02:00
DoZ10
69dad31a29 fix: changed -m 6200 -> 600 2017-04-13 20:45:48 -04:00
DoZ10
25e061ce1c fix: syntax bug.. 2017-04-13 20:26:21 -04:00
DoZ10
0a8f17c24a fix: g madness... 2017-04-13 17:33:08 -04:00
DoZ10
bf45f87d39 random work... 2017-04-13 17:06:48 -04:00
DoZ10
4e9bb8b093 init 2017-04-13 08:38:59 -04:00
sgroat
21efc80975 fix string 2017-04-10 13:35:01 -07:00
Royce Williams
b668aa2a81 label for 5700 Cisco type 4; update readme.txt 2017-04-04 05:14:08 -08:00
Royce Williams
4a393cacf6 5800 is Samsung only 2017-04-04 05:03:01 -08:00
Royce Williams
8620e4113f a few minor hash-mode name fixes 2017-04-03 06:55:35 -08:00