Another option is passwordless
1 kH/s is 1,000 (one thousand) hashes per second.
1 MH/s is 1,000,000 (one million) hashes per second.
1 GH/s is 1,000,000,000 (one billion) hashes per second.
1 TH/s is 1,000,000,000,000 (one trillion) hashes per second.
1 PH/s is 1,000,000,000,000,000 (one quadrillion) hashes per second.
1 EH/s is 1,000,000,000,000,000,000 (one quintillion) hashes per second.
Source: https://bitcoin.stackexchange.com/questions/9219/what-is-the-difference-between-kh-s-mh-s-and-gh-s#9220
My 2012 laptop can hash 284.6 Million MD5 hashes per second (284.6 MH/s).
Now the guys that hash passwords for a living:
In case you were wondering what 300 kg of @NVIDIAGeForce GPUs looks like. I love this job :) pic.twitter.com/EgPK2o00a3
— Jeremi M Gosney (@jmgosney) March 1, 2017
@vortexau @NVIDIAGeForce should be ~ 7 TH/s NTLM, 4 TH/s MD5
— Jeremi M Gosney (@jmgosney) March 2, 2017
That is 4 Trillion MD5 hashes per second. Let’s see how long it would take to retrieve passwords hashed with MD5 using brute-force:
Description | Example Password | Example Password | Duration |
---|---|---|---|
8 character password (lower-case letters) | slrudowq | password | about 53 milliseconds |
search space / hashes per second = brute-force time in seconds 217,180,147,158 / 4,000,000,000,000 = 0.05429503679 seconds = 54.3 milliseconds |
|||
8 character password (numbers, letters) | m7wY8sDs | P4ssW0rd | about 1 minute |
221,919,451,578,090 / 4,000,000,000,000 = 55.4798628945 seconds | |||
8 character password (numbers, letters, symbols) | $QWt+4V: | P4$$W@rd | about 30 minutes |
6,704,780,954,517,120 / 4,000,000,000,000 = 1,676 seconds = 27 minutes 56 seconds | |||
10 character password (numbers, letters, symbols) | FN*vX5t8=o | P4$$W@rd10 | about half a year |
60,510,648,114,517,017,120 / 4,000,000,000,000 = 15,127,662 seconds = 25.01 weeks | |||
14 character password (lower-case letters) | guxpzsvhzpizgz | passwordqwerty | about half a year |
67,090,373,691,429,037,014 / 4,000,000,000,000 = 16,772,593 seconds = 27.73 weeks | |||
12 character password (numbers, letters, symbols) | Tc0rBVK,\s]9 | Tr0ub4dour&3 | about 43 centuries |
546,108,599,233,516,079,517,120 / 4,000,000,000,000 = 136,527,149,808.379 seconds = 225,739 weeks | |||
28 character password (lower-case letters, symbols) 4 random words / diceware |
zorn snug woke stable jockey | correct horse battery stable | really long time if using brute-force |
Brute-force: 3.90x10^49 / 4,000,000,000,000 = 9.75x10^36 seconds = 3,091,704,718,417,047,290,000,000,000 centuries
Diceware Dictionary: 7776 x 7776 x 7776 x 7776 x 7776 / 4,000,000,000,000 = 7,107,572.00748243 seconds = 11.75 weeks |
Try it yourself at: https://www.grc.com/haystack.htm
Now most password cracking is not done with brute-force. It is done with password lists, mutations on the lists, rainbow tables and password masks. This reduces the time to guess the correct password considerably.
Tr0ub4dour&3
, password
, P4ssW0rd
, P4$$W@rd
, P4$$W@rd10
and passwordqwerty
, would all take less than a second with the same set-up. But FN*vX5t8=o
and guxpzsvhzpizgz
are completely random so it would still take about half a year with brute-force.
Try it yourself with zxcvbn