|
25 Years of Programming
An open source source for C, C++, OWL, BASIC, MDB, XLS, DOT, and more... |
Home Projects Sitemap Search Blog Forum+Chat About Us Privacy Terms of Use Feedback FAQ Images Services Payments Humor Music |
|
Best practices for creating and managing passwords, supplementing the article at:
Best practices for website passwords (and all passwords)Published reports, and my own experience, are the same: Most people use terrible passwords, even if they think they use good ones. Three reasons people use terrible passwords:
Therefore, to most people, passwords are a nuisance, something that gets in the way of easily reaching desired destinations and doing desired activities. But your passwords are the only things preventing other people from going to those same destinations and doing those same activities AS YOU!
To a website or other online service, "you" are not a person, but a data connection, a source from which it receives commands and whatever else you type. A hacker is also a data connection, just like you. The ONLY difference between you and the hacker is that you know your password and the hacker doesn't. To the remote computer, a hacker who does know your password is you. They can do anything, absolutely anything, that you can do with your account. Considering the personal disasters that can result from a cracked password, shouldn't you want to know the best way to create and manage your passwords to prevent those things from happening to you? What follows is a list of password rules and explanations for them, to help you create unbreakable passwords and manage them safely. Although some of the comments are directed at webmasters managing website passwords, the same principles apply to everyone whose logins need serious protection, which is everyone. 1) Always use strong (long, random) passwordsA
strong
Any password that does not fit the above description is no good. It does not adequately protect the information it is supposed to protect. What makes the above password examples good?
What makes other types of passwords bad?
Password strength is top priority because the #1 threat to your website is internet attackersThere are thousands of them, and they will damage your website if they get in. That is why you must use strong uncrackable passwords. You must keep them out. The strength of a password must be the first consideration, the top priority. Whatever other issues or inconveniences result from your having to use a strong password can then be dealt with -- somehow -- but not by compromising the password strength! Remembering a strong password is difficult at first. Write it down so you don't forget it. Many people have heard that passwords should never be written down, but that rule was for U.S. government employees who had to protect secret information from spies rummaging through their desks. You don't have to be concerned about that (I hope).
Try to keep your UserNames/UserIDs secret, tooYour UserName or UserID is the other piece of information someone needs to log in as you. Even though it is rarely as cryptic as a password (although for extra security, you could make it so), keep it as secret as possible. If you are a webmaster, don't post your cPanel UserID in forum messages, as some people do. 2) Use a different password for every purposeAlthough this section speaks to webmasters, the same principle applies to everybody: Never use the same password in more than one place. If someone manages to crack your Facebook password, you don't want them running over to your banking website and discovering that it works there, too! The passwords you use for cPanel/FTP, password protection of folders, database connections, each of your email accounts, and your helpdesk login at your webhost should all be different. Never use a password in more than one login location. If hackers can get a password from one location (such as an email account), they will test it to see if it will also work somewhere else (such as cPanel, FTP, and even your bank's website, if they know it). This is because so many people use a single password in more than one place. If you use different ones, someone who obtains one of your passwords will only get into one place and will still be locked out of all the others. Not all your passwords are stored in equally secure locations and formats. Some of them are easier to get than others. Your cPanel password, for example, is normally extremely secure. It is not even stored anywhere in your website files. But if you use the same password for your database connections, it's exposed in plain text in your PHP scripts. If a glitch or misconfiguration on your server causes PHP to stop working, your site could start writing your cPanel password on the pages it sends out. Email account passwords are stored in website files, too. They are encrypted, but someone who gets the files can easily decrypt them offline where it goes much faster. If you use the same password everywhere, it's only as secure as the least secure place where it's stored. 3) When given a default password, always change itAnytime you install software that comes with a pre-assigned default password for admin login or for database access (or anything else), the first thing you should do is figure out how to change the passwords, and do it. 4) Only give your password to people who absolutely must have itIf you give someone temporary password access, change the password as soon as their work is finished, no matter how much you trust them. Even if they are completely trustworthy, their PC could get a virus sometime later, and it could steal your password from where it is stored on their PC. You are safer if that password will no longer work. Summary
Other resources
Strong Password Typing PracticeWhen you first start using strong passwords, they look strange and unfamiliar. That doesn't only make them difficult to remember. Most people even have trouble typing them accurately. The good news is that the more you work with them, the easier it gets to type them correctly and even to memorize them. That's not only true for a single password, which you will of course memorize eventually from using it many times, but for strong passwords in general. After they stop looking so strange and unnatural, the mental block that most people have against them disappears. Long random passwords become something that you simply know how to work with comfortably. This online calculator is for password practice in an atmosphere where it doesn't matter whether you get it right or not, or how many tries it takes.
Where to generate strong passwordsAlthough the above password generator can be used to generate passwords for actual use, its generation method is not particularly good, and the method is revealed in the source code of this webpage, which could make its character sequence predictable. Another flaw is that although it does correctly enforce a "password policy" that the generated password must contain at least 1 of each character type (upper case letter, lower case letter, digit, and punctuation if that option was requested), it can still generate dictionary words (or other too-easy sequences) by accident, and it doesn't know how to filter those out. If the password contains a dictionary word, don't use it. The two best places that I know and trust for generating strong passwords are: 1) Gibson Research Corporation GRC High Security Password GeneratorThe GRC Ultra High Security Password Generator is excellent, the best, for generating strong passwords for any purpose. With each page refresh, the site generates 3 strings of random passwords.
2) cPanel Password GeneratorcPanel now includes a good password generator for changing your website password. It can be used, although it's inconvenient, for generating passwords for other purposes.
Other notes
|
|
|
|
|
|
|
Copyright ©2011 Steven Whitney. Last modified Wed 03/16/2011 01:04:00 -0700. |
||