1
0
mirror of https://github.com/hashcat/hashcat.git synced 2024-12-28 09:28:12 +00:00
Commit Graph

112 Commits

Author SHA1 Message Date
Jens Steube
fa4b521d48 Add unpack_v8x_from_v32 for vector datatypes, update -m 200 2020-03-06 13:31:32 +01:00
Jens Steube
c9fdb34698 Do not use V_BFE_U32 with latest rocm version 2020-02-13 13:24:20 +01:00
Jens Steube
525f8af200 Add v8x_from_v64_x to inc_common.cl 2020-02-03 15:51:08 +01:00
Jens Steube
1fc37c25f9 OpenCL Kernels: Moved "gpu_decompress", "gpu_memset" and "gpu_atinit" into new OpenCL/shared.cl in order to reduce compile time 2020-02-01 09:00:48 +01:00
Jens Steube
3a5544a554 Help some compiler with 64 bit constants 2020-01-21 22:09:56 +01:00
Jens Steube
89f9ef45b6 Whitelist some OpenCL specific functions 2020-01-12 13:32:02 +01:00
Jens Steube
cc2bd2b554 Fix rocm compiler warning 2020-01-12 08:52:15 +01:00
Jens Steube
a6c18f48ba Remove some double code 2019-11-22 23:12:57 +01:00
Gabriele Gristina
660da2da3d fix OpenCL compiler warning 2019-06-21 21:26:42 +02:00
Jens Steube
316095c151 Some more ROCm performance tuning 2019-06-20 10:04:31 +02:00
Jens Steube
6ec52bd342 ROCm JiT learned how to use V_ADD3_U32 efficiently 2019-06-18 12:41:59 +02:00
Jens Steube
153a8704e0 Fix some register type in inline assembly in some ROCM section 2019-05-14 13:03:40 +02:00
Jens Steube
6b7d064118 Replace (u32x) (...) with make_u32x (...) 2019-05-08 15:21:22 +02:00
Jens Steube
d0bd33c9d1 Rename CONSTANT_AS to CONSTANT_VK 2019-05-06 14:34:16 +02:00
Jens Steube
d9cb5cf8df Fix recursion in inc_common.cl 2019-04-26 14:03:57 +02:00
Jens Steube
89119bf24a Add missing inc_platform.h include 2019-04-26 13:59:43 +02:00
Jens Steube
9faba41848 Use nvrtc to compile PTX (resulting PTX not yet used) 2019-04-26 13:28:44 +02:00
Jens Steube
4b986de5fb Prepare native CUDA hybrid integration 2019-04-25 14:45:17 +02:00
jsteube
70fc36bf01 Reorganize inc_common.cl and make better use of HAS_* macros 2019-04-20 11:25:34 +02:00
jsteube
a3b6e6f1b0 Fix hc_rotl64_S() for AMD devices 2019-04-15 12:11:37 +02:00
jsteube
3274220d7f Fix l32_from_64_S(), h32_from_64_S(), hl32_to_64_S() and h32_from_64() in inc_common.cl 2019-04-04 22:05:45 +02:00
jsteube
319bf80178 Fix hash_encode() salt position 2019-03-31 20:17:17 +02:00
jsteube
1c45de4b63 Remove more old GCC diagnostic options 2019-03-31 19:41:28 +02:00
jsteube
d80603648e Replace plain_t with void in module_build_plain_postprocess() enables some options 2019-03-30 16:32:11 +01:00
jsteube
9574862a19 Inline hc_byte_perm in hc_bytealign 2019-03-28 13:37:28 +01:00
jsteube
5a1d929628 Fix some missing code changes after hc_bytealign() was changed 2019-03-28 12:26:24 +01:00
jsteube
fb8a9d7c40 Get rid of cpu_sha1.c 2019-03-25 14:08:59 +01:00
jsteube
66d94b06e4 Get rid of src/rp_kernel_on_cpu.c and src/rp_kernel_on_cpu_optimized.c and use OpenCL emulated kernel version 2019-03-25 12:24:04 +01:00
jsteube
13097fefc7 reorder functions for better overview 2019-03-24 15:23:11 +01:00
jsteube
e80b1838e8 Rename some functions in inc_common.cl to avoid conflicts with bitops.c 2019-03-23 22:15:38 +01:00
jsteube
adeeaee84a Replace __kernel, __constant, __global and __local qualifiers with macro for better control 2019-03-22 22:27:58 +01:00
jsteube
7d4bea41a0 Get rid of OpenCL/inc_hash_constants.h and OpenCL/inc_hash_functions.cl 2019-03-21 23:00:38 +01:00
jsteube
218322f630 Support for inline VeraCrypt PIM Brute-Force 2019-03-15 21:48:49 +01:00
jsteube
84d6b8ecc1 Add function prototypes in OpenCL kernels to make some compilers happy 2019-03-09 09:05:44 +01:00
jsteube
e1fe3e755b Optimize some switch_buffer_* functions for generic OpenCL devices (CPU, various OSX, ...) 2019-03-01 14:49:00 +01:00
jsteube
540b405e3a Replace IS_ROCM with HAS_VPERM and HAS_VADD3 2019-02-24 10:12:48 +01:00
jsteube
c88a837196 Rename d_scryptVX_buf to d_extraX_buf 2019-01-04 11:21:42 +01:00
Matt Covalt
36bdcf844a Add function to check if vector represents a Base58 string 2018-12-05 10:20:41 -08:00
Jens Steube
65abccc93e Migrate inc_truecrypt_keyboard.cl into inc_common.cl 2018-11-25 18:34:57 +01:00
Jens Steube
e117e750fc Add restrict keyword to kernel declarations to help the compiler with caching optimizations 2018-11-21 13:00:30 +01:00
R. Yushaev
fbbe5f6282 Use macros in remaining kernel functions
The 7zip, scrypt and stdout kernels differ from the others in their
function declarations somewhat. Unify them and substitute with macros.
Also remove a few superfluous (bogus) consts which were introduced in
the previous PR.
2018-11-16 14:30:45 +01:00
Jens Steube
6d39fb1feb Make all kernel parameter macro helper a function 2018-11-16 14:17:01 +01:00
R. Yushaev
31dc7a3453 Add macros for kernel function declarations
Most of the kernel functions use nearly identical parameter lists.
Essentially, there are four parameters that vary, except for a dozen odd
kernel functions (e.g. stdout, zip, scrypt). This means that the function
declarations can be hidden behind a few simple macros with up to two
parameters.
2018-11-16 11:44:26 +01:00
R. Yushaev
224315dd62 Add pure kernels and tests for Streebog hashes
Complete Streebog support with pure kernels that allow for passwords
longer than 64 characters. Provide generic inc_hash_streebog files
for future Streebog-based hash modes (HMAC, PBKDF2, VeraCrypt).

