crack-time.tools

How fast a GPU guesses each password hash

We ran hashcat 7.1.2 against each common password hash on the AMD Radeon 8060S in our test machine, a Ryzen AI Max+ 395 mini PC, with the slow hashes set to the parameters OWASP recommends (bcrypt at cost 12, above OWASP's minimum of 10). On the same chip, MD5 runs at 28.6 billion guesses per second and Argon2id at 2,011: a factor of about 14 million. The table sets our measurements beside the published benchmark for an NVIDIA RTX 5090.

HashParametershashcat modeRadeon 8060S, guesses/s (measured) RTX 5090, guesses/s (published)Try the 755,994 most common leaked passwords (8060S) Try every 8-character password (8060S)
MD5none (unsalted)028,631,864,972220,600,000,000under a second (start-up time dominates)2.7 days
NTLM (Windows)none (unsalted)100052,667,595,819340,100,000,000under a second (start-up time dominates)1.5 days
SHA-1none10013,314,110,81670,245,100,000under a second (start-up time dominates)5.8 days
SHA-256none14005,429,935,80128,353,300,000under a second (start-up time dominates)14 days
SHA-512none17001,537,667,95510,048,600,000under a second (start-up time dominates)1.6 months
PBKDF2-HMAC-SHA512220,000 iterations121002,96319,297 *4.3 minutes71 thousand years
PBKDF2-HMAC-SHA256600,000 iterations109003,81618,595 *3.3 minutes55 thousand years
Argon2idm=19 MiB, t=2, p=1340002,011not in the benchmark6.3 minutes105 thousand years
bcryptcost 1232003182,381 *40 minutes661 thousand years
bcryptcost 10, the OWASP minimum32001,272 †9,525 *9.9 minutes165 thousand years
scryptN=2^17, r=8, p=18900177not in the benchmark1.2 hours1.2 million years

"Every 8-character password" is all 958 combinations of printable ASCII, the full keyspace; the average password falls in half that. * Derived from the published figure, which was measured at hashcat's benchmark settings rather than these parameters: PBKDF2-HMAC-SHA512 (220,000 iterations), PBKDF2-HMAC-SHA256 (600,000 iterations), bcrypt (cost 12), bcrypt (cost 10, the OWASP minimum). † bcrypt cost 10 on the 8060S is our cost-12 measurement times four, since each cost step doubles the work. The derivations are explained below. Download the table (CSV).

Why the slow hashes are measured at deployed settings

hashcat's built-in benchmark runs each slow hash at a fixed, light setting: bcrypt at cost 5, PBKDF2 at 1,000 iterations, scrypt at N=16384. Nobody deploys those. Published benchmark tables quote them anyway, which makes slow hashes look faster to crack than they are in practice. So for bcrypt, scrypt, PBKDF2 and Argon2id we generated a real hash at the recommended setting, ran a short brute-force attack against it, and recorded the speed hashcat reported. The fast hashes have no setting to choose, so their figures come from benchmark mode.

The settings follow the OWASP Password Storage Cheat Sheet: Argon2id with 19 MiB of memory, 2 iterations and 1 thread; scrypt with N=217, r=8, p=1; PBKDF2-HMAC-SHA256 at 600,000 iterations and PBKDF2-HMAC-SHA512 at 220,000. For bcrypt, OWASP sets a minimum cost of 10; we used 12, the default many frameworks ship and the setting the estimator assumes. Cost 10 is four times faster to attack than cost 12.

Checks on the numbers

OWASP's five Argon2id settings measure the same

OWASP lists five Argon2id settings, from 46 MiB with one pass to 7 MiB with five, and says they "provide an equal level of defense, and the only difference is a trade off between CPU and RAM usage." We measured three of them on the 8060S:

Argon2id settingGuesses per second (measured)
46 MiB, t=1, p=12,014
19 MiB, t=2, p=12,011
7 MiB, t=5, p=12,009
256 MiB, t=3, p=1 (heavier control, not an OWASP setting)94

The three OWASP settings come out within 0.3% of each other. To rule out hashcat ignoring the parameters, we had it crack a known password hashed at each of the two extremes, which it did, and timed a much heavier setting, 256 MiB with three passes, which ran 94 guesses per second, about 21 times slower. On this hardware the three settings are indistinguishable to an attacker. We have not tested a discrete GPU, where the memory-heavy setting could behave differently.

Where the RTX 5090 figures come from

The RTX 5090 column is Chick3nman's public hashcat benchmark of an RTX 5090 Founders Edition, run in February 2025 on a development build of hashcat (v6.2.6-851). It was run at benchmark settings, so for the slow hashes we converted it: bcrypt by the 2cost rule our own check confirms, and PBKDF2 by the iteration count. scrypt's cost does not convert as cleanly, because more memory per guess also limits how many guesses fit on the card at once, so we left it out; at N=16384 the benchmark shows 7,760 guesses per second. That benchmark predates hashcat's Argon2 support, so Argon2id has no RTX 5090 figure here.

What the table says

Method and limitations

Updated .