1
0
mirror of https://github.com/hashcat/hashcat.git synced 2025-08-02 03:48:16 +00:00
Commit Graph

1545 Commits

Author SHA1 Message Date
hashcat-bot
d43da671f8
Merge branch 'master' into adjustments_pre_v7 2025-07-27 23:23:28 +02:00
Gabriele Gristina
4576e6d446
Updated OpenCL/Metal backends, memory functions, backend and brigde
## OpenCL Backend

- added hc_clCreateBuffer wrapper, hc_clCreateBuffer_pre
- updated HC_OCL_CREATEBUFFER macro
- updated other two hc_clEnqueueWriteBuffer from CL_FALSE to CL_TRUE

## Metal Backend

- added hc_mtlFinish
- updated hc_mtlCreateBuffer

## Memory

- added hc_alloc_aligned and hc_free_aligned
- renamed hcmalloc_aligned and hcfree_aligned to hcmalloc_bridge_aligned and hcfree_bridge_aligned

## Backend & Bridge

- updated references of hcmalloc_aligned and hcfree_aligned to the new memory defined functions
2025-07-27 17:15:44 +02:00
Gabriele Gristina
1e622b1655
Updated benchmark_deep.pl
- Added OS detection to allow conditional execution of platform-specific initialization steps
- Implemented macOS-specific cache cleaning to ensure consistent benchmark results
- Updated script logic to align with other test suites, including improved handling of workdir setup and execution timing measurements
2025-07-27 11:29:52 +02:00
Gabriele Gristina
524b76462a
Update filehandling, Metal and OpenCL backends, test_edge, user options
- solved TODOs in hc_fstat()
- fix memory leaks on Metal Backend
- using HC_OCL_CREATEBUFFER macro for buffer allocation and openclMemoryFlags array to configure the memory flags with OpenCL
- convert lasts CL_FALSE to CL_TRUE in hc_clEnqueueWriteBuffer() calls
- hide pyenv stderr on test_edge.sh
- do not allow --slow-candidates (-S) in benchmark mode
2025-07-24 23:34:55 +02:00
Gabriele Gristina
b8c0cfee07
Metal Backend: improved memory management
Until now, support for Metal has been written using an Apple M1 and a 10-year-old Apple Intel as a basis to verify that the changes were also compatible with very old devices.
Recently, the code has been tested on an Apple M4 Pro, with a performance increase of about 3,7 times compared to the M1.
The code has also been sporadically tested on an Apple device with a discrete AMD GPU, but the performance was very low.

With this patch, I revisited memory management on Metal, initially creating an easily configurable array mapped 1 to 1 with the buffers allocated by hashcat.
The configuration refers to the Storage Mode associated with the buffers, as well as an ad hoc modification that transforms buffers
with a SHARED Storage Mode to MANAGED if the device is a discrete GPU and not an M* (Silicon) or integrated (Intel) one.

The result was excellent, as some very quick tests showed, for example, argon2 going from 10 H/s (1330.58ms) to 465 H/s (57.26ms)!
A 4550% increase in computational power and a 2223% increase in execution timing on the GPU!

In addition to the array for configuring the buffer storage modes, a macro, HC_MTL_CREATEBUFFER, has also been created.
This is used to generate the code that calls hc_mtlCreateBuffer, making the code much more readable than before.

