Jens Steube
7bfee268d4
Fixed some heap buffer overflow
2016-01-14 20:30:38 +01:00
Jens Steube
245301c9b4
Started optimizing some of the OpenCL kernel for latest AMD Catalyst 15.12:
...
- Replaced SBOX for DES:
replaced JtR's * Bitslice DES S-boxes making use of a vector conditional select operation (e.g., vsel on PowerPC with AltiVec).
with JtR's * Bitslice DES S-boxes for x86 with MMX/SSE2/AVX and for typical RISC architectures.
Performance increased for DEScrypt from 355MH/s to 405MH/s and for LM from 11100MH/s to 12000MH/s
BTW, the same effect can be seen with non-maxwell GPU's
- Remove some volatile keywords no longer needed thanks to fixed catalyst bugs
- Fix weak-hash-check parameter for use with tools/test.sh
2016-01-14 19:44:47 +01:00
Jens Steube
24b5aa6226
Merge pull request #128 from philsmd/pr-set-iter-for-dcc2
...
set default iteration count for -m 2100 = DCC2 to 10240
2016-01-14 09:02:13 +01:00
philsmd
cbe6be9246
set default iteration count for -m 2100 = DCC2 to 10240
2016-01-14 00:14:43 +01:00
philsmd
88cbb45ca5
add skipped devices to the --benchmark output
2016-01-13 23:38:07 +01:00
philsmd
7b53ccab70
minor: remove quiet_sav, was just intended for debugging
2016-01-13 23:06:03 +01:00
Jens Steube
49d0767aa8
Run weak-hash checks only in straight-attack mode, this greatly reduces code complexity
2016-01-13 22:22:46 +01:00
Jens Steube
cfff6220fc
Fix -m 1500 in combination with new weak-hash-check
2016-01-13 21:39:34 +01:00
philsmd
4ed6b2c10a
HMS: nvapi does not need a dll (windows + NV)
2016-01-13 21:12:19 +01:00
jsteube
e7e6c4da17
Do not use OpenCL CPU devices by default to avoid slow GPU synchronization, user needs to explicitly enable them using --opencl-device-type
...
If a platform like pocl is filtered by any of the filter mechanism do not request the user to use --force
2016-01-13 20:27:26 +01:00
Jens Steube
d3dc57896e
Merge pull request #123 from philsmd/pr-tab-typo-fix
...
cosmetic: replace tab by spaces
2016-01-13 19:56:38 +01:00
philsmd
182819af11
cosmetic: replace tab by spaces
2016-01-13 19:05:28 +01:00
philsmd
7081e3cdf6
Makefile: remove kernels/ directory when running make clean
2016-01-13 18:16:56 +01:00
Jens Steube
52d71de0d4
Added support to utilize multiple different OpenCL platforms in parallel, ex: AMD + NV
2016-01-13 17:10:40 +01:00
Jens Steube
0ff49c5b44
Fix segfault in related to weak-hash-check on CPU devices
...
Move typedef for bool datatype to common.h
2016-01-12 17:18:01 +01:00
Jens Steube
54ed58e28b
Merge pull request #119 from philsmd/pr-fix-adl-mapping-CPU
...
HMS fix: only copy the ADL adapter info for GPU devices
2016-01-12 08:49:25 +01:00
philsmd
b47452e343
HMS fix: only copy the ADL adapter info for GPU devices, for CPU devices we leave it AS-IS (zeroed out)
2016-01-12 01:21:11 +01:00
philsmd
2e1e3318ec
fixed % and C (degrees celcius) in status display
2016-01-12 01:02:23 +01:00
Jens Steube
730044e26e
Added option --opencl-device-types to filter for specific OpenCL device types
2016-01-12 00:44:28 +01:00
philsmd
02cecce247
fixed hardware monitor: mapping between supported ADL devices and available GPU (and CPUs) fixed
2016-01-12 00:30:28 +01:00
jsteube
93427c073c
Prepare for some HSM updates related to device_type
2016-01-11 23:49:10 +01:00
Jens Steube
87dca98a51
Fix segfault if a weak hash is detected for some fast hashes
2016-01-10 21:37:45 +01:00
Jens Steube
1d628ca6e0
The weak-hash-check feature didn't work for algorithms that made use of some automatic optimizer flags
...
We'll enforce a weak-hash-check on an _a0 kernel for them
2016-01-10 21:02:03 +01:00
jsteube
3cdee2e06e
We need an esalt to hold the unused IV otherwise the unique salt count becomes incorrect in multihash sitations
2016-01-09 21:35:29 +01:00
jsteube
f0a84a2410
Added new hash mode -m 13000 = RAR5
2016-01-09 20:34:12 +01:00
jsteube
332b3c35e5
Added new hash mode -m 12900 = Android FDE (Samsung DEK)
2016-01-09 00:49:54 +01:00
jsteube
e8229af09b
Fix for -m 1500, -m 3000: Missing "defined" keyword
...
Fix for -m 1000: MD4_H1 copy/paste error
Fix for -m 8900, -m 9300: Invalid value for device_processor_cores for CPU devices
Fix for -m 9100: Variable salt2 initializer needed some clauses for clearness
Temporary limit gpu_accel for CPU devices to 1 for development phase
Mark pocl as too bleeding edge for production use, recommend native drivers
Remove workarounds for pocl
Rename VENDOR_ID_UNKNOWN to VENDOR_ID_GENERIC in host code
Rename IS_UNKNOWN to IS_GENERIC in kernel code
2016-01-07 20:14:34 +01:00
Jens Steube
6dab39e69c
Merge pull request #64 from philsmd/master
...
added --opencl-platform check, reject numbers > number of OpenCL platforms
2016-01-07 20:09:50 +01:00
philsmd
82ac8cbcfe
additional --opencl-platform value check
2016-01-07 17:15:28 +01:00
philsmd
6fcc3f2728
typo
2016-01-07 16:48:50 +01:00
philsmd
7b7caf3842
added additional --opencl-platform check (reject numbers > number of OpenCL platforms)
2016-01-07 16:35:45 +01:00
jsteube
36df3ef329
A CPU is not a GPU
2016-01-05 23:35:06 +01:00
Jens Steube
51a1868903
Shorten some helptext
2016-01-05 12:28:56 +01:00
philsmd
8bf3bdbf1b
the parameter --opencl-platform takes a number, not a string
2016-01-05 10:29:05 +01:00
jsteube
16294fe94e
Next release version will be v2.10
2016-01-05 08:30:18 +01:00
jsteube
331188167c
Replace the substring GPU to a more appropriate "device" or "kernel" substring depending on the context
2016-01-05 08:26:44 +01:00
jsteube
894140b816
Generate a more easy to read filename for cached kernels
2016-01-04 20:56:15 +01:00
jsteube
8baf705f6a
Preparation for distinguish between OpenCL device types at runtime (mostly for HMS)
2016-01-04 20:12:34 +01:00
jsteube
8b50b60484
More fixes for general OpenCL platforms
2016-01-04 19:23:21 +01:00
jsteube
c4b1c8e7ca
small fix for unknown opencl platforms
2016-01-04 16:13:10 +01:00
jsteube
3b589e3aac
Prepare for allow other OpenCL platforms thans AMD and NVidia
2016-01-04 13:17:20 +01:00
philsmd
f2b8f008c0
pr #53 did not copy the example .hash and .dict files to the doc folder
2016-01-03 23:29:39 +01:00
philsmd
d8ac4c3bbc
install also the example scripts, place them into the doc folder
2016-01-03 22:01:02 +01:00
jsteube
0428514f61
Extended support from 14 to 255 functions calls per rule on GPU
2016-01-03 19:49:47 +01:00
Jens Steube
0952a4dfd3
Fix CFLAGS_CROSS_LINUX in Makefile
2016-01-03 18:50:02 +01:00
philsmd
d378319ea6
this patch makes it much clearer where the sessions under ~/.hashcat are located
2016-01-03 17:11:36 +01:00
jsteube
11bf28745a
Generate folders for cached kernels for the binary distribution in runtime, too
2016-01-03 13:49:07 +01:00
jsteube
79b1f96efe
Fix logfile buffer size
2016-01-03 13:31:40 +01:00
Jens Steube
dc13c2fc71
Switched to Khronos OSS OpenCL reference implementation for building
...
For detailed information see: https://github.com/hashcat/oclHashcat/issues/40
2016-01-03 13:17:14 +01:00
jsteube
5703637721
Fix for windows, shared_dir was not set to install_dir
2016-01-03 02:28:52 +01:00
jsteube
61744662c0
Fix path to includes
2016-01-03 01:56:41 +01:00
jsteube
5f7c47b461
Fix path to includes
2016-01-03 01:48:05 +01:00
jsteube
d008a45f3c
Activate reordering or files to help integration into linux distributions
...
Details can be found here: https://github.com/hashcat/oclHashcat/issues/20
2016-01-03 00:40:31 +01:00
jsteube
2be8f5f982
- Added Makefile target for native compilation
...
- Moved rules_optimize tool to hashcat-utils
2016-01-02 17:42:47 +01:00
philsmd
fc65b6fd44
issue #38 : NVIDIA SDK is not needed anymore, the lib is dynamically loaded on NVidia systems
2016-01-01 17:41:03 +01:00
philsmd
d9f30011f5
fixed minor display problem in usage
2016-01-01 09:50:09 +01:00
jsteube
700ed7dba7
Fix the GPU Platform fix
2015-12-31 15:31:21 +01:00
jsteube
04e5ad2d54
Fix OpenCL platform selection
2015-12-31 15:25:34 +01:00
jsteube
06b1a1e2ae
Update 9300 default tmto for NV
2015-12-31 09:32:10 +01:00
jsteube
31292946e2
Fix some scrypt default values
2015-12-30 23:06:45 +01:00
jsteube
7807eb6f2d
Fix -m 7800 for NV
2015-12-30 00:29:39 +01:00
jsteube
77df413886
Add allocatable memory location per GPU
2015-12-28 11:29:07 +01:00
jsteube
a78173af7e
prepare scrypt tmto value for manual tuning
2015-12-28 09:20:18 +01:00
philsmd
286bde422b
limit the salt length of -m 22 = Juniper Netscreen/SSG (ScreenOS) to 10
2015-12-27 09:48:52 +01:00
jsteube
3dc8d526db
Update timeout-patch url to wiki
2015-12-24 10:32:22 +01:00
jsteube
f1cdf15540
Added option --gpu-platform to select a single OpenCL platform in case multiple OpenCL platforms are present
2015-12-23 18:02:01 +01:00
jsteube
c17bf5e865
- Fixed PHY memory handling for scrypt based algorithms
...
- Bring back kernel exec timeout checking for NV
2015-12-23 15:51:55 +01:00
jsteube
19c77034a6
Updated algorithm used to automatically select an ideal --scrypt-tmto value for NV
2015-12-23 11:24:41 +01:00
philsmd
0d905317a6
fix OpenCL memory problem (exhaustion): -4 error should be gone
2015-12-22 19:03:35 +01:00
jsteube
7be2c2fd8d
Fixed some speeds:
...
1800
3200
7100
7200
7400
8200
9300
9000
9600
11300
11600
2015-12-21 14:29:04 +01:00
jsteube
e2412c9b10
We do not depend on CUDA any longer, so get rid of it :)
2015-12-21 12:20:08 +01:00
jsteube
378258d789
Fix caching system for use with AMD and NV, drop BINARY_KERNEL define
2015-12-21 12:01:38 +01:00
jsteube
c8f7b7b5d3
Workaround missing clEnqueueFillBuffer() support in NVidia's OpenCL runtime
2015-12-21 10:17:54 +01:00
jsteube
1d4bece384
Revert "Fix bsdicrypt for NV"
...
This reverts commit 284990e4d3
.
Accidentially changed oclHashcat.c
2015-12-20 22:08:59 +01:00
jsteube
284990e4d3
Fix bsdicrypt for NV
2015-12-20 22:07:44 +01:00
jsteube
52c416ba72
Fixed empty line problem
2015-12-16 17:01:14 +01:00
jsteube
80f86c52a1
Cleanup makefile
...
Remove unused CUDA library defs
2015-12-15 19:18:45 +01:00
jsteube
4a0c47ca08
It's safe now to use AMD's OpenCL includes, tested on NV
2015-12-15 18:58:02 +01:00
philsmd
cff683eac1
change in library loading: libnvidia-ml now does load dynamically only on NVidia systems
2015-12-15 20:34:07 +01:00
jsteube
2283d5c843
Fix more append_* functions in kernels
2015-12-15 16:50:21 +01:00
philsmd
3ab7a23cd5
fixed hardware monitor for amd/nv (one problem that is still there since last commit: dynamic loading of libnvidia-ml)
2015-12-15 18:41:11 +01:00
jsteube
0bf4e3c34a
- Dropped all vector code since new GPU's are all scalar, makes the code much easier
...
- Some performance on low-end GPU may drop because of that, but only for a few hash-modes
- Dropped scalar code (aka warp) since we do not have any vector datatypes anymore
- Renamed C++ overloading functions memcat32_9 -> memcat_c32_w4x4_a3x4
- Still need to fix kernels to new function names, needs to be done manually
- Temperature Management needs to be rewritten partially because of conflicting datatypes names
- Added code to create different codepaths for NV on AMD in runtime in host (see data.vendor_id)
- Added code to create different codepaths for NV on AMD in runtime in kernels (see IS_NV and IS_AMD)
- First tests working for -m 0, for example
- Great performance increases in general for NV so far
- Tested amp_* and markov_* kernel
- Migrated special NV optimizations for rule processor
2015-12-15 12:04:22 +01:00
Jens Steube
586441fa25
Revert "Fixed a bug where oclHashcat rejected to load a rule which calls 15 functions although it is supported"
...
This reverts commit f230ed73dc
.
Some kernel require too much constant memory and do not compile anymore
2015-12-13 18:46:21 +01:00
Jens Steube
f230ed73dc
Fixed a bug where oclHashcat rejected to load a rule which calls 15 functions although it is supported
2015-12-13 14:54:39 +01:00
Jens Steube
1537390fae
Prepare reordering or files to help integration into linux distributions as discussed in https://github.com/hashcat/oclHashcat/issues/20
...
TODOS:
- Let oclHashcat actually use the new paths
- Find a better way for native compilation
- Replace /bin/cp with /usr/bin/install where it has to copy files recursive
2015-12-13 12:21:36 +01:00
Jens Steube
c460b554d0
- Fixed a bug related to --restore if the User
...
- Updated readme, we actually need catalyst 15.7 (for the binary package) because of OpenCL 2.0
2015-12-11 19:27:07 +01:00
philsmd
c15f0d6146
issue #16 : use just "deps" instead of "hashcat-deps" as directory name
2015-12-09 15:55:06 +01:00
philsmd
29547c4f9b
issue #14 : move /opt/hashcat-deps/ to [git_clone_dir]/hascat-deps/
2015-12-09 13:33:21 +01:00
philsmd
feeb44882b
allow both enabling and disabling of restore point update (implemented with issue #10 )
2015-12-07 23:51:51 +01:00
jsteube
968265fffb
- Prepared for JIT use of hash-mode 1500, 8900 and 9300, works already on OpenCL (AMD)
...
- Changed PROMPT
2015-12-07 21:37:12 +01:00
philsmd
946b4a37d0
implements the enhancement mentioned in issue #10 (cancel on next checkpoint)
2015-12-07 18:31:45 +01:00
philsmd
ffcf763b13
typo fixed in Makefile
2015-12-06 18:48:20 +01:00
philsmd
3f79ac5964
Merge remote-tracking branch 'upstream/master'
2015-12-06 16:12:25 +01:00
Jens Steube
ab66fa1772
Revert "Remove NPROCS from Makefile, make is able to automatically detect the optimal number of parallel threads"
...
Problem here is; This process requires alot of memory. If host memory is too small it will segfault somewhere inside AMD's OpenCL runtime library. Therefore it's better to stick to NPROCS as part of a workaround.
This reverts commit e5adccbf38
.
2015-12-06 13:09:17 +01:00
philsmd
ef548d3088
fixes issue #5 : formatting problem with tabs vs spaces
2015-12-06 11:29:29 +01:00
Jens Steube
e5adccbf38
Remove NPROCS from Makefile, make is able to automatically detect the optimal number of parallel threads
2015-12-05 14:30:09 +01:00
Jens Steube
490ff03fe1
It's important to release a fixed version of v2.00 because of the issue #1 even if AMD is not affected
2015-12-05 13:42:02 +01:00
philsmd
9684d8793a
fixes issue #1 : cuMemsetD8() 1 error (nvidia only, problem did not affect mask attacks)
2015-12-05 08:48:00 +01:00
Jens Steube
5065474b4e
Initial commit
2015-12-04 15:47:52 +01:00