1
0
mirror of https://github.com/hashcat/hashcat.git synced 2024-12-16 11:48:15 +00:00
Commit Graph

477 Commits

Author SHA1 Message Date
Jens Steube
5987029441 Added SIMD code for DCC2 2016-05-15 01:13:09 +02:00
Jens Steube
0ddb264a5a Use packv() and unpackv() for slow hash SIMD handling in kernels 2016-05-15 00:37:46 +02:00
Jens Steube
9d74f2958d Added SIMD code for WPA/WPA2 2016-05-14 19:45:51 +02:00
Jens Steube
0891989404 Fix WinZip multihash 2016-05-12 13:05:12 +02:00
Jens Steube
7a4ab2b42d Prepare for WinZip integration 2016-05-12 09:26:54 +02:00
jsteube
e47030ed7d Prepare to rename project into hashcat
This release markes the fusion of "hashcat" and "oclHashcat" into "hashcat".
It combines all features of all hashcat projects in one project.
2016-05-10 19:07:07 +02:00
jsteube
c19779dedf Switch back -m 7400 to old version 2016-05-09 23:35:25 +02:00
jsteube
9390be8594 Use real registers for salt, high-end maxwells didn't like it with global memory access 2016-05-09 23:07:23 +02:00
jsteube
373d2b9882 Remove barrier from DCC1, high-end maxwells didn't like it 2016-05-09 21:51:36 +02:00
jsteube
c79bed3b7d Prepare for a more dynamic #pragma unroll use 2016-05-09 21:32:12 +02:00
jsteube
34c3557d50 Fix compiler warnings 2016-05-09 19:23:37 +02:00
Jens Steube
941e016378 Fix -m 9000 performance for AMD 2016-05-09 09:40:57 +02:00
jsteube
a0221cd368 Fix broken -m 1500 and -m 3000 2016-05-09 09:17:59 +02:00
jsteube
6dac6b409e Add compiler kernel hints for algorithms with fixed workgroup size 2016-05-09 00:58:04 +02:00
jsteube
71c31fca59 Rewrote sha256crypt from scratch 2016-05-08 22:56:36 +02:00
jsteube
fd77a098c5 Another some unroll to reduce register pressure 2016-05-08 18:57:44 +02:00
jsteube
bd1f555c9c Remove some unroll to reduce register pressure 2016-05-08 18:29:54 +02:00
jsteube
303cfcae15 Enable unrolling of SHA512 with HMAC on NV 2016-05-08 16:07:40 +02:00
Jens Steube
7f04a89f77 Optimize out the swap32() of sha256 in 7zip 2016-05-08 15:33:32 +02:00
jsteube
16af77af18 Extended password length up to 32 for 7zip 2016-05-08 14:39:44 +02:00
jsteube
6d027e77f2 Optimize some macros
Use rotate() instead of inline asm; breaks Titan speed
2016-05-08 11:09:44 +02:00
jsteube
89dcaeb76d Replace SHL+ADD with MAD 2016-05-07 23:51:37 +02:00
jsteube
8141c7fb60 Little bit inline assembly for the older nvidia cards 2016-05-07 20:45:16 +02:00
jsteube
006f5252b7 Optimize a few modes for hashcat_tuning.hctab for budget NV cards
Little experiment with MD4 based optimizations on -m 900 -m 1000 and -m 1100
Fix benchmark in case user fixes -u and -n values
2016-05-07 13:15:21 +02:00
Jens Steube
c40bf412e5 Fix -m 8500: volatile no longer required 2016-05-06 11:44:28 +02:00
Jens Steube
72e3821a4c Simplify auto-tuning and benchmark routines
Decrease the time it takes to run a benchmark
Removed --benchmark-repeat, it creates no advantage
Fix some wording related to drivers
Dropped special 64-bit rotate() handling for NV
Cleanup SHA384
Cleanup try_run()
2016-05-05 23:21:15 +02:00
Jens Steube
8316210233 Unlock kernel_threads > 64 2016-05-04 00:52:53 +02:00
jsteube
dbe2d96618 Fix -m 1500 multihash and benchmark
Fix -m  3000 multihash and benchmark
Fix -m  3100 multihash and benchmark
Fix -m  7700 multihash and benchmark
Fix -m  8500 multihash and benchmark
Fix -m 11500 multihash and benchmark
2016-05-03 10:57:23 +02:00
jsteube
c7b67376a8 Fix -m 200 multihash and benchmark 2016-05-03 10:39:09 +02:00
jsteube
518fcb387a Fix -m 10100 multihash and benchmark 2016-05-03 10:23:32 +02:00
jsteube
c0a38846e3 Fix -m 5100 multihash and benchmark 2016-05-03 10:14:53 +02:00
Jens Steube
0b3743ce94 - Added inline declaration to functions from simd.c, common.c, rp.c and types_ocl.c to increase performance
- Dropped static declaration from functions in all kernel to achieve OpenCL 1.1 compatibility
- Added -cl-std=CL1.1 to all kernel build options
- Created environment variable to inform NVidia OpenCL runtime to not create its own kernel cache
- Created environment variable to inform pocl OpenCL runtime to not create its own kernel cache
2016-05-01 23:15:26 +02:00
jsteube
9b3d18f87d SIMD for slow hashes prototype 2016-05-01 18:34:59 +02:00
Jens Steube
012275e873 Merge branch 'master' of https://github.com/hashcat/oclHashcat 2016-04-29 03:29:25 +02:00
Jens Steube
d7a90f9579 Fix missing multihash support for -m 3100 2016-04-29 03:28:55 +02:00
Jens Steube
abce366d00 Fixed -m 13500 kernels and tests 2016-04-28 22:23:02 +02:00
Jens Steube
1ccb643fba Fix variable name typo in -m 13500 2016-04-27 14:03:28 +02:00
Jens Steube
aef8dc2b01 First working version of -m 13500 2016-04-26 22:45:23 +02:00
Jens Steube
9294aaccae Merge pull request #311 from fgaudreault/master
Adding parser and basic kernels for -m 13500
2016-04-26 20:12:33 +02:00
Jens Steube
7cbce12ea7 Add platform vendor_id detection 2016-04-26 13:59:14 +02:00
Jens Steube
15d7e41d68 Fix broken #ifdef in types_ocl.c 2016-04-25 07:10:02 +02:00
Jens Steube
81b19ddc7d Remove no longer needed allx() macro 2016-04-25 07:05:47 +02:00
Jens Steube
c0d0ef60a5 Replace minus with select give a small boost in speed for -m 1500 and -m 3000 2016-04-24 20:52:21 +02:00
Jens Steube
50ea3a88dd Merge pull request #305 from neheb/master
Disable AMD optimizations for LLVM
2016-04-24 15:18:17 +02:00
Jens Steube
01baa89bc0 Fix -m 3000 cracking performance
Fix -m 1500 cracking performance
2016-04-23 22:29:29 +02:00
Jens Steube
7ab180c868 Fix -m 200 cracking performance 2016-04-23 20:52:16 +02:00
Mangix
530651e96a Disable AMD optimizations for LLVM 2016-04-22 20:22:28 -07:00
Francois Gaudreault
2df81367df Adding parser and basic kernels for -m 134 2016-04-21 13:22:05 -04:00
jsteube
ad01afeeb8 Fix -m 5000 performance on NV after change to new standard 2016-04-21 09:01:31 +02:00
Fist0urs
9e8b7a1d9a -m 13400 Increased max kdb size to 300KB 2016-04-18 18:27:51 +02:00
Jens Steube
23efa03209 Cleanup -m 131xx kernels to latest standard 2016-04-18 16:52:11 +02:00
Jens Steube
3066fbf00d Cleanup -m 126xx kernels to latest standard 2016-04-18 16:44:54 +02:00
Jens Steube
6f0ea7e8fe Cleanup -m 118xx kernels to latest standard 2016-04-18 16:37:16 +02:00
Jens Steube
610ae882a2 Cleanup -m 117xx kernels to latest standard 2016-04-18 16:25:55 +02:00
Jens Steube
76d74bdc04 Cleanup -m 115xx kernels to latest standard 2016-04-18 15:51:48 +02:00
Jens Steube
b6ba4d489a Cleanup -m 114xx kernels to latest standard 2016-04-18 15:16:23 +02:00
Jens Steube
ee0b1d2c21 Cleanup -m 112xx kernels to latest standard 2016-04-18 14:39:52 +02:00
Jens Steube
79b3a1b7ca Cleanup -m 111xx kernels to latest standard 2016-04-18 13:41:17 +02:00
Jens Steube
cca4cf51ad Cleanup -m 110xx kernels to latest standard 2016-04-18 13:25:51 +02:00
Jens Steube
63c7bda957 Cleanup -m 108xx kernels to latest standard 2016-04-18 12:31:51 +02:00
Jens Steube
36f4563aa5 Cleanup -m 10410 kernels to latest standard 2016-04-18 11:49:15 +02:00
Jens Steube
1d9a36b86e Cleanup -m 10420 kernels to latest standard 2016-04-18 11:40:51 +02:00
Jens Steube
1b9e5f716b Cleanup -m 10400 kernels to latest standard 2016-04-18 10:56:00 +02:00
Jens Steube
4149ecf78f Cleanup -m 101xx kernels to latest standard 2016-04-18 10:24:44 +02:00
Jens Steube
7bafb7a652 Cleanup -m 99xx kernels to latest standard 2016-04-17 19:25:04 +02:00
Jens Steube
d3cc6ead4d Cleanup -m 9810 kernels to latest standard 2016-04-17 19:07:53 +02:00
Jens Steube
c0c9221521 Cleanup -m 9820 kernels to latest standard 2016-04-17 17:46:18 +02:00
Jens Steube
e6b9071b52 Cleanup -m 9800 kernels to latest standard 2016-04-17 15:49:02 +02:00
Jens Steube
1bc9e3ec85 Do not modify the original positions of mac1, mac2, nonce1 and nonce2 in hccap files
Should fix https://github.com/hashcat/oclHashcat/issues/288
2016-04-17 10:44:14 +02:00
Jens Steube
e7a205cee6 Cleanup -m 9710 kernels to latest standard 2016-04-17 10:18:11 +02:00
Jens Steube
0063533fde Cleanup -m 9720 kernels to latest standard 2016-04-17 10:03:35 +02:00
Jens Steube
d5d06b7023 Cleanup -m 9700 kernels to latest standard 2016-04-17 09:53:24 +02:00
Jens Steube
ac05a163e7 Cleanup -m 87xx kernels to latest standard 2016-04-16 17:55:09 +02:00
Jens Steube
4f44f2b9e9 Cleanup -m 86xx kernels to latest standard 2016-04-16 17:46:45 +02:00
Jens Steube
97ac22e5e1 Cleanup -m 85xx kernels to latest standard 2016-04-16 17:39:16 +02:00
Jens Steube
8df278fc20 Cleanup -m 84xx kernels to latest standard 2016-04-16 17:30:50 +02:00
Jens Steube
0f73c778d5 Optimized -m 8300 (DNSSEC) cracking performance in -a 3 mode 2016-04-16 11:50:48 +02:00
Jens Steube
99524ce27f Cleanup -m 83xx kernels to latest standard 2016-04-16 11:28:15 +02:00
Jens Steube
0e52f9567f Cleanup -m 81xx kernels to latest standard 2016-04-15 13:44:55 +02:00
Jens Steube
e7ea8cb778 Cleanup -m 80xx kernels to latest standard 2016-04-15 11:44:34 +02:00
Jens Steube
7223cc94de Cleanup -m 78xx kernels to latest standard 2016-04-14 18:40:01 +02:00
Jens Steube
ebc8acca1f Cleanup -m 77xx kernels to latest standard 2016-04-14 15:31:07 +02:00
Jens Steube
12c3169493 Cleanup -m 76xx kernels to latest standard 2016-04-14 11:44:06 +02:00
Jens Steube
0d49ff67bf Cleanup -m 75xx kernels to latest standard 2016-04-14 08:44:17 +02:00
Jens Steube
1a353b54ff Cleanup -m 73xx kernels to latest standard 2016-04-13 20:58:10 +02:00
Jens Steube
f1ed83e219 Cleanup -m 69xx kernels to latest standard 2016-04-13 19:54:06 +02:00
Jens Steube
3a7803e4db Cleanup -m 61xx kernels to latest standard 2016-04-13 15:39:33 +02:00
Jens Steube
5a36fc2b7f Cleanup -m 60xx kernels to latest standard 2016-04-13 12:58:22 +02:00
Jens Steube
b0dbe8d9ab Cleanup -m 50xx kernels to latest standard - NOTE: broken on SIMD, compiler bug 2016-04-13 11:14:12 +02:00
Jens Steube
afb394f152 Cleanup -m 56xx kernels to latest standard 2016-04-12 21:21:35 +02:00
Jens Steube
d6e5f7e829 Cleanup -m 55xx kernels to latest standard 2016-04-12 20:17:18 +02:00
Jens Steube
ca9b34277f Cleanup -m 54xx kernels to latest standard 2016-04-12 16:22:07 +02:00
Jens Steube
29dead2039 Cleanup -m 53xx kernels to latest standard 2016-04-12 14:30:32 +02:00
Jens Steube
2348fb3f36 Cleanup -m 51xx kernels to latest standard 2016-04-12 08:53:08 +02:00
Jens Steube
6b2a3e7b27 Cleanup -m 48xx kernels to latest standard 2016-04-10 20:38:35 +02:00
Jens Steube
029601795a Cleanup -m 47xx kernels to latest standard 2016-04-10 19:50:03 +02:00
Jens Steube
7948c74882 Cleanup -m 45xx kernels to latest standard 2016-04-10 17:40:51 +02:00
Jens Steube
0a180b6d64 Cleanup -m 44xx kernels to latest standard 2016-04-10 17:17:50 +02:00
Jens Steube
81d4cb52ab Cleanup -m 43xx kernels to latest standard 2016-04-10 16:06:10 +02:00
Jens Steube
298e9a3aad Cleanup -m 31xx kernels to latest standard 2016-04-10 11:33:18 +02:00
Jens Steube
ceb72629ae Cleanup -m 38xx kernels to latest standard 2016-04-10 11:01:10 +02:00
Jens Steube
105635334d Cleanup -m 37xx kernels to latest standard 2016-04-09 22:31:32 +02:00
Jens Steube
b478848f5d Cleanup -m 49xx kernels to latest standard 2016-04-08 20:39:40 +02:00
Fist0urs
34b8d89422 Added support of keyfiles within Keepass 1.x and Keepass 2.x 2016-04-06 16:05:09 +02:00
Jens Steube
6a03acb9aa Just some format changes 2016-04-03 11:00:02 +02:00
Fist0urs
52b17a602f New format -m 13400, Keepass 1 (AES/Twofish) and Keepass 2 (AES) 2016-04-02 14:45:05 +02:00
Jens Steube
19c548c36e Cleanup -m 1760 -a 1 kernel to latest standard 2016-03-19 18:04:50 +01:00
Jens Steube
b08e6e2371 Cleanup -m 30xx kernels to latest standard 2016-03-19 17:49:55 +01:00
Jens Steube
1b20b271e7 Cleanup -m 15xx kernels to latest standard 2016-03-19 17:39:15 +01:00
Jens Steube
45cdbce18a Cleanup -m 28xx kernels to latest standard 2016-03-19 17:25:55 +01:00
Jens Steube
9f044cbdbe Cleanup -m 27xx kernels to latest standard 2016-03-19 17:07:28 +01:00
Jens Steube
4ac3880282 Cleanup -m 26xx kernels to latest standard 2016-03-14 10:58:47 +01:00
Jens Steube
57f1a73f0d Cleanup -m 2410 kernels to latest standard 2016-03-12 21:32:41 +01:00
Gabriele 'matrix' Gristina
c2a32eddb3 Fix build failure for -m 13100 on Apple Platform 2016-03-08 12:05:00 +01:00
Jens Steube
8a448fe9e2 Cleanup -m 2400 kernels to latest standard 2016-03-07 20:38:08 +01:00
Jens Steube
1ebe44e70f Cleanup -m 200 kernels to latest standard 2016-03-07 20:19:16 +01:00
philsmd
c43a7539d4 fixed overwrite_at_le_4x4 () function (if offset is 32) 2016-03-07 13:46:07 +01:00
Jens Steube
55cadb6834 Fix broken -m 1500 and -m 3000 in -a 3 mode 2016-03-06 14:24:21 +01:00
Jens Steube
555e339674 Cleanup -m 1100 kernels to latest standard 2016-03-04 16:54:28 +01:00
Jens Steube
116d7620c5 Cleanup -m 1000 kernels to latest standard 2016-03-04 16:54:22 +01:00
Jens Steube
279d3a33c7 Cleanup -m 900 kernels to latest standard 2016-03-04 16:54:17 +01:00
Jens Steube
132086f620 Cleanup -m 300 kernels to latest standard 2016-03-04 16:54:12 +01:00
Jens Steube
1180e0760d Cleanup -m 1760 kernels to latest standard 2016-03-04 16:06:11 +01:00
Jens Steube
5f7aaedc4a Cleanup -m 1750 kernels to latest standard 2016-03-04 16:01:24 +01:00
Jens Steube
cd0e287827 Cleanup -m 1740 kernels to latest standard 2016-03-04 14:49:44 +01:00
Jens Steube
b6e2392713 Cleanup -m 1730 kernels to latest standard 2016-03-04 14:42:51 +01:00
Jens Steube
2dad9c9d55 Cleanup -m 1720 kernels to latest standard 2016-03-04 14:31:30 +01:00
Jens Steube
549ff72f2e Cleanup -m 1710 kernels to latest standard 2016-03-04 14:23:27 +01:00
Jens Steube
2bb1116be7 Cleanup -m 1700 kernels to latest standard 2016-03-04 14:09:34 +01:00
Jens Steube
180f71f291 Cleanup -m 1460 kernels to latest standard 2016-03-03 17:10:43 +01:00
Jens Steube
4f1d33216b Cleanup -m 1450 kernels to latest standard 2016-03-03 16:58:46 +01:00
Jens Steube
e5c8cea390 Cleanup -m 1440 kernels to latest standard 2016-03-03 16:41:47 +01:00
Jens Steube
4ec867f9bb Cleanup -m 1430 kernels to latest standard 2016-03-03 16:33:39 +01:00
Jens Steube
c0ccfacea6 Cleanup -m 1420 kernels to latest standard 2016-03-03 16:28:23 +01:00
Jens Steube
70fac6ec16 Cleanup -m 1410 kernels to latest standard 2016-03-03 16:20:32 +01:00
Jens Steube
8f8d98665b Cleanup -m 1400 kernels to latest standard 2016-03-03 16:15:33 +01:00
Jens Steube
9ba3498e4b Cleanup -m 1400 kernels to latest standard 2016-03-03 16:05:55 +01:00
Fist0urs
b0f1cb8a98 New format -m 13300 AxCrypt in memory SHA1 2016-03-02 14:35:10 +01:00
Fist0urs
ad17fba9b6 New format -m 13200 AxCrypt 2016-03-01 19:11:13 +01:00
Jens Steube
eaaeac4aca New SIMD code for -a 1 -m 1460 2016-02-28 19:58:16 +01:00
Jens Steube
c788ecdb80 New SIMD code for -a 1 -m 1450 2016-02-28 19:58:13 +01:00
Jens Steube
7b10348f7b New SIMD code for -a 1 -m 1440 2016-02-28 19:58:09 +01:00
Jens Steube
91c2052e59 New SIMD code for -a 1 -m 1430 2016-02-28 19:58:06 +01:00
Jens Steube
9157996a91 New SIMD code for -a 1 -m 1420 2016-02-28 19:58:02 +01:00
Jens Steube
4931824b26 New SIMD code for -a 1 -m 1410 2016-02-28 19:57:59 +01:00
Jens Steube
6cf3e8324d New SIMD code for -a 1 -m 1400 2016-02-28 19:57:55 +01:00
Jens Steube
575dcbfd25 Add missing function append_0x01_2x4_S() 2016-02-27 17:29:27 +01:00
jsteube
dad03e394d Fixed two major problems
1) SIMD code for all attack-mode

Macro vector_accessible() was not refactored and missing completely.
Had to rename variables rules_cnt, combs_cnt and bfs_cnt into il_cnt which was a good thing anyway as with new SIMD code they all act in the same way.

2) SIMD code for attack-mode 0

With new SIMD code, apply_rules_vect() has to return u32 not u32x.
This has massive impact on all *_a0 kernels.

I've rewritten most of them. Deep testing using test.sh is still required.

Some kernel need more fixes:

- Some are kind of completely incompatible like m10400 but they still use old check_* includes, we should get rid of them as they are no longer neccessary as we have simd.c
- Some have a chance but require additional effort like m11500. We can use commented out "#define NEW_SIMD_CODE" to find them

This change can have negative impact on -a0 performance for device that require vectorization. That is mostly CPU devices. New GPU's are all scalar, so they wont get hurt by this.
This change also proofes that there's no way to efficiently vectorize kernel rules with new SIMD code, but it enables the addition of the rule functions like @ that we were missing for some long time. This is a TODO.
2016-02-27 17:18:54 +01:00
Jens Steube
18ec554ea0 Cleanup of all raw-SHA1 based algorithms 2016-02-24 15:27:02 +01:00
Jens Steube
12fa3d6bfc Cleanup of all raw-MD5 based algorithms; small change important for later changes 2016-02-24 13:40:38 +01:00