<?xml version="1.0"?>
<rss version="2.0">
  <channel>
    <title>PHPDeveloper.org</title>
    <link>http://www.phpdeveloper.org</link>
    <description>Up-to-the Minute PHP News, views and community</description>
    <language>en-us</language>
    <pubDate>Wed, 22 May 2013 05:47:18 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[Kavoir.com: Just Hashing is Far from Enough for Storing Passwords (Dictionary & Rainbow Attacks)]]></title>
      <guid>http://www.phpdeveloper.org/news/14156</guid>
      <link>http://www.phpdeveloper.org/news/14156</link>
      <description><![CDATA[<p>
On Kavoir.com there's a new post that reminds you that <a href="http://www.kavoir.com/2010/03/just-hashing-is-far-from-enough-how-to-position-against-dictionary-and-rainbow-attacks.html">hashing isn't enough anymore</a> to protect your users and their passwords. They offer a suggestion or two of what you can do to help lock things down a bit more.
</p>
<blockquote>
The common practice is to hash the user password and store the hash string of the password in the database. When the user tries to log in and supplies his password, it is used to generate a hash string to be compared to the one stored in the database. [...] This approach may be secure in the 70s of the last century, but barely any more. 
</blockquote>
<p>
Computing has evolved enough to where hashed can be matched, sometimes in less than two or three minutes. Their answer to the problem? Generate a random salt each time you create the hash with a constant being used as a base. A code snippet calling a user-defined function and the <a href="http://php.net/sha1">sha1</a> function are included.
</p>]]></description>
      <pubDate>Tue, 09 Mar 2010 13:11:01 -0600</pubDate>
    </item>
  </channel>
</rss>
