<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments on: More secure passwords !</title>
	<atom:link href="http://ludopoitou.wordpress.com/2012/06/13/more-secure-passwords/feed/" rel="self" type="application/rss+xml" />
	<link>http://ludopoitou.wordpress.com/2012/06/13/more-secure-passwords/</link>
	<description>Ludovic Poitou blog about Identity, Directory and others...</description>
	<lastBuildDate>Sun, 12 May 2013 11:14:20 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
	<item>
		<title>By: Ludo</title>
		<link>http://ludopoitou.wordpress.com/2012/06/13/more-secure-passwords/#comment-1084</link>
		<dc:creator><![CDATA[Ludo]]></dc:creator>
		<pubDate>Thu, 14 Jun 2012 08:34:13 +0000</pubDate>
		<guid isPermaLink="false">http://ludopoitou.wordpress.com/?p=1173#comment-1084</guid>
		<description><![CDATA[Yes, the salt is here to prevent attacks with precomputed hashes (http://en.wikipedia.org/wiki/Rainbow_table), which may correspond to several passwords as well.
The use of Salted SHA 512, over SHA1 reduces the risk of chain collisions.
Now, storing the salt separated from the password would definitely be more secure, but it increases the complexity when distributing the passwords and also consumes much more memory, space or disk IOs. Each time you need to authenticate someone, you will need to read in 2 locations the hashed password and the salt. You also need to associate the hash and the salt using an extra ID which increases the risk of errors.
Overall, the use of stronger and salted hash mechanism is meant to make it harder and longer to run dictionary attacks but it is just one of the steps to secure the use of plain text passwords. The other existing measures are complexity check of the passwords, as well as forcing users to change regularly the password (although this often results in simpler passwords to remember), and not to reuse previous passwords. All of these are available and configurable in OpenDJ, through the Password Policies.]]></description>
		<content:encoded><![CDATA[<p>Yes, the salt is here to prevent attacks with precomputed hashes (<a href="http://en.wikipedia.org/wiki/Rainbow_table" rel="nofollow">http://en.wikipedia.org/wiki/Rainbow_table</a>), which may correspond to several passwords as well.<br />
The use of Salted SHA 512, over SHA1 reduces the risk of chain collisions.<br />
Now, storing the salt separated from the password would definitely be more secure, but it increases the complexity when distributing the passwords and also consumes much more memory, space or disk IOs. Each time you need to authenticate someone, you will need to read in 2 locations the hashed password and the salt. You also need to associate the hash and the salt using an extra ID which increases the risk of errors.<br />
Overall, the use of stronger and salted hash mechanism is meant to make it harder and longer to run dictionary attacks but it is just one of the steps to secure the use of plain text passwords. The other existing measures are complexity check of the passwords, as well as forcing users to change regularly the password (although this often results in simpler passwords to remember), and not to reuse previous passwords. All of these are available and configurable in OpenDJ, through the Password Policies.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Emmanuel Bernard</title>
		<link>http://ludopoitou.wordpress.com/2012/06/13/more-secure-passwords/#comment-1083</link>
		<dc:creator><![CDATA[Emmanuel Bernard]]></dc:creator>
		<pubDate>Wed, 13 Jun 2012 21:37:01 +0000</pubDate>
		<guid isPermaLink="false">http://ludopoitou.wordpress.com/?p=1173#comment-1083</guid>
		<description><![CDATA[What surprises me is that the salt is stored in the same table as the password. It means that for a specific user, I can build my salted brute force dictionary and find it if the password is common enough. 
Salt is really here to save from massive steal. 

I personally would have stored the salt for each user on a different box or at least data store than the hashed password.]]></description>
		<content:encoded><![CDATA[<p>What surprises me is that the salt is stored in the same table as the password. It means that for a specific user, I can build my salted brute force dictionary and find it if the password is common enough.<br />
Salt is really here to save from massive steal. </p>
<p>I personally would have stored the salt for each user on a different box or at least data store than the hashed password.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ludo</title>
		<link>http://ludopoitou.wordpress.com/2012/06/13/more-secure-passwords/#comment-1081</link>
		<dc:creator><![CDATA[Ludo]]></dc:creator>
		<pubDate>Wed, 13 Jun 2012 16:28:30 +0000</pubDate>
		<guid isPermaLink="false">http://ludopoitou.wordpress.com/?p=1173#comment-1081</guid>
		<description><![CDATA[Yes, of course. There is an interface that all password storage schemes are implementing. The encryption algo can be reversible or not, but OpenDJ directory server will not return a cleartext password to the client application. Decrypt (when available) is only used for internal use, for example with authentication mechanisms that passphrases and multiple steps (like Digest-MD5).]]></description>
		<content:encoded><![CDATA[<p>Yes, of course. There is an interface that all password storage schemes are implementing. The encryption algo can be reversible or not, but OpenDJ directory server will not return a cleartext password to the client application. Decrypt (when available) is only used for internal use, for example with authentication mechanisms that passphrases and multiple steps (like Digest-MD5).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: DD5</title>
		<link>http://ludopoitou.wordpress.com/2012/06/13/more-secure-passwords/#comment-1080</link>
		<dc:creator><![CDATA[DD5]]></dc:creator>
		<pubDate>Wed, 13 Jun 2012 16:25:07 +0000</pubDate>
		<guid isPermaLink="false">http://ludopoitou.wordpress.com/?p=1173#comment-1080</guid>
		<description><![CDATA[Can other password encryption algorithms be added to OpenDJ, such as bcrypt/scrypt?]]></description>
		<content:encoded><![CDATA[<p>Can other password encryption algorithms be added to OpenDJ, such as bcrypt/scrypt?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ludo</title>
		<link>http://ludopoitou.wordpress.com/2012/06/13/more-secure-passwords/#comment-1078</link>
		<dc:creator><![CDATA[Ludo]]></dc:creator>
		<pubDate>Wed, 13 Jun 2012 14:41:50 +0000</pubDate>
		<guid isPermaLink="false">http://ludopoitou.wordpress.com/?p=1173#comment-1078</guid>
		<description><![CDATA[It is a salt per password and the salt is appended to the hashed password in clear.
This is the OWASP recommended way to hash passwords : https://www.owasp.org/index.php/Hashing_Java.
The additional step for very long term passwords storage, would be to iterate on the hash multiple times (I think the recommandation is a minimum of 1000 iterations, which will probably start to become a performance bottleneck for us).]]></description>
		<content:encoded><![CDATA[<p>It is a salt per password and the salt is appended to the hashed password in clear.<br />
This is the OWASP recommended way to hash passwords : <a href="https://www.owasp.org/index.php/Hashing_Java" rel="nofollow">https://www.owasp.org/index.php/Hashing_Java</a>.<br />
The additional step for very long term passwords storage, would be to iterate on the hash multiple times (I think the recommandation is a minimum of 1000 iterations, which will probably start to become a performance bottleneck for us).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Emmanuel Bernard</title>
		<link>http://ludopoitou.wordpress.com/2012/06/13/more-secure-passwords/#comment-1077</link>
		<dc:creator><![CDATA[Emmanuel Bernard]]></dc:creator>
		<pubDate>Wed, 13 Jun 2012 14:34:50 +0000</pubDate>
		<guid isPermaLink="false">http://ludopoitou.wordpress.com/?p=1173#comment-1077</guid>
		<description><![CDATA[Is that one salt per password or one global salt?
If per password, where do you keep the salt?]]></description>
		<content:encoded><![CDATA[<p>Is that one salt per password or one global salt?<br />
If per password, where do you keep the salt?</p>
]]></content:encoded>
	</item>
</channel>
</rss>
