<?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/"
		>
<channel>
	<title>Comments on: Creating a Secure Login System the Right Way</title>
	<atom:link href="http://tinsology.net/2009/06/creating-a-secure-login-system-the-right-way/feed/" rel="self" type="application/rss+xml" />
	<link>http://tinsology.net/2009/06/creating-a-secure-login-system-the-right-way/</link>
	<description>Read Me</description>
	<lastBuildDate>Thu, 11 Mar 2010 07:39:16 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: verboze</title>
		<link>http://tinsology.net/2009/06/creating-a-secure-login-system-the-right-way/comment-page-1/#comment-2736</link>
		<dc:creator>verboze</dc:creator>
		<pubDate>Thu, 11 Mar 2010 07:39:16 +0000</pubDate>
		<guid isPermaLink="false">http://tinsology.net/?p=663#comment-2736</guid>
		<description>Great article! Being new to implementing login systems, this article thought me the basics I needed to get started. Thanks for sharing!</description>
		<content:encoded><![CDATA[<p>Great article! Being new to implementing login systems, this article thought me the basics I needed to get started. Thanks for sharing!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kevin</title>
		<link>http://tinsology.net/2009/06/creating-a-secure-login-system-the-right-way/comment-page-1/#comment-2732</link>
		<dc:creator>Kevin</dc:creator>
		<pubDate>Tue, 09 Mar 2010 23:11:14 +0000</pubDate>
		<guid isPermaLink="false">http://tinsology.net/?p=663#comment-2732</guid>
		<description>My bad! Feel free to delete my dumbass post. Thats what &lt;b&gt;I&lt;/b&gt; get for writing and not sleeping. I take it all back!

I blindly missed the WHERE username = &#039;$username&#039; and assumed it was WHERE username = &#039;$username&#039; AND password = &#039;$password&#039; which WOULD have been a problem.</description>
		<content:encoded><![CDATA[<p>My bad! Feel free to delete my dumbass post. Thats what <b>I</b> get for writing and not sleeping. I take it all back!</p>
<p>I blindly missed the WHERE username = &#8216;$username&#8217; and assumed it was WHERE username = &#8216;$username&#8217; AND password = &#8216;$password&#8217; which WOULD have been a problem.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tinsley</title>
		<link>http://tinsology.net/2009/06/creating-a-secure-login-system-the-right-way/comment-page-1/#comment-2731</link>
		<dc:creator>Tinsley</dc:creator>
		<pubDate>Tue, 09 Mar 2010 22:57:25 +0000</pubDate>
		<guid isPermaLink="false">http://tinsology.net/?p=663#comment-2731</guid>
		<description>Did you read the code carefully? The raw password never touches the database... it is hashed. There is no need to use escape_string or any other sanitizing on hashed data. The ONLY user input that touches the database is the username and that IS sanitized. In addition to this I point out PDO as an alternative to using the mysql_ family of functions, which is inherently more secure.</description>
		<content:encoded><![CDATA[<p>Did you read the code carefully? The raw password never touches the database&#8230; it is hashed. There is no need to use escape_string or any other sanitizing on hashed data. The ONLY user input that touches the database is the username and that IS sanitized. In addition to this I point out PDO as an alternative to using the mysql_ family of functions, which is inherently more secure.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kevin</title>
		<link>http://tinsology.net/2009/06/creating-a-secure-login-system-the-right-way/comment-page-1/#comment-2730</link>
		<dc:creator>Kevin</dc:creator>
		<pubDate>Tue, 09 Mar 2010 22:33:22 +0000</pubDate>
		<guid isPermaLink="false">http://tinsology.net/?p=663#comment-2730</guid>
		<description>Your subject for this code is &quot;Creating a Secure Login System the Right Way&quot; yet you post insecure code. WTF? In your own words you say &quot;you should never trust your users. Validate all user input, protect against SQL injections&quot;, yet you don&#039;t provide any sanitizing protection for the password input from the user. Newbies using your &quot;secure&quot; code will now be open to an sql injection attack.</description>
		<content:encoded><![CDATA[<p>Your subject for this code is &#8220;Creating a Secure Login System the Right Way&#8221; yet you post insecure code. WTF? In your own words you say &#8220;you should never trust your users. Validate all user input, protect against SQL injections&#8221;, yet you don&#8217;t provide any sanitizing protection for the password input from the user. Newbies using your &#8220;secure&#8221; code will now be open to an sql injection attack.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tinsley</title>
		<link>http://tinsology.net/2009/06/creating-a-secure-login-system-the-right-way/comment-page-1/#comment-2711</link>
		<dc:creator>Tinsley</dc:creator>
		<pubDate>Tue, 02 Mar 2010 16:21:34 +0000</pubDate>
		<guid isPermaLink="false">http://tinsology.net/?p=663#comment-2711</guid>
		<description>Normally I would, but not in this case for three reasons:

	If I post a zip file of this script I will have to update it whenever I updated this post
	All I would be doing is copying the code I posted here into a few files
	...And the main reason: This is not a working implementation. I don&#039;t mean for you to copy this code and put it into production. It is meant to demonstrate the concepts. It is meant to be a reference for creating a login system of your own.
</description>
		<content:encoded><![CDATA[<p>Normally I would, but not in this case for three reasons:</p>
<p>	If I post a zip file of this script I will have to update it whenever I updated this post<br />
	All I would be doing is copying the code I posted here into a few files<br />
	&#8230;And the main reason: This is not a working implementation. I don&#8217;t mean for you to copy this code and put it into production. It is meant to demonstrate the concepts. It is meant to be a reference for creating a login system of your own.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nookie</title>
		<link>http://tinsology.net/2009/06/creating-a-secure-login-system-the-right-way/comment-page-1/#comment-2710</link>
		<dc:creator>Nookie</dc:creator>
		<pubDate>Tue, 02 Mar 2010 07:42:31 +0000</pubDate>
		<guid isPermaLink="false">http://tinsology.net/?p=663#comment-2710</guid>
		<description>Hi,

Could you maybe post or email me entire script in a zip file?
That would be really really great! 

Thanx in advance!
/Nookie</description>
		<content:encoded><![CDATA[<p>Hi,</p>
<p>Could you maybe post or email me entire script in a zip file?<br />
That would be really really great! </p>
<p>Thanx in advance!<br />
/Nookie</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tinsley</title>
		<link>http://tinsology.net/2009/06/creating-a-secure-login-system-the-right-way/comment-page-1/#comment-2627</link>
		<dc:creator>Tinsley</dc:creator>
		<pubDate>Sat, 30 Jan 2010 19:47:24 +0000</pubDate>
		<guid isPermaLink="false">http://tinsology.net/?p=663#comment-2627</guid>
		<description>I&#039;ve looked further into the issue and it appears that the problem stems from a bug in PHP 5.3.0 ( http://bugs.php.net/bug.php?id=48754 ); specifying the connection handle is a workaround for that bug. Upgrading to 5.3.1 should resolve the issue and you&#039;ll be able to use mysql_close() without parameters.</description>
		<content:encoded><![CDATA[<p>I&#8217;ve looked further into the issue and it appears that the problem stems from a bug in PHP 5.3.0 ( <a href="http://bugs.php.net/bug.php?id=48754" rel="nofollow">http://bugs.php.net/bug.php?id=48754</a> ); specifying the connection handle is a workaround for that bug. Upgrading to 5.3.1 should resolve the issue and you&#8217;ll be able to use mysql_close() without parameters.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Claude</title>
		<link>http://tinsology.net/2009/06/creating-a-secure-login-system-the-right-way/comment-page-1/#comment-2626</link>
		<dc:creator>Claude</dc:creator>
		<pubDate>Sat, 30 Jan 2010 11:19:58 +0000</pubDate>
		<guid isPermaLink="false">http://tinsology.net/?p=663#comment-2626</guid>
		<description>Hi Tinsley

Sorry for not being specific. I tested it again with mysql_close(); Ite gave me the following error:

Apache HTTP Server has encountered a problem and needs to close.  We are sorry for the inconvenience. (One of those send / don&#039;t send error reports).

The error signature contains the following information: 
szAppName : httpd.exe     
szAppVer : 2.2.14.0     
szModName : php_mysql.dll
szModVer : 5.3.0.0     
offset : 00002072

I did debug the code and the error did occurred at the mysql_close();. I did a google search and found other developers had a problem with this in the past and stated to use the connection handle variable to prevent such an error.</description>
		<content:encoded><![CDATA[<p>Hi Tinsley</p>
<p>Sorry for not being specific. I tested it again with mysql_close(); Ite gave me the following error:</p>
<p>Apache HTTP Server has encountered a problem and needs to close.  We are sorry for the inconvenience. (One of those send / don&#8217;t send error reports).</p>
<p>The error signature contains the following information:<br />
szAppName : httpd.exe<br />
szAppVer : 2.2.14.0<br />
szModName : php_mysql.dll<br />
szModVer : 5.3.0.0<br />
offset : 00002072</p>
<p>I did debug the code and the error did occurred at the mysql_close();. I did a google search and found other developers had a problem with this in the past and stated to use the connection handle variable to prevent such an error.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tinsley</title>
		<link>http://tinsology.net/2009/06/creating-a-secure-login-system-the-right-way/comment-page-1/#comment-2621</link>
		<dc:creator>Tinsley</dc:creator>
		<pubDate>Fri, 29 Jan 2010 03:09:51 +0000</pubDate>
		<guid isPermaLink="false">http://tinsology.net/?p=663#comment-2621</guid>
		<description>You are the first person to report a &#039;crash&#039; as far as I&#039;m aware. What exactly do you mean by crash? Is there an error message? Also, regarding mysql_close(), specifying the connection handle is only necessary if multiple connections are open, otherwise the behavior is identical to calling it without any parameters.</description>
		<content:encoded><![CDATA[<p>You are the first person to report a &#8216;crash&#8217; as far as I&#8217;m aware. What exactly do you mean by crash? Is there an error message? Also, regarding mysql_close(), specifying the connection handle is only necessary if multiple connections are open, otherwise the behavior is identical to calling it without any parameters.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Claude</title>
		<link>http://tinsology.net/2009/06/creating-a-secure-login-system-the-right-way/comment-page-1/#comment-2616</link>
		<dc:creator>Claude</dc:creator>
		<pubDate>Thu, 28 Jan 2010 20:50:19 +0000</pubDate>
		<guid isPermaLink="false">http://tinsology.net/?p=663#comment-2616</guid>
		<description>Thanks for the very good example. How ever I don&#039;t know if any one experienced a crash with the registration form. I&#039;m using Apache 2.2 with PHP 5 (WAMP configuration). It seems good practice to use mysql_close($conn); instead of mysql_close(); - Refer to register.php (part 4)</description>
		<content:encoded><![CDATA[<p>Thanks for the very good example. How ever I don&#8217;t know if any one experienced a crash with the registration form. I&#8217;m using Apache 2.2 with PHP 5 (WAMP configuration). It seems good practice to use mysql_close($conn); instead of mysql_close(); &#8211; Refer to register.php (part 4)</p>
]]></content:encoded>
	</item>
</channel>
</rss>

<!-- Dynamic page generated in 0.198 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2010-03-11 15:17:29 -->
<!-- Compression = gzip -->