Possible Duplicate:
Why aren&rsquot original passwords saved?

Why would one store encoded user passwords inside a database, when the password may be the least valuable area of the data? It does not appear enjoy it would affect exterior attacks setting a restricted quantity of login attempts daily per account could be effective. It does not appear enjoy it would affect internal attacks if a person can access the passwords, they have also got access up to the more valuable data within the relaxation from the database.

Am I missing something here? Should not the whole database be encoded using user passwords like a key for that password file encryption itself to work?

Combined his publish below together with his question:

Ok, I requested the question inside a bad way. Allow me to rephrase this.

If a person breaks into this technique, the truth that they've anyone's passwords is among the least of my concerns. I'm going to be encrypting passwords however in my humble opinion, another data within the database is much worth more. Think that if the internal attacker has that data, they do not worry about the passwords.

If little else within the database is encoded and anything else within the database is exactly what an assailant really wants, did encrypting passwords really solve anything?

Because, hashing passwords will safeguard it from attacks from the organization. By doing this individuals who have the database will not be aware of user's password.

Individuals have a practice of utilizing the same password again and again, and thus in case your database is accidentally jeopardized, your business is not the one which helps make the user's other accounts composed in other organizations. Now should people do that, no, however they do, and it is a great deal simpler to hash the passwords, than to describe for your clients why someone inside got a your hands on the passwords and triggered harm to several accounts in others not associated with yours.

If you feel this reason is simply too exaggerated, you might like to realize that it really happened to Shaun Atwood, Stack Overflow creator. He referred to the way the whole Stack Overflow was jeopardized in the blog publish "I Simply Drenched In While You: The Way It Happened".

Edit:

To help answer you question, your other sensitive data ought to be encoded too. Lots of cyber attacts are inside jobs, and that i hate to express it, but you need to be paranoid about who are able to see what information. Something that you deem sensitive you don't want individuals to know unless of course they're particularly approved to determine that data, ought to be encoded within the database. You're right you will find occasions when evaluating so what can be stolen the password is not that a concern for you. The bottom line is "for youInch. It's with other people, and really should be protected together with another sensitive data within the system.

What for those who have a SQL injection vulnerability, someone steals your database, and uses the usernames, emails, and plaintext passwords you've saved to login straight to your customers email options, accounts, etc. You may not want to defend myself against that liability? On the other hand, you may not want to defend myself against down to seeing your customers passwords in plaintext?

Reasons:

  1. If a person (from the inside or outdoors) will steal individuals passwords and openly release them, you are condemned, you are able to instantly close your company.
  2. Many people make use of the same password for a lot of services. If some "attacker" can access e-mail address and password, the simplest strategy is to test in the event that password also works for your e-mail account.

You wouldn't want this happen.

If you're able to access someone's e-mail account, you are able to request delivering forgotten password from victim's various services etc.