Skip to content

Releases: Clats97/ClatsCracker

ClatsCracker 1.07.0

26 Jun 10:52
c68ad0d
Compare
Choose a tag to compare

CHANGELOG

[2025-06-26] Version 1.07.0

CHANGED: Bruteforce option error fixed, in the previous version(s) it immediately returned "Pasword not found". This has been fixed. Please note, brute forcing is only feasible with short passwords.

ClatsCracker 1.06.9

25 Jun 19:41
0259f00
Compare
Choose a tag to compare

CHANGELOG

[2025-06-25] Version 1.06.9

  1. New · Switched brute-force engine to ProcessPoolExecutor with _worker_init for true multi-process parallelism, bypassing the GIL and leveraging all CPU cores.
  2. New · Dictionary loader rewrites lines_in_chunks() to use mmap.ACCESS_READ and binary iteration, yielding zero-copy, demand-paged reads for large wordlists.
  3. New · Logging rotates via RotatingFileHandler(maxBytes=5 MB, backupCount=3) to cap log growth and preserve recent history.
  4. New · GUI banner converted to ttk.Label with white background; aligns with preferred ttk styling.
  5. New · Process pool initialised in main() and on every “Start” action with per-process niceness hook (_worker_init).
  6. Changed · _process_chunk() now rebuilds its own checker (compile_checker) internally and accepts (chunk, d, a, step) to remain picklable for process workers.
  7. Changed · “Abort” action now calls _POOL.shutdown(cancel_futures=True, wait=False) ensuring prompt worker termination (especially important with processes).
  8. Changed · Application metadata updated: window title and ASCII banner now read v1.06.9.
  9. Changed · HashCrackerGUI._start() chooses ProcessPoolExecutor for brute force, ThreadPoolExecutor for dictionaries—hybrid execution model optimised for task type.
    10.Removed · Global ThreadPoolExecutor usage for brute-force workloads (threads retained only for I/O-bound dictionary cracking).

ClatsCracker 1.06.8

19 Jun 18:20
7f6bed1
Compare
Choose a tag to compare

Changelog

[v1.06.8] – 2025-06-19

Added
  • Automatic dependency bootstrapper – new _pip_install() helper that silently installs/updates missing packages (argon2-cffi, passlib, pycryptodome, bcrypt, psutil, chardet) before the GUI loads.
  • Configurable CPU-check cadence – introduced _CPU_CHECK_INTERVAL constant to limit psutil.cpu_percent() calls in throttle_cpu().
Changed
  • Hash function: md5_sha1 – re-implemented to concatenate MD5 + SHA-1 digests directly, improving cross-platform compatibility.

  • Password generator_generate_passwords() now streams slices from itertools.product, lowering peak RAM usage during brute-force.

  • Throttle logicthrottle_cpu() now caches the last reading and sleeps only when the next scheduled check exceeds the threshold.

  • Hex charset option'_charset()' returns a strict lowercase set (0123456789abcdef) instead of duplicating uppercase characters.

  • GUI tweaks

    • Banner and window title updated to reflect ClatsCracker Hash Cracking Tool GUI v1.06.8.
    • List-box helpers (_add_dict, _rem_dict) refactored for clearer flow without list-comprehension side-effects.
    • Thread count selector initializes from tk.StringVar() for cleaner state handling.
  • Logging robustness – flush operation wrapped in try/except to avoid crashes when handlers are unavailable.

Fixed
  • High-frequency CPU polling causing unnecessary overhead during intensive cracking sessions.
  • Startup failures due to missing libraries; application now recovers automatically by installing dependencies.

ClatsCracker 1.06.7

16 Jun 03:41
cbb0fab
Compare
Choose a tag to compare

CHANGELOG

