On Mon, 30 Aug 2004, Andrew Jorgensen wrote:
> > They're probably not different.  Each time you change your password, the
> > system selects a random salt which is combined with the password before
> > hashing and saved in the clear before the password hash.  Its purpose is to
> > prevent exactly what you just tried - hashing every word in a dictionary to
> > see which hashes match up.  With salt, you'd have to hash every word with
> > every possible salt.
> 
> So is the salt stored with the hash? If so, what's the point?  If not,
> where is the salt stored?

Yes, it's saved in the clear before the password hash in /etc/shadow.  Its
purpose is to prevent [...] hashing every word in a dictionary to see which
hashes match up.  With salt, you'd have to hash every word with every possible
salt.

Dictionary attack programs take a middle road of looking at all the salts in
the /etc/shadow file you're attacking and hashing each word in the dict with
every salt in the file and looking for matches.  So for your 1 million entry
dictionary and 1000 entry /etc/shadow (each with different salt), you have to
compute 1 billion hashes instead of 1 million.

                                                        -J


____________________
BYU Unix Users Group 
http://uug.byu.edu/ 
___________________________________________________________________
List Info: http://uug.byu.edu/cgi-bin/mailman/listinfo/uug-list

Reply via email to