I've been reading lots on stackoverflow specifically about security for login passwords. I read that security is enhanced when a variety of character sets are used and/or longer passwords. Thus, something other than a-z, A-Z, 0-9 to include things like 'special' French, German or Spanish characters (umlauts, accents etc), and passwords that are 20 characters are better than passwords with eight characters.
This got me thinking - let's say I force my users to input a password, minimum 8 characters in length, to include number, uppercase, lowercase character. Let's say that I always apply a 1000 character fixed string to the password (so its hardcoded in the javascript and viewable to the client via view source).
Once a strong hash is made out of this extended string, have I enhanced my security in anyway, or is the fact that the hard coded string being public not offer me anything extra?
I suspect that if someone wanted to perform a dictionary attack, by appending a 1000 character string to the source I slow them down because the hash would take longer to compute since it would be computed on an extra long string? True or not?