Jens Steube
fa379074b6
Fixed a logic error in storing temporary progress for slow hashes,leading to invalid speeds in status view
2018-02-09 18:30:53 +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
Jens Steube
9b1e66d87c
Fixed a race condition in combinator- and hybrid-mode where the same scratch buffer was used by multiple threads
2018-02-09 09:50:13 +01:00
jsteube
05a01d3843
fix some datatypes
2018-02-08 19:13:29 +01:00
jsteube
98abea9a0f
Fix one more technical teething trouble with compressor kernels
2018-02-08 15:41:19 +01:00
jsteube
3dcacb5f55
Fix hc_clEnqueueReadBuffer buffer size in gidd_to_pw_t()
2018-02-08 08:26:24 +01:00
jsteube
bd9c17e49a
Add some missing function declarations
2018-02-06 13:06:10 +01:00
jsteube
e59d5fd25e
sometimes device_global_mem and device_maxmem_alloc reportedback from the opencl runtime are a bit inaccurate.
...
let's add some extra space just to be sure.
2018-02-06 10:11:06 +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
Jens Steube
fb00b528c4
Improve autotune and synchronize results on same OpenCL devices
2018-02-03 13:49:39 +01:00
jsteube
76a3e3f7af
OpenCL Runtime: Add current timestamp to OpenCL kernel source in order to force OpenCL JiT compiler to recompile and not use the cache
2018-02-01 16:57:59 +01:00
jsteube
a8ca6862bf
OpenCL Runtime: Enforce to use OpenCL version 1.2 to restrain OpenCL runtimes to make use of the __generic address space qualifier
2018-02-01 10:48:24 +01:00
jsteube
c34670c567
OpenCL Devices: Fixed several memory leaks in shutdown phase
2018-01-31 16:38:55 +01:00
jsteube
5b527f6aa6
Removed debugging code
2018-01-28 20:15:19 +01:00
jsteube
68b1ea4b68
OpenCL Runtime: Updated rocm detection
2018-01-28 20:14:25 +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
77f7ea52a5
Fix missing defined keyword
2017-12-13 12:56:00 +01:00
Rosen Penev
aece2cc4be
Get rid of hc_ctime too. Also fix some cppcheck confusion with nvapi.
...
Missed from last pull request.
2017-12-11 13:44:58 -08:00
Rosen Penev
1c5915cae3
remove special time handling in hashcat.
...
There's a way to get 64-bit time_t and 64-bit stat in MinGW, so use that.
2017-12-09 16:40:45 -08:00
Jens Steube
f2ce04e912
Allow relative use of -I in build_opts
2017-12-05 14:14:36 +01:00
jsteube
8ec2af97ed
Eventual fix for unicode folder name issue on windows
2017-12-02 15:24:10 +01:00
jsteube
b864fa5ba7
Removed option --gpu-temp-retain that tried to retain GPU temperature at X degrees celsius, please use driver specific tools
...
Removed option --powertune-enable to enable power tuning, please use driver specific tools
2017-12-01 15:19:10 +01:00
philsmd
9d58ddd9f6
fixed strtok_r () calls, could prevent memory crashes
2017-11-18 14:23:02 +01: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
philsmd
227a5aa092
fix #1435 : --show/--left hash parsing fixed for hashes with long salts
2017-11-09 11:36:01 +01:00
jsteube
f8c687f529
Fixed compile of kernels on AMD systems on windows due to invalid detection of ROCm
2017-11-06 10:22:23 +01: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
jsteube
28b76bd387
Do not use run_kernel_memset() for password candidate initialization in autotune
2017-10-27 11:48:24 +02:00
jsteube
c6390deeb1
Remove temporary warmup for benchmark
2017-10-27 11:39:07 +02:00
jsteube
d0f5c9f2b3
Rename MacOS to macOS
2017-10-20 13:36:47 +02:00
Jens Steube
9568837b12
Revert "Replace PRIu64 with ju. Less verbose."
2017-10-20 12:19:33 +02:00
jsteube
980f04a7b6
Rename instances of OSX to MacOS
2017-10-20 11:58:31 +02:00
jsteube
bf112870a3
OpenCL Runtime: Improved detection for AMD and NV devices on OSX
2017-10-20 11:34:36 +02:00
jsteube
2e85972ec5
Add special detection for NVIDIA OpenCL devices on OSX
2017-10-20 08:39:23 +02:00
Rosen Penev
869b5fb522
Replace PRIu64 with ju. Less verbose.
2017-10-19 19:35:18 -07:00
jsteube
b99eb92b56
Re-enable amdgpu-pro, do some warm-up in benchmark mode
2017-10-19 20:56:14 +02:00
jsteube
cf1ed8d75c
Update ROCm requirement
2017-10-19 16:23:44 +02:00
jsteube
048b14f6c6
Fix missed set of attribute skipped_temp
2017-10-18 12:57:48 +02:00
jsteube
d7da964a7c
Fix missed set of attribute skipped_temp
2017-10-18 12:57:15 +02:00
jsteube
84312bfae6
Fix missed set of attribute skipped_temp
2017-10-18 12:54:22 +02:00
jsteube
e16e878e59
Update potential trap 6 (apple only) algorithms, user can override with --force
2017-10-17 19:10:29 +02:00
jsteube
583849cd23
Fix missing free() for memory allocated with asprintf()
2017-10-04 13:04:58 +02:00
jsteube
6c251d48a4
Fixed format type in debugging log
2017-10-04 12:59:57 +02:00
Rosen Penev
4ba19fa7c1
replace more snprintf calls with hc_asprintf.
2017-10-02 22:10:10 -07:00
Rosen Penev
ec55209254
remove hc_sleep and _msec.
...
MinGW defines sleep and usleep so just use those directly.
2017-09-23 13:02:34 -07:00
jsteube
81c2ab2ded
OpenCL Runtime: On AMD GPU, recommend AMD ROCm driver for Linux
2017-09-21 16:27:27 +02:00
jsteube
617dbb97ba
Prepare migration -m 15800 into -m 2500
2017-09-18 13:21:00 +02:00
jsteube
2b4be5d093
Move AMD ROCm driver check out of a --force condition
2017-09-08 12:44:06 +02:00
Jens Steube
3e597f4c7b
Revert use of zero-copy for main password buffer using CL_MEM_ALLOC_HOST_PTR and hc_clEnqueueMapBuffer()
...
Caused problems with WPA cracking performance on NVidia when not using rules
2017-09-05 17:19:49 +02:00
Jens Steube
8fb583f0a7
Simplify kernel thread calculation for SCRYPT based algorithms
2017-08-29 22:43:26 +02:00
jsteube
86f67517a0
Allow higher number of kernel_loops for -a 0 mode in case they are slow hashes
2017-08-29 10:28:42 +02:00
jsteube
35a24df55e
Fixed an integer overflow in hash buffer size calculation
2017-08-26 16:29:59 +02:00
jsteube
2bc2137203
Remove some debugging statement
2017-08-25 20:54:21 +02:00
jsteube
688a580d6c
Fixed an integer overflow in innerloop_step and innerloop_cnt variables
2017-08-25 20:52:13 +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
18c8de3428
Use zero-copy for main password buffer using CL_MEM_ALLOC_HOST_PTR and hc_clEnqueueMapBuffer()
2017-08-22 15:19:25 +02: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
1432446734
Fix initialization of size_pws_amp
2017-08-20 12:04:56 +02:00
jsteube
58d1dedd1e
OpenCL Buffers: Do not allocate memory for amplifiers for fast hashes, it's simply not needed
2017-08-19 19:25:37 +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
c8da13c3aa
Update default scrypt tmto to be ideal for latest NV and AMD top models
2017-08-17 17:46:54 +02:00
jsteube
9a46442a80
Fix CPU performance for slow hashes with SIMD
2017-08-17 09:42:42 +02:00
jsteube
0dcec01623
Make size_t what size_t is
2017-08-16 16:14:08 +02:00
jsteube
34d882a116
Rename inc_rp.X to inc_rp_optimized.X
2017-08-11 11:25:47 +02:00
jsteube
f5ee3db5a6
Update cpu rule engine to support passwords up to length 256
2017-08-11 11:15:43 +02:00
jsteube
6379e76bc8
No need for handling OPTS_TYPE_PT_ADD80 and OPTS_TYPE_PT_ADD01 in non-optimized combinator mode
2017-08-01 12:12:24 +02:00
jsteube
a0b30dc9a3
Forcing OpenCL 1.2 no longer needed; all OpenCL runtimes updated
2017-07-28 01:33:29 +02:00
jsteube
f6f22f6616
Use a different cache hash for amp and mp kernel
2017-07-23 13:55:25 +02:00
jsteube
b847bbb274
Fix calculation of device_name_chksum; should be done for each iteration
2017-07-22 18:46:12 +02:00
jsteube
03bb234045
Preparation for WPA/WPA2 AES-CMAC: works till PMK
2017-07-20 12:46:18 +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
Jens Steube
04bb6a46ef
There's a problem with Intels OpenCL runtime. The JiT hangs while trying to compile, for example mode 1700 in -L mode.
...
Disabling the OpenCL optimization using -cl-opt-disable helped.
While doing so, it turned out that there's many algorithms that _benefit_ from disabling the compiler optimizations.
Other are not.
Full list: https://docs.google.com/spreadsheets/d/1w0wZtHsP8ql4JLDRnm3zqi8JyMSBk9zzpXXjQz84Fwc/edit?usp=sharing
2017-07-11 17:15:16 +02:00
jsteube
99f58f90a4
Fix some compiler warning on unused variables
2017-07-07 00:30:42 +02:00
jsteube
8fe0a36b30
OpenCL Runtime: Updated AMD ROCm driver version check, warn if version < 1.1
2017-07-06 21:54:28 +02:00
jsteube
a1e3b20902
Add ROCm to the list of supported AMD platforms
2017-07-06 19:11:56 +02:00
jsteube
8abd7ae9d1
Fix some old GCC compiler warnings
2017-07-06 10:35:25 +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
52c1e15f3f
Move kernel-code for -L to standalone files with -pure suffix
2017-07-01 13:02:07 +02:00
jsteube
f97c0d38d7
Allow using -L with -a 7 (other modes need no modification) for fast hashes
2017-06-30 16:51:57 +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
c918173fcf
Get rid of comb_t which can be safely replace with pw_t now
2017-06-25 00:56:25 +02:00
Jens Steube
8d93b160c4
Combinator mode for slow hashes wasn't set since self-test functionality was added
2017-06-22 10:49:57 +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
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
5be3840d9a
Add some hint for the user to a scrypt error message
2017-06-09 10:20:05 +02:00
Royce Williams
3fc185a66b
tidy changes.txt and name normalizations
2017-06-04 13:54:41 -08: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
Jens Steube
ab2610d9df
Also add reduced startup time for GPU for scrypt
2017-06-03 19:36:19 +02:00
Jens Steube
872f2b4f8b
Improve scrypt cracking speed on CPU by 20%, preparation for Ethereum KDF
2017-06-03 19:19:03 +02:00
jsteube
b5f149476d
Trim OpenCL device name whitespaces
2017-06-02 10:08:19 +02:00
jsteube
318ba234f8
OpenCL Runtime: Updated AMDGPU-Pro driver version check, do warn if version 17.10 is detected which is known to be broken
2017-04-11 13:33:25 +02:00
Royce Williams
067372f5ce
more event_log_* standardization
2017-04-01 23:50:06 -08:00
jsteube
98cedd9422
Remove unused argument
2017-03-27 10:35:31 +02:00