1
0
mirror of https://github.com/hashcat/hashcat.git synced 2025-02-09 14:13:07 +00:00
Commit Graph

337 Commits

Author SHA1 Message Date
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