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
Royce Williams
68ae2bc791
event_log_: length <80, end logs with '.', grammar
2017-03-25 22:49:13 -08:00
jsteube
368f8b39bc
Add function to distinguish between warning and advice messages
2017-03-25 20:50:37 +01:00
jsteube
2bc65c2c4d
A bit a different _comp kernel iteration for WPA which can have lots of handshakes
2017-03-10 19:54:00 +01:00
jsteube
33a043ec63
Refactored internal use of esalt from sync with number of salts to sync with number of digests
...
This enables a true N esalts per salt feature which is required for WPA/WPA2 handling
In case we need that for a future algorithm, just make sure to have a unique value in digest in hash parser.
Fixes https://github.com/hashcat/hashcat/issues/1158
2017-03-07 09:44:58 +01:00
jsteube
da93d216da
Update for scrypt patch
2017-02-28 12:45:26 +01:00
jsteube
b2684553f0
In scrypt we really need to get all memory we can get, thus we workaround the 1/4 limit by allocating 4 blocks but this can eventually be larger than the total maximum available memory
2017-02-28 12:12:06 +01:00
jsteube
6f33d799c2
Remove temporary 2gb limit testwise
2017-02-28 12:11:20 +01:00
jsteube
fea62b78dc
Fixed cracking of Plaintext (-m 99999) in case MD4 was used in a previous session
2017-02-28 09:55:38 +01:00
jsteube
708adbc54b
Fixed cracking of Plaintext (-m 99999) in case MD4 was used in a previous session
2017-02-27 14:47:41 +01:00
Rosen Penev
4ceb7a1afa
Prefer _WIN to _POSIX for defines.
...
Also miscellaneous fixes here and there.
2017-02-23 15:55:06 -08:00
jsteube
de186ceda5
Fix some typo
2017-02-23 18:34:51 +01:00
jsteube
d6b843901b
In case of multiline error message use only the first line as error and the description as warning
2017-02-23 11:59:34 +01:00
jsteube
aa5ed1ca89
OpenCL Runtime: Added a warning about using Mesa OpenCL runtime
2017-02-23 11:48:21 +01:00
jsteube
c3251cebd8
Hardware Management: Bring back kernel exec timeout detection for NVidia on user request
2017-02-20 18:38:31 +01:00