<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Intrepid Blog &#187; md5</title>
	<atom:link href="http://blog.affien.com/archives/tag/md5/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.affien.com</link>
	<description>A few thoughts</description>
	<lastBuildDate>Mon, 01 Mar 2010 00:58:01 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>md5(microtime())</title>
		<link>http://blog.affien.com/archives/2006/12/03/md5microtime/</link>
		<comments>http://blog.affien.com/archives/2006/12/03/md5microtime/#comments</comments>
		<pubDate>Sun, 03 Dec 2006 22:52:50 +0000</pubDate>
		<dc:creator>Bas Westerbaan</dc:creator>
				<category><![CDATA[Web development]]></category>
		<category><![CDATA[md5]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://blog.w-nz.com/archives/2006/12/03/md5microtime/</guid>
		<description><![CDATA[Don&#8217;t use md5(microtime()). You might think it&#8217;s more secure than md5(rand()), but it isn&#8217;t.
With a decent amount of tries and a method of syncing (like a clock on your website) one can predict the result of microtime() to the millisecond. This only leaves about a 1000 different possible return values for microtime() to be guessed. [...]]]></description>
			<content:encoded><![CDATA[<p>Don&#8217;t use <code>md5(microtime())</code>. You might think it&#8217;s more secure than <code>md5(rand())</code>, but it isn&#8217;t.</p>
<p>With a decent amount of tries and a method of syncing (like a clock on your website) one can predict the result of <code>microtime()</code> to the millisecond. This only leaves about a 1000 different possible return values for <code>microtime()</code> to be guessed. That isn&#8217;t safe.</p>
<p>Just stick with <code>md5(rand())</code>, and if you&#8217;re lucky and <code>rand()</code> is backed by <code>/dev/random</code> you won&#8217;t even need the <code>md5()</code>. In both cases it will be quite a lot more secure than using <code>microtime()</code>. </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.affien.com/archives/2006/12/03/md5microtime/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
