Table of Contents

Task time breakdown

Description

--task-time-breakdown prints where a run's wall clock went, once the run is over. It is off by default and changes the run in no way:

$ hashcat -m 0 -a 0 --task-time-breakdown hashes.txt wordlist.txt

The report helps explain why a run took much longer than the cracking itself. Loading a large hash list, autodetecting the mode, reading rules and compiling kernels all take time that the speed counter never shows.

Reading it

The report is hierarchical. An indented line belongs to the one above it, and every percentage is against the measured total rather than against its parent, so an indented value can never exceed the line it sits under.

Each section ends with an Other line for time not accounted for by its detailed entries. This line is printed even when the value is zero. If Other dominates a section, the instrumentation does not identify where most of that time went.

A stage that never ran prints no line at all, so a run given -m has no autodetection line and a run with no rules has no rule-loading line.

Where it does not appear

The report is suppressed by --machine-readable, --keyspace, --stdout, --show, --left, --identify, --help, --hash-info and --backend-info, so it breaks no existing script output. --quiet does not suppress it, since printing the report is the entire point of asking for it.

Full documentation