Skip to content

[future] Engine-aware keyspace calculation for JtR agents #232

Description

@unclesp1d3r

Summary

Future work (defer until John the Ripper agent support lands; aligns with the engine-routing roadmap). The keyspace calculator currently assumes hashcat mask/charset semantics. JtR masks, charsets, and incremental modes differ, so a single hardcoded calculator will produce wrong keyspaces for JtR attacks.

What's needed

  • Abstract keyspace computation per engine so hashcat vs JtR masks compute correctly (e.g. an engine-keyed strategy: keyspaceFor(engine, attack)).
  • Keep packages/backend/src/services/keyspace.ts (currently hashcat charset map + mask parser) behind that abstraction.
  • JtR specifics to research: JtR mask syntax + custom charsets, --mask vs --incremental keyspace, and how JtR reports/estimates keyspace.

Dependencies

  • Requires the JtR engine integration (agent engine selection / engine-aware routing) to exist first.
  • Builds on the hashcat masklist-keyspace follow-up.

Context

Raised during a live /critique of PR #226 ("we also need to think about supporting JtR agents"). Deferred per project owner since there is a later plan to implement John.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    • Status
      No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions