As well as 2-step you could also consider something like LastPass to auto-generate and manage your passwords. I have it on my PC and Android and it is very good, I don't even know what my Steam, banking, gmail passwords are except they are at least 16 random numbers, symbols, upper and lower case letters.