In summary, this patch lays the groundwork for further improvements to the hashcat core, both on Metal itself and also for other runtimes, particularly OpenCL.
2025-07-23 22:13:26 +02:00
Jens Steube
fcccd9f4ec Improve BitLocker -m 22100 performance by:
- Removing OPTI_TYPE_REGISTER_LIMIT
- Removing OPTS_TYPE_MP_MULTI_DISABLE
- Enabling REAL_SHM
- Fixing loop value to allow autotune to find better accel value
- Increasing minimum password length from 4 to 6
Fix compiler warning
Rename HASH_NAME for -m 31100
Reorder changes.txt (new hash modes only)
2025-07-21 22:00:01 +02:00
hashcat-bot
72ca2f07c9
Merge branch 'master' into cracks-per-min-monitor 2025-07-21 19:13:13 +02:00
hashcat-bot
50b43d914a
Merge branch 'master' into fix_perl-Crypt-OpenSSL-EC 2025-07-21 19:10:40 +02:00
Gabriele Gristina
a0239dbfd9
Unit tests: Updated install_modules.sh to use an external module for Crypt::OpenSSL::EC, due to maintenance being discontinued 2025-07-19 19:26:05 +02:00
PenguinKeeper7
46d5d5f7f7
Merge branch 'master' into cracks-per-min-monitor 2025-07-19 16:20:52 +01:00
Gabriele Gristina
b6916895e6
sorting changes.txt, only v6.2.6 -> v6.2.x 2025-07-19 17:09:19 +02:00
Gabriele Gristina
a4f7408cfc
Merge remote-tracking branch 'upstream/master' into rule_purgeclass 2025-07-19 13:43:37 +02:00
hashcat-bot
6cbe5d0ff5
Merge pull request #4346 from matrix/core_update_1
Update core
2025-07-19 11:50:30 +02:00
Gabriele Gristina
360f91f218
Merge branch 'master' into rule_purgeclass 2025-07-19 11:44:16 +02:00
Gabriele Gristina
6878234480
restore API's original functions and move checks to new *Ptr functions. Restore original hcstrdup function. 2025-07-19 11:35:11 +02:00
Gabriele Gristina
81a4b7f38c
get rid of Text:Iconv, handle 31500 and 31600 in test_edge.sh 2025-07-19 03:32:08 +02:00
Gabriele Gristina
5d3426adff
Update changes.txt 2025-07-19 02:28:58 +02:00
Gabriele Gristina
2e542e42cc
Debug: Added -g to build_options if DEBUG >= 1 and not on Apple 2025-07-18 21:12:59 +02:00
hashcat-bot
ad796638ff
Merge branch 'master' into mega-password 2025-07-16 20:22:00 +02:00
hashcat-bot
f83c17d6db
Merge pull request #3960 from PenguinKeeper7/increment-inverse
Add --increment-inverse
2025-07-16 19:33:38 +02:00
PenguinKeeper7
1b2d71b8a2
Merge branch 'hashcat:master' into increment-inverse 2025-07-15 22:43:02 +01:00
Gabriele Gristina
a870b15324
Update types, modules, edge
Add OPTS_TYPE_PT_BASE58 in modules 28501 28502 28503 28504 28505 28506 30901 30902 30903 30904 30905 30906
Add OPTS_TYPE_PT_BASE58 and remove OPTS_TYPE_MAXIMUM_ACCEL in opts_type
Re-format opts_type section
Handle new BASE58 password type in terminal.c
Handle free_threaded python library checks in test_edge.sh
Handle new BASE58 checks in test_edge.sh
Improve errors handling in test_edge.sh
2025-07-15 22:01:50 +02:00
Gabriele Gristina
c12040b821
Unit tests: Updated install_modules.sh to use an external module for Digest::GOST, due to maintenance being discontinued 2025-07-15 13:48:47 +02:00
hashcat-bot
a79f0ea0de
Merge pull request #4335 from matrix/metal_test_edge_fix
Update edge, modules
2025-07-15 11:22:21 +02:00
Gabriele Gristina
0428e1ef3d
Update edge, modules
Fix deprecation warning on m30906.pm
Fix pipeline error with -m 32600 on Apple
Update edge_test.sh
Fix edge test vectors generation for hash-type 28501, 28502, 28503, 28504, 28505, 28506
2025-07-15 10:39:17 +02:00
hashcat-bot
29691c31d8
Merge pull request #3977 from PenguinKeeper7/md5sha1md5
Added hash-mode: md5(sha1(md5($pass)))
2025-07-15 09:19:43 +02:00
Gabriele Gristina
0df324c7d8
Merge remote-tracking branch 'upstream/master' into rule_purgeclass 2025-07-15 02:42:40 +02:00
hashcat-bot
813b52f5f1
Merge pull request #3984 from stumblebot/master
Added hash-mode: Citrix NetScaler (PBKDF2-HMAC-SHA256)
2025-07-14 20:24:50 +02:00
Gabriele Gristina
867b3d4df1
Fixed bug in inc_rp_optimized.cl on Apple Intel with Metal
Fixed old/critical bug on Apple Intel with Metal by patching inc_rp_optimized.cl.
Tested on Apple Intel and Silicon with Metal/OpenCL and on Linux with CUDA, HIP, OpenCL GPU/CPU

