Skip to content

Project/hash cracker#119

Merged
CarterPerez-dev merged 8 commits intomainfrom
project/hash-cracker
Mar 23, 2026
Merged

Project/hash cracker#119
CarterPerez-dev merged 8 commits intomainfrom
project/hash-cracker

Conversation

@CarterPerez-dev
Copy link
Owner

@CarterPerez-dev CarterPerez-dev commented Mar 23, 2026

Description

Provide a clear description of what this pull request does.

Type of Change

  • New project idea (SYNOPSES)
  • Full project implementation
  • Bug fix
  • Documentation improvement
  • Other (please describe)

Checklist

General:

  • My code follows the existing style and conventions
  • I have tested my changes
  • I have updated relevant documentation
  • My changes do not introduce security vulnerabilities
  • I have read the CONTRIBUTING.md guidelines

Related Issues

Link any related issues here (e.g., "Fixes #123").

Additional Context

Any other information that reviewers should know.

Includes CMakeLists.txt, CMakePresets.json, .clang-format, .clang-tidy,
Config.hpp (all constants), Concepts.hpp (Hasher/AttackStrategy concepts),
and stub implementations for all source files. All 6 stub tests pass.
OpenSSL EVP-based hashers verified against NIST known-answer vectors.
HashDetector auto-identifies hash type from hex length with validation.
15 new tests, all passing.
DictionaryAttack: mmap-based wordlist reader with thread partitioning.
BruteForceAttack: keyspace generator with mathematical partitioning.
RuleSet: 7 mutation transforms via std::generator (capitalize, leet,
append/prepend digits, reverse, toggle case).
RuleAttack: combines dictionary words with rule mutations.
22 new tests, all passing.
ThreadPool: jthread-based work partitioning with SharedState atomics.
Progress: rich terminal output with Unicode box drawing, ANSI colors,
progress bar, speed/ETA display, and cracked/exhausted result rendering.
Engine: template function wiring hasher + attack + threading + salt.
3 integration tests passing (crack, exhaust, salted crack).
Full argument parsing for all attack modes, hash auto-detection,
salt support, thread count, and JSON output. Dispatch resolves
hasher + attack at compile time via template instantiation.
install.sh detects package manager and installs all dependencies.
Justfile provides build, test, run, and clean commands.
README follows repo convention with ASCII banner and badges.
…stall

Swap emoji icons for clean Unicode symbols (✓ ✗ ◆ ▸ ⏱) matching the
Go project style. Include 10k-most-common.txt wordlist for zero-friction
Quick Start. install.sh now symlinks binary to ~/.local/bin/hashcracker.
Fix DIM unbound variable in install.sh.
@CarterPerez-dev CarterPerez-dev merged commit 3bf0efc into main Mar 23, 2026
21 of 22 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant