Weak Hashing Mistakes: MD5, SHA-1, Unsalted Hashes