Hello,
Here are my current security guidelines for generating and using passwords. Hope it helps some of you.
Always remember:
- A good password is one you cannot remember.
- The human brain is horrible at generating random sequences.
- Security at the expense of usability comes at the expense of security.
- If someone wants to hack an account, there is nothing that can stop them.
DO NOT:
- create password made from famous quotes, phrases, lyrics, song names, bands, food, etc. Some people may know you, know your habbits/tendencies and could easily guess the password. Common items in your life are dead giveaways.
- develop a template that is applicable to all sites with small changes in characters from domain name, user, or similar. If one account is compromised, then all other accounts are the compromised as well.
- use the same password twice. Again, if one is comprimised...
- write the password down on sticky notes, text file, qr codes.
DO:
- generate a random password for all your accounts at the maximum possible length supported by a given system. In 2017, about 80% of the web have no maximum password length policy. So you are free to try this. Some sites truncate passwords automatically if they are too long, or do not sanitize their inputs (\% is interpreted differently on such systems). On such systems, the newly configured password does not work anymore even though a success message appeared. It's trial and error I'm affraid.
- generate a strong main password and remember it. Use it everyday, write it 50 times a day on a piece a paper, and also type it and in one week it will be as natural as ABC. Writing and typing are two different things, and they both should be performed.
- generate and remember a separate password for each os you use. On Windows any password will do, on Linux you must use a non-dictionary password, on MAC the same. Remember, to use KeePass or any other password manager, you first need to login, so...
- As hardware performance is getting faster and faster, your password length should also grow.
As an example, I need to remember 5 passwords: passwords manager, windows, linux, emails (used for quick android configuration and cannot use keepass), work password.