I've heard of people using this approach and would like to know what the implications are. I just know it's a bad idea!
From what I understand, salting a password before storing the hash in a DB has the primary purpose of making every hashing algorithm unique, and thus requiring a new rainbow table for every user when trying to crack it.
How is a hash weakened in this context if the plain text was just salted with itself?
An example:
plainText = input();
saltedText = plainText + plainText;
hashedText = hash(saltedText);
db.store(hashedText);
And would the following approach have the same weaknesses or any other weaknesses?
plainText = input();
saltedText = hash(plainText) + plainText;
hashedText = hash(saltedText);
db.store(hashedText);