Include streebog support in the test suite. For this, python module
PyGOST is needed. Also add clarification to hash mode description
stating that Streebog hashes are expected in big-endian byte order.
There are several implementations, including PyGOST, which default
to little-endian byte order, while the RFC examples are big-endian.

 - Add pure kernels for hash-mode 11700 (Streebog-256)
 - Add pure kernels for hash-mode 11800 (Streebog-512)
 - Tests: Add hash-modes 11700 (Streebog-256) and 11800 (Streebog-512)
2018-10-29 10:33:30 +01:00
Jens Steube
6d03da369b Fix gid datatype in mark_hash() 2018-10-20 02:19:39 +02:00
R. Yushaev
5c87720acc Add SHA3 and Keccak
The previous hash-mode 5000 covered Keccak-256 only. FIPS changed one
padding byte while adopting Keccak as the SHA3 standard, which gives us
different digests. Now we have separate kernels for SHA3 and Keccak.

 - Added hash-mode 17300 = SHA3-224
 - Added hash-mode 17400 = SHA3-256
 - Added hash-mode 17500 = SHA3-384
 - Added hash-mode 17600 = SHA3-512
 - Added hash-mode 17700 = Keccak-224
 - Added hash-mode 17800 = Keccak-256
 - Added hash-mode 17900 = Keccak-384
 - Added hash-mode 18000 = Keccak-512
 - Removed hash-mode 5000 = SHA-3 (Keccak)
2018-10-15 16:06:31 +02:00
jsteube
fbf434146d Add set_mark_1x4() and set_mark_1x4_S() 2018-07-28 18:03:18 +02:00
Jens Steube
14c444fd47 Replace c_append_helper_mini[] table with on-the-fly calculation in order to workaround compiler bugs in AMD OpenCL runtime 2018-07-28 13:59:55 +02:00
Jens Steube
a43d3ad176 Rename some hashcat specific OpenCL functions to avoid conflicts with existing OpenCL functions from OpenCL runtime 2018-07-22 12:20:20 +02:00
Jens Steube
02a2495349 Switched array pointer types in function declarations in order to be compatible with OpenCL 2.0 2018-07-22 11:47:42 +02:00