Let's assume the following situation:
The attacker has extracted 1000 password hashes from a website (vuln.com
) along with all their usernames and hashing algorithm (assume bcrypt
). The only piece of information stopping them from cracking all the hashes is the missing passwords and salts. Assume the salts are all cryptographically random.
What would change if the attacker also has all the salts?
What are the differences between cracking the hashes with and without knowing the salts?
hash = bcrypt(password + salt)
and not other more complicated ways the password and salt can be combined. $\endgroup$ – John Zhau Feb 24 '20 at 11:12pw.len = 6; salt.len = 2
is fine for demonstration purposes. With a few variables (pw.len, salt.len
), we can scale it up with longer strings. I'm not very good with maths so I'm wondering how we can estimate computations and whether there's some analysis that can be done knowing the salt but not how the password and salt are combined before the hash. $\endgroup$ – John Zhau Feb 24 '20 at 13:11