<?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: Why cripple the .NET RSA implementation?</title>
	<atom:link href="http://ox.no/posts/why-cripple-the-net-rsa-implementation/feed" rel="self" type="application/rss+xml" />
	<link>http://ox.no/posts/why-cripple-the-net-rsa-implementation</link>
	<description>Håvard Stranden&#039;s website</description>
	<lastBuildDate>Tue, 20 Jul 2010 18:33:16 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
	<item>
		<title>By: Abhinav</title>
		<link>http://ox.no/posts/why-cripple-the-net-rsa-implementation/comment-page-1#comment-634</link>
		<dc:creator>Abhinav</dc:creator>
		<pubDate>Tue, 15 Dec 2009 04:06:17 +0000</pubDate>
		<guid isPermaLink="false">http://ox.no/?p=19#comment-634</guid>
		<description>&lt;p&gt;I&#039;m facing the same problem. 
Did not want to implement and maintain RSA in my code, and could not find an opensource alternative.&lt;/p&gt;

&lt;p&gt;Lets see how Bouncy Castle works out!&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>I&#8217;m facing the same problem. 
Did not want to implement and maintain RSA in my code, and could not find an opensource alternative.</p>

<p>Lets see how Bouncy Castle works out!</p>]]></content:encoded>
	</item>
	<item>
		<title>By: innocent bystander</title>
		<link>http://ox.no/posts/why-cripple-the-net-rsa-implementation/comment-page-1#comment-600</link>
		<dc:creator>innocent bystander</dc:creator>
		<pubDate>Wed, 09 Sep 2009 14:30:19 +0000</pubDate>
		<guid isPermaLink="false">http://ox.no/?p=19#comment-600</guid>
		<description>&lt;p&gt;thank you for your post - I had exactly the same problem&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>thank you for your post &#8211; I had exactly the same problem</p>]]></content:encoded>
	</item>
	<item>
		<title>By: Antonio</title>
		<link>http://ox.no/posts/why-cripple-the-net-rsa-implementation/comment-page-1#comment-525</link>
		<dc:creator>Antonio</dc:creator>
		<pubDate>Mon, 06 Apr 2009 13:35:55 +0000</pubDate>
		<guid isPermaLink="false">http://ox.no/?p=19#comment-525</guid>
		<description>&lt;p&gt;Hi Håvard,&lt;/p&gt;

&lt;p&gt;I ended up implementing RSA myself the same day I posted my question to you, but thanx anyway:) The implementation was trivial, RSA is explained well on wikipedia and the algorithm amounts to a single few-letter formula. All that&#039;s needed besides the formula is an implementation of BigInteger(to represent the encrypted text and the key), which I found on codeproject(a very good one i might add, by a chap called Chew Keong TAN - he&#039;s Danish apparently:))&lt;/p&gt;

&lt;p&gt;Anyway, just wanted to say thanks for posting the &quot;RSA using BouncyCastle&quot; (now that I see the code it seems simple:)) even tho i didn&#039;t end up using it.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Hi Håvard,</p>

<p>I ended up implementing RSA myself the same day I posted my question to you, but thanx anyway:) The implementation was trivial, RSA is explained well on wikipedia and the algorithm amounts to a single few-letter formula. All that&#8217;s needed besides the formula is an implementation of BigInteger(to represent the encrypted text and the key), which I found on codeproject(a very good one i might add, by a chap called Chew Keong TAN &#8211; he&#8217;s Danish apparently:))</p>

<p>Anyway, just wanted to say thanks for posting the &#8220;RSA using BouncyCastle&#8221; (now that I see the code it seems simple:)) even tho i didn&#8217;t end up using it.</p>]]></content:encoded>
	</item>
	<item>
		<title>By: Håvard</title>
		<link>http://ox.no/posts/why-cripple-the-net-rsa-implementation/comment-page-1#comment-515</link>
		<dc:creator>Håvard</dc:creator>
		<pubDate>Thu, 19 Mar 2009 06:46:46 +0000</pubDate>
		<guid isPermaLink="false">http://ox.no/?p=19#comment-515</guid>
		<description>&lt;p&gt;Hi Antonio. I wrote a quick post on using BouncyCastle for RSA. Take a look at &lt;a href=&quot;http://ox.no/posts/rsa-using-bouncycastle&quot; rel=&quot;nofollow&quot;&gt;RSA using BouncyCastle&lt;/a&gt;. Hope it helps!&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Hi Antonio. I wrote a quick post on using BouncyCastle for RSA. Take a look at <a href="http://ox.no/posts/rsa-using-bouncycastle" rel="nofollow">RSA using BouncyCastle</a>. Hope it helps!</p>]]></content:encoded>
	</item>
	<item>
		<title>By: Antonio</title>
		<link>http://ox.no/posts/why-cripple-the-net-rsa-implementation/comment-page-1#comment-512</link>
		<dc:creator>Antonio</dc:creator>
		<pubDate>Tue, 17 Mar 2009 10:26:47 +0000</pubDate>
		<guid isPermaLink="false">http://ox.no/?p=19#comment-512</guid>
		<description>&lt;p&gt;Hi Håvard,&lt;/p&gt;

&lt;p&gt;I very much agree, I&#039;m a bit frustrated by this aspect of the .net implementation myself. I&#039;m working on a project that deals with ensuring the authenticity of information on ATM smart cards, which have sensitive data on them encrypted with a CA private key to ensure authenticity, so i need to be able to decrypt with the public key. Sign/verify just isn&#039;t what I need, since I&#039;m not the one putting the data on the cards.&lt;/p&gt;

&lt;p&gt;I&#039;ve had a look at bouncycastle, but i found the library to be a bit hard to work with, due to the abundance of classes and the lack of documenation.&lt;/p&gt;

&lt;p&gt;Could you pls provide a few lines of example code for decryption with a public key using bublycastle? TIA!&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Hi Håvard,</p>

<p>I very much agree, I&#8217;m a bit frustrated by this aspect of the .net implementation myself. I&#8217;m working on a project that deals with ensuring the authenticity of information on ATM smart cards, which have sensitive data on them encrypted with a CA private key to ensure authenticity, so i need to be able to decrypt with the public key. Sign/verify just isn&#8217;t what I need, since I&#8217;m not the one putting the data on the cards.</p>

<p>I&#8217;ve had a look at bouncycastle, but i found the library to be a bit hard to work with, due to the abundance of classes and the lack of documenation.</p>

<p>Could you pls provide a few lines of example code for decryption with a public key using bublycastle? TIA!</p>]]></content:encoded>
	</item>
	<item>
		<title>By: Håvard</title>
		<link>http://ox.no/posts/why-cripple-the-net-rsa-implementation/comment-page-1#comment-506</link>
		<dc:creator>Håvard</dc:creator>
		<pubDate>Wed, 07 Jan 2009 21:42:17 +0000</pubDate>
		<guid isPermaLink="false">http://ox.no/?p=19#comment-506</guid>
		<description>&lt;p&gt;Hi Lars and Jingsong,&lt;/p&gt;

&lt;p&gt;Your arguments and points are indeed correct. My point is that only allowing hash signing with the private key is an artificial limitation, since the real limitation lies in the time required to encrypt a relatively large amount of data using the private key. &lt;/p&gt;

&lt;p&gt;It is my opinion that the API should not protect you, or limit you, if you will, from doing something that is valid to do, although the usual approach is different. I apologize if my post implied something else than this.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Hi Lars and Jingsong,</p>

<p>Your arguments and points are indeed correct. My point is that only allowing hash signing with the private key is an artificial limitation, since the real limitation lies in the time required to encrypt a relatively large amount of data using the private key. </p>

<p>It is my opinion that the API should not protect you, or limit you, if you will, from doing something that is valid to do, although the usual approach is different. I apologize if my post implied something else than this.</p>]]></content:encoded>
	</item>
	<item>
		<title>By: Lars Wilhelmsen</title>
		<link>http://ox.no/posts/why-cripple-the-net-rsa-implementation/comment-page-1#comment-505</link>
		<dc:creator>Lars Wilhelmsen</dc:creator>
		<pubDate>Wed, 07 Jan 2009 20:35:03 +0000</pubDate>
		<guid isPermaLink="false">http://ox.no/?p=19#comment-505</guid>
		<description>&lt;p&gt;Hi,&lt;/p&gt;

&lt;p&gt;I believe Jingsong&#039;s argument is correct. Asymmetric chiphers is ideal for solving the key sharing problem - but is not suitable for encryption of large amounts of data since they are quite CPU-intensive in computation.&lt;/p&gt;

&lt;p&gt;The way it works is that a shared secret - a key for the symmetric chipher - is encrypted with the asymmetric chipher - in this case RSA - and sent to the recipient. The recipient decrypts the shared secrets and uses it to decrypt the actual data.&lt;/p&gt;

&lt;p&gt;To validate authenticity a keyed or unkeyed hashing algorithm is applied; SHA-* is the most commonly used unkeyed algorithms used nowadays - and this hash is signed. .SignData(...) does this for you in the .NET crypto API.&lt;/p&gt;

&lt;p&gt;--larsw&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Hi,</p>

<p>I believe Jingsong&#8217;s argument is correct. Asymmetric chiphers is ideal for solving the key sharing problem &#8211; but is not suitable for encryption of large amounts of data since they are quite CPU-intensive in computation.</p>

<p>The way it works is that a shared secret &#8211; a key for the symmetric chipher &#8211; is encrypted with the asymmetric chipher &#8211; in this case RSA &#8211; and sent to the recipient. The recipient decrypts the shared secrets and uses it to decrypt the actual data.</p>

<p>To validate authenticity a keyed or unkeyed hashing algorithm is applied; SHA-* is the most commonly used unkeyed algorithms used nowadays &#8211; and this hash is signed. .SignData(&#8230;) does this for you in the .NET crypto API.</p>

<p>&#8211;larsw</p>]]></content:encoded>
	</item>
	<item>
		<title>By: Jingsong zhang</title>
		<link>http://ox.no/posts/why-cripple-the-net-rsa-implementation/comment-page-1#comment-500</link>
		<dc:creator>Jingsong zhang</dc:creator>
		<pubDate>Sat, 20 Dec 2008 02:23:37 +0000</pubDate>
		<guid isPermaLink="false">http://ox.no/?p=19#comment-500</guid>
		<description>&lt;p&gt;I think because RSA private key encryption for a longer string is very slow.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>I think because RSA private key encryption for a longer string is very slow.</p>]]></content:encoded>
	</item>
</channel>
</rss>
