The abbr tag is used to show abbreviations on line, such as PHP: Hypertext Preprocessor. Instead of typing that all out, you'd do <abbr title="PHP: Hypertext Preprocessor">PHP</abbr>. Similar with the <acronym> tag.
Salting is good because it only takes an extra line of code and makes your hashes virtually unbreakable.
Say somebody uses SQL injection, cookie exploitation, or a server exploit, and they get into your database. You've got a bunch of MD5 hashes in there - passwords, credit card numbers, maybe, social security numbers, whatever. They download them all. They pull up a rainbow table of MD5 hashes, or a dictionary attack. Now, without salts - they can get the MD5 hash of say, "password", with one of those attacks, fairly easily. So what you do is salt the md5 hash, so instead of it being stored as "password" in md5 hash, it gets stored as 'salt' . 'password'.
Liike so:
<?PHP
// salt demo
$mySalt = 'eab4c03a8d7b938cf563270581b1218a';
$userPass = 'password';
$databasePassword = md5($mySalt . $userPass);
// database query to insert their password here.
?>
Then you save $mySalt in a php file and include it on your login authentication page. Every time they enter their password, you prepend the salt to it before you hash them, then check that against the database. That makes it impossible for a dictionary attack, and most rainbow table attacks, to succeed, because the chances of an attacker having 'eab4c03a8d7b938cf563270581b1218apassword' as a plaintext in their dictionary is practically impossible, and it's unlikely even the NSA would have the computing power to generate rainbow tables for that length.
🙂