<?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>Spartan Java &#187; Security</title>
	<atom:link href="http://www.spartanjava.com/category/security/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.spartanjava.com</link>
	<description>Simple yet powerful Java programming</description>
	<lastBuildDate>Fri, 15 Jul 2011 17:45:12 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Protecting web requests</title>
		<link>http://www.spartanjava.com/2011/protecting-web-requests/</link>
		<comments>http://www.spartanjava.com/2011/protecting-web-requests/#comments</comments>
		<pubDate>Fri, 15 Jul 2011 17:45:12 +0000</pubDate>
		<dc:creator>ricardoz</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[Web related]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[dwr]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[jsp]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.spartanjava.com/?p=55</guid>
		<description><![CDATA[Afraid of malicious injections in your web app requests, heres a simple way to improve your application security. Push every request parameter through a filtering function before it&#8217;s feeded to your application code. Such a function can be as simple as: 1 2 3 4 5 6 7 8 9 10 private String cleanParameter&#40;String value&#41; [...]]]></description>
		<wfw:commentRss>http://www.spartanjava.com/2011/protecting-web-requests/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Asynchronous logging with log4j</title>
		<link>http://www.spartanjava.com/2009/asynchronous-logging-with-log4j/</link>
		<comments>http://www.spartanjava.com/2009/asynchronous-logging-with-log4j/#comments</comments>
		<pubDate>Wed, 25 Nov 2009 15:26:37 +0000</pubDate>
		<dc:creator>ricardoz</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[java logging]]></category>
		<category><![CDATA[log4j]]></category>
		<category><![CDATA[logging]]></category>
		<category><![CDATA[memory]]></category>

		<guid isPermaLink="false">http://www.spartanjava.com/?p=52</guid>
		<description><![CDATA[In case you are not doing it already, using asynchronous logging is generally a good idea. You don&#8217;t want your application to slow down if the server IO is a little behind flushing all that logging to the filesystem. By making it asynchronous your application can continue running without having to wait for the log [...]]]></description>
		<wfw:commentRss>http://www.spartanjava.com/2009/asynchronous-logging-with-log4j/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Obovweb source code &#8211; a Google Appengine sample</title>
		<link>http://www.spartanjava.com/2009/obovweb-source-code-a-google-appengine-sample/</link>
		<comments>http://www.spartanjava.com/2009/obovweb-source-code-a-google-appengine-sample/#comments</comments>
		<pubDate>Tue, 20 Oct 2009 16:50:43 +0000</pubDate>
		<dc:creator>ricardoz</dc:creator>
				<category><![CDATA[Security]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[Web related]]></category>
		<category><![CDATA[appengine]]></category>
		<category><![CDATA[dwr]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[hmac]]></category>
		<category><![CDATA[http]]></category>
		<category><![CDATA[implementation details]]></category>
		<category><![CDATA[jsp]]></category>
		<category><![CDATA[obov]]></category>
		<category><![CDATA[simple]]></category>
		<category><![CDATA[source code]]></category>

		<guid isPermaLink="false">http://www.spartanjava.com/?p=37</guid>
		<description><![CDATA[Someone asked me about the implementation details of the Google Appengine sample I published a few weeks ago (http://obovweb.appspot.com/). Well, you can get a hold of the source code here. There&#8217;s not much to tell, apart from the specific HMAC-SHA1 implementation (which you can check out in Obovs source code) it&#8217;s a very simple JSP/DWR [...]]]></description>
		<wfw:commentRss>http://www.spartanjava.com/2009/obovweb-source-code-a-google-appengine-sample/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Blocking multiple clicks real easy</title>
		<link>http://www.spartanjava.com/2009/blocking-multiple-clicks-real-easy/</link>
		<comments>http://www.spartanjava.com/2009/blocking-multiple-clicks-real-easy/#comments</comments>
		<pubDate>Mon, 10 Aug 2009 19:57:25 +0000</pubDate>
		<dc:creator>ricardoz</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Web related]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[multiple clicks]]></category>
		<category><![CDATA[simple]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.spartanjava.com/?p=31</guid>
		<description><![CDATA[I&#8217;ve faced this problem a few times before, but this time I decided to find a generic solution to it. I needed to prevent users from clicking action links in a web application multiple times and therefore triggering some server side action a lot of times when only one time was enough/needed. After looking around [...]]]></description>
		<wfw:commentRss>http://www.spartanjava.com/2009/blocking-multiple-clicks-real-easy/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Trying out Google Appengine &#8211; OTP generation app</title>
		<link>http://www.spartanjava.com/2009/trying-out-google-appengine-otp-generation-app/</link>
		<comments>http://www.spartanjava.com/2009/trying-out-google-appengine-otp-generation-app/#comments</comments>
		<pubDate>Wed, 15 Jul 2009 21:29:53 +0000</pubDate>
		<dc:creator>ricardoz</dc:creator>
				<category><![CDATA[Security]]></category>
		<category><![CDATA[Web related]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[appengine]]></category>
		<category><![CDATA[dwr]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[otp]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.spartanjava.com/?p=29</guid>
		<description><![CDATA[I decided to try out the new Java based version of Google Appengine. So i wrote a very simple web app that allows the user to generate one time passwords (OTP) using the HMAC-SHA1 algortihm (see OATH). You can check it out at http://obovweb.appspot.com. As the name suggests its based on my obov library. Anyway, [...]]]></description>
		<wfw:commentRss>http://www.spartanjava.com/2009/trying-out-google-appengine-otp-generation-app/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Using SSH or SFTP resources from a Java app</title>
		<link>http://www.spartanjava.com/2009/using-ssh-or-sftp-resources-from-a-java-app/</link>
		<comments>http://www.spartanjava.com/2009/using-ssh-or-sftp-resources-from-a-java-app/#comments</comments>
		<pubDate>Fri, 22 May 2009 12:13:49 +0000</pubDate>
		<dc:creator>ricardoz</dc:creator>
				<category><![CDATA[Security]]></category>
		<category><![CDATA[authentication]]></category>
		<category><![CDATA[client]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[server]]></category>
		<category><![CDATA[sftp]]></category>
		<category><![CDATA[ssh]]></category>

		<guid isPermaLink="false">http://www.spartanjava.com/?p=28</guid>
		<description><![CDATA[There are many commercial SSH client libraries for Java, but it was hard to find a good open source one. Finally I stumbled upon SSHTools and I have to say it works wonderfully and the API is clean and simple. For example the following code snippet connects to a SFTP server and downlads a file: [...]]]></description>
		<wfw:commentRss>http://www.spartanjava.com/2009/using-ssh-or-sftp-resources-from-a-java-app/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>PHP &amp; Java interoperable encryption</title>
		<link>http://www.spartanjava.com/2009/php-java-interoperable-encryption/</link>
		<comments>http://www.spartanjava.com/2009/php-java-interoperable-encryption/#comments</comments>
		<pubDate>Fri, 16 Jan 2009 15:53:21 +0000</pubDate>
		<dc:creator>ricardoz</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[encryption]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://www.spartanjava.com/?p=24</guid>
		<description><![CDATA[I recently faced the problem of encrypting something in PHP and decrypting it using Java, this proved to be a little more of a challenge than what it initially seemed like. In any case, the secret layed in the padding, Java uses by default a PCKS5 padding algorithm and PHP does not. Here is a [...]]]></description>
		<wfw:commentRss>http://www.spartanjava.com/2009/php-java-interoperable-encryption/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>obov v1.1.0 released</title>
		<link>http://www.spartanjava.com/2008/obov-v110-released/</link>
		<comments>http://www.spartanjava.com/2008/obov-v110-released/#comments</comments>
		<pubDate>Mon, 04 Aug 2008 18:27:14 +0000</pubDate>
		<dc:creator>ricardoz</dc:creator>
				<category><![CDATA[Security]]></category>
		<category><![CDATA[encryption]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[obov]]></category>
		<category><![CDATA[otp]]></category>
		<category><![CDATA[password]]></category>

		<guid isPermaLink="false">http://www.spartanjava.com/?p=17</guid>
		<description><![CDATA[A new version of obov is available for download. Some nice new features were added: Methods to generate passwords using the HMAC-SHA1 algorithm A handy utility method to generate secret keys (seeds) based on any given string Go get it!]]></description>
		<wfw:commentRss>http://www.spartanjava.com/2008/obov-v110-released/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>obov v1.0.0 released</title>
		<link>http://www.spartanjava.com/2008/obov-v100-released/</link>
		<comments>http://www.spartanjava.com/2008/obov-v100-released/#comments</comments>
		<pubDate>Fri, 27 Jun 2008 20:21:48 +0000</pubDate>
		<dc:creator>ricardoz</dc:creator>
				<category><![CDATA[Security]]></category>
		<category><![CDATA[encryption]]></category>
		<category><![CDATA[hmac]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[obov]]></category>
		<category><![CDATA[otp]]></category>
		<category><![CDATA[password]]></category>
		<category><![CDATA[sha1]]></category>
		<category><![CDATA[simple]]></category>
		<category><![CDATA[validation]]></category>

		<guid isPermaLink="false">http://www.spartanjava.com/?p=15</guid>
		<description><![CDATA[obov stands for OATH Based OTP validator. It’s a 100% pure Java library that provides simple to use methods to validate (and related utilities) one time passwords generated by OATH compliant devices. We have released the first version of obov, including support for HMAC-SHA1 event based OTP validation (RFC 4226). Visit obov&#8217;s homepage, download it, [...]]]></description>
		<wfw:commentRss>http://www.spartanjava.com/2008/obov-v100-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Authenticate users using i5/OS (AS400) credentials</title>
		<link>http://www.spartanjava.com/2008/authenticate-users-using-i5os-as400-credentials/</link>
		<comments>http://www.spartanjava.com/2008/authenticate-users-using-i5os-as400-credentials/#comments</comments>
		<pubDate>Mon, 12 May 2008 18:33:21 +0000</pubDate>
		<dc:creator>ricardoz</dc:creator>
				<category><![CDATA[Security]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[as/400]]></category>
		<category><![CDATA[authentication]]></category>
		<category><![CDATA[i5]]></category>
		<category><![CDATA[ibm]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[password]]></category>

		<guid isPermaLink="false">http://www.spartanjava.com/?p=10</guid>
		<description><![CDATA[The folks at IBM have a nice API to use i5/OS (AS400) stuff from Java code. Check it out at http://www-03.ibm.com/systems/i/software/toolbox/index.html. What I particularly find very useful and have used often is to validate user names and passwords with the AS400 authentication services. The following code validates a userName and password. 1 2 3 4 [...]]]></description>
		<wfw:commentRss>http://www.spartanjava.com/2008/authenticate-users-using-i5os-as400-credentials/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

