This post is older than a year. Consider some information might not be accurate anymore.
The requirements for good passwords are simple. The challenge starts with keeping track of passwords, as the best effort, use for each website, application or system a different password. Another alternative is to use a single password, which is well protected, and generate for each website, application or system a salted hash password.
In cryptography, a salt is random data that is used as an additional input to a one-way function that hashes a password or passphrase. The primary function of salts is to defend against dictionary attacks versus a list of password hashes and against pre-computed rainbow table attacks. (Wikipedia)
The University of Stanford provides such a password hasher. Stanford PwdHash allows to generate passwords online or integrated in Mozilla Firefox or Google Chrome. Additionally you can vary for each generation the algorithm.