Metal Backend: parallelize pipeline state object (PSO) compilation internally

Set unexported setting, setShouldMaximizeConcurrentCompilation, to boost kernel build process on Apple Metal (only >= 3)
2025-07-14 00:25:58 +02:00
Gabriele Gristina
a40e9e07b5
Metal Backend: define USE_BITSELECT and USE_SWIZZLE for Apple Intel 2025-07-13 12:14:01 +02:00
Gabriele Gristina
31f05d7a1c
update changes.txt 2025-07-12 20:25:30 +02:00
Gabriele Gristina
bfa5b3e610
Unit tests: Updated install_modules.sh to use an external package for pygost, due to not available anymore 2025-07-12 14:57:40 +02:00
Gabriele Gristina
08d84f5f90
Unit tests: Updated install_modules.sh to use cpanm instead of cpan 2025-07-12 14:21:18 +02:00
Gabriele Gristina
7376f36c02
Merge branch 'master' into fix_1800_Apple 2025-07-12 13:01:38 +02:00
Gabriele Gristina
c6c87d2cb2
Unit tests: Updated install_modules.sh with Crypt::Passwd::XS, to test suite works also on Apple (ex: 1800) 2025-07-12 12:55:06 +02:00
Gabriele Gristina
3f79a20429
Unit tests: Updated install_modules.sh to use an external module for Digest::BLAKE2, due to maintenance being discontinued 2025-07-12 12:22:40 +02:00
hashcat-bot
900bd0b74e
Merge branch 'master' into fix_7801 2025-07-12 06:56:20 +02:00
Gabriele Gristina
dc3418eaa4
Fixed bug in module_constraints and kernel for hash-mode 7801 2025-07-12 01:49:22 +02:00
Gabriele Gristina
dbd41ca750
Fixed bug in module_constraints and kernel for hash-mode 7800 2025-07-12 01:35:25 +02:00
Gabriele Gristina
5f66927222
Fixed build failed for aarch64 (es: rpi) 2025-07-11 21:12:43 +02:00
hashcat-bot
24fc384e6b
Merge pull request #4108 from matrix/cast-cleanup
Kernel: Renamed multiple defines in CAST cipher to fit expected naming convention of the C++ language standard
2025-07-11 20:05:41 +02:00
hashcat-bot
5322bec828
Merge pull request #4112 from matrix/issue_3652_v2
Added hash-mode: md5(md5(md5($pass.$salt1)).$salt2)
2025-07-11 19:58:16 +02:00
hashcat-bot
1cc2d435dc
Merge pull request #4304 from matrix/test_edge
Introduced the 'edge' test type in test.pl along with its corresponding tool, test_edge.sh
2025-07-10 18:48:56 +02:00
hashcat-bot
f199b8238b
Merge pull request #4306 from Chick3nman/json-fix
JSON device_id formatting fix
2025-07-10 18:43:27 +02:00
Chick3nman
e4daa498a3 Fix typo in changes.txt 2025-07-10 05:40:47 -05:00
Gabriele Gristina
5a5824ea59
Introduced the 'edge' test type in test.pl along with its corresponding tool, test_edge.sh
Hashcat is evolving, both in its core and in the supported algorithms.
To uncover bugs in the code, I implemented edge case testing to verify the settings defined in the specific algorithm test modules (e.g., m00000.pm), as well as the behavior of the kernels (pure and optimized) in relation to the different attack modes (-a0, -a1, etc.).
2025-07-09 23:19:49 +02:00
Gabriele Gristina
d5c34631ab
Merge branch 'master' into rule_purgeclass 2025-07-09 20:01:58 +02:00
hashcat-bot
b5b0dd7266
Merge branch 'master' into fix_bitmap-max 2025-07-09 10:27:37 +02:00
hashcat-bot
570f5d9c90
Merge branch 'master' into fix_stdout_race-conditions 2025-07-09 10:14:15 +02:00
hashcat-bot
0dffb1953b
Merge branch 'master' into modules_unstable_warning-update 2025-07-09 09:50:59 +02:00