[2025-06-25]

  • NEW: Switches to ProcessPoolExecutor for _POOL with an explicit process nice value initializer for lower-priority child processes.
  • NEW: _DEFAULT_THREADS = max(1, (os.cpu_count() or 1) // 2) and dynamic, per-GUI, per-preset (Low/Medium/High/Custom) mapping in the thread selector.
    • Impact: More conservative thread usage by default, especially for systems with many cores, to reduce over-provisioning.
  • NEW: The _HASH_FUNCS dictionary in the new script no longer includes shake128, shake256, and shakeke128 entries. Instead, these are computed on demand in hash_password.
  • NEW: Addition of a new hash_password(p, a) function that encapsulates hash calculation for all supported algorithms, reducing code duplication and centralizing logic.
  • NEW: Slightly stricter validation for PHPass salt length (now explicitly checked).
  • NEW: Each worker now submits the chunk to the _POOL for parallel processing, taking advantage of ProcessPoolExecutor and further subdividing brute-force batches.
  • NEW: For brute-force, each generated chunk is further split by number of threads for granular parallelism:
  • IMPROVED: More robust handling of adding/removing dictionaries in the GUI listbox; repeated entries are better filtered.
  • NEW: Improved exception handling in worker routines (e.g., more try/except guards around futures and hashing operations).
  • IMPROVED: More graceful clipboard handling; error messages improved if clipboard is empty.
  • NEW: More functions are now explicitly typed (e.g., main() -> None).
  • REFACTORED: Many internal functions receive more explicit parameters and follow stricter typing for clarity.
  • NEW: In v1.06.6, throttle_cpu uses a global _cpu_last value, but no longer uses psutil (removal of dependency for cross-platform support), thus throttling is less dynamic.
  • NEW: Uses _worker_init(nice_val: int) for setting process niceness for subprocesses, if supported on the OS.

ClatsCracker

28 May 16:04
cbb0fab
Compare
Choose a tag to compare

Latest stable release of ClatsCracker Python version and Windows executable version as of [2025-05-28]

CHANGELOG

The following hash algorithms have been added to this release:

  • adler32 (Adler-32 checksum, via zlib)
  • sm3 (Chinese SM3 cryptographic hash, via hashlib/OpenSSL)
  • md5_sha1 (Combined MD5-SHA1, often used in SSL/TLS)
  • mdc2 (MDC-2 cryptographic hash, via hashlib/OpenSSL)
  • whirlpool (Whirlpool cryptographic hash, via hashlib/OpenSSL)

These algorithms are now selectable and supported for both dictionary and bruteforce attacks in the script.

ClatsCracker

10 May 00:57
572617e
Compare
Choose a tag to compare

ClatsCracker v1.06.5 Changelog

✨ Added

  • Frozen-mode awareness – detects sys.frozen and derives _SCRIPT_DIR from the packed executable, ensuring log placement beside the .exe.
  • Fast-hash fall-backs – uses PyCryptodome’s C implementations for MD4 and RIPEMD-160 when available (_HAS_FAST_HASHES switch).
  • Encoding cache_ENC_CACHE memoises chardet results, eliminating repeat I/O during dictionary scans.
  • Worker niceness – pool processes initialized with os.nice(5) via _worker_init, reducing GUI starvation.
  • Structured session telemetrySessionStart / SessionEnd log lines capture script name, hash, algorithm, cracked-status and elapsed time.

🔄 Changed

  • Log formatter – now records %(filename)s; file handler patched with flush() override for immediate writes.

  • Log pathLOG_FILE built with os.path.join(_SCRIPT_DIR, …) instead of a cwd-relative filename.

  • Default thread presets – combo-box dynamically shows

    • 1 (Low) - cpu_count//2 (Medium) - cpu_count (High) - Custom
  • Chunk sizes – dictionary iterator increased from 100 k → 300 k lines per chunk; brute force unchanged.

  • Window/banner version bump – ASCII art & title now read v1.06.5.

🐛 Fixed

  • Guaranteed log flush on GUI exit (handler.flush() in _done_ui) to prevent data loss under abrupt closes.
  • Path resolution bug when launched via double-clicked EXE on Windows (no more FileNotFoundError for log).

🚀 Performance

  • Up to 5-10× faster MD4/RIPEMD hashing when PyCryptodome present.
  • Fewer IPC round-trips thanks to larger dictionary chunks and cached file encoding.

🖥️ UX

  • Progress-thread calculations renamed for clarity (elapsed, remaining, etc.).
  • Internal state attributes current_hash and current_algo introduced for richer logging.
  • GUI remains visually identical; all controls behave as in v1.06.4.

Net effect: v1.06.5 is functionally identical from a cracking-capability standpoint, but offers sturdier logging, smoother responsiveness on busy systems, better portability when frozen, and measurable speed gains on MD4/RIPEMD-heavy workloads. Also, the brute forcing function has been improved and is much faster. When executing a dictionary attack, the script uses the GPU and CPU instead of just the CPU. This makes mounting the dictionary file much faster and cracking the hash much faster.

ClatsCracker

06 May 16:05
80e8f51
Compare
Choose a tag to compare

ClatsCracker now has an exe file for Windows. No need to install Python or any dependencies, just open the file and it will work out of the box!

Version 1.06.4 has changes that improve the cracking functions.

Fixed

  • Executable opens twice on Windows – resolved by inserting multiprocessing.freeze_support() before the ProcessPoolExecutor spawn.

  • Alias mis-detection – hashes labelled sha1v2, shakeke128, or ntplm now correctly route through canonical algorithms.

  • Progress lock contention – metric updates now performed on Tkinter main loop via _gui() helper, preventing rare GUI hangs.

Performance

  • Re-using a single ProcessPoolExecutor & single PasswordHasher reduces warm-up time on large dictionary jobs by ≈15-20 %.

  • Centralized hash function table avoids repeated attribute look-ups, giving ~5 % speed-up on brute-force inner loops.

Removed/Deprecated

  • Legacy manual log-file append logic; write_log() now just aliases logger.info.

  • Extensive if/elif chains in hashing code path; superseded by lookup dictionary.

  • The CLI version of ClatsCracker has been deprecated and will not receive any further updates or releases. The GUI version and the EXE version are both easier to use, and they have been improved significantly.

ClatsCracker

10 Apr 02:54
b676f6e
Compare
Choose a tag to compare

CHANGELOG

-Added a txt file extension to the log output

ClatsCracker GUI

09 Apr 11:59
8e0da32
Compare
Choose a tag to compare

CHANGEOG

  • Fixed 3 tuple expression errors

ClatsCracker(1.06.1)

04 Feb 02:35
eaa84db
Compare
Choose a tag to compare

CHANGELOG

[2025-03-03 v1.06.1]

  • New GUI version released