1
0
mirror of https://github.com/hashcat/hashcat.git synced 2024-11-27 02:18:21 +00:00
Commit Graph

16 Commits

Author SHA1 Message Date
Gabriele Gristina
33604259e4 Fix kernel build warnings (no previous prototypes and/or incompatible function parameters ... 2016-11-27 23:59:35 +01:00
Jens Steube
7fe575e204 Add const qualifier to variable declaration of matching global memory objects 2016-11-22 20:20:34 +01:00
jsteube
3daf0af480 Added docs/credits.txt
Added docs/team.txt
2016-09-11 22:20:15 +02:00
jsteube
8702d0e3e1 Workaround memory allocation limit from OpenCL by using multiple buffers for scrypt 2016-06-28 11:03:04 +02:00
Jens Steube
ed1863c263 Move macros DGST_R0 - DGST_R3 to host, define dgst_size for opencl kernel from host; both at runtime 2016-06-26 23:39:42 +02:00
Jens Steube
2899f53a15 Move files from include/ to OpenCL/ if they are used within kernels
Rename includes in OpenCL so that it's easier to recognize them as such
2016-05-25 23:04:26 +02:00
Jens Steube
c6c865e32e Some final fixes for d_return_buf refactorization; Initial kernels vor veracrypts SHA256 KDF (not working) 2016-05-21 00:39:22 +02:00
jsteube
f2598025c6 Some fixes for rare kernels 2016-05-20 19:05:54 +02:00
jsteube
c79bed3b7d Prepare for a more dynamic #pragma unroll use 2016-05-09 21:32:12 +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
Jens Steube
23efa03209 Cleanup -m 131xx kernels to latest standard 2016-04-18 16:52:11 +02:00
Gabriele 'matrix' Gristina
c2a32eddb3 Fix build failure for -m 13100 on Apple Platform 2016-03-08 12:05:00 +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
Fist0urs
62bed36638 Add verification of checksum for -m 13100
This avoid collisions by arc4'ing all data then hmac-md5
when valid ASN1 structures headers are found.
Performance should not be impacted.
2016-02-19 23:12:46 +01:00
Fist0urs
223ab0b3db Cosmetic change -m 13100
Removed commented part (the commented part was there to implement full last arc4'ing + hmac-md5)
We will see if some people find collision. In this case we will add this last check
2016-02-17 13:32:07 +01:00
Fist0urs
c3dabdd69e Initial commit 2016-02-16 16:34:46 +01:00