<?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: Valgrind and OpenSSL</title>
	<atom:link href="http://etbe.coker.com.au/2009/06/28/valgrind-and-openssl/feed/" rel="self" type="application/rss+xml" />
	<link>http://etbe.coker.com.au/2009/06/28/valgrind-and-openssl/</link>
	<description>Linux, politics, and other interesting things</description>
	<lastBuildDate>Thu, 09 Feb 2012 01:09:24 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: etbe</title>
		<link>http://etbe.coker.com.au/2009/06/28/valgrind-and-openssl/comment-page-1/#comment-19840</link>
		<dc:creator>etbe</dc:creator>
		<pubDate>Sat, 04 Jul 2009 23:50:27 +0000</pubDate>
		<guid isPermaLink="false">http://etbe.coker.com.au/?p=1223#comment-19840</guid>
		<description>gebi: How do they compare to via padlock and other cheap hardware that is designed for such things?

Also I expect that if someone wanted to port SSL code to a GPU then performance would be pretty good.  The FPGA devices in high-end SGI machines should also do well.  Of course that would take a moderate amount of work, with hardware being cheap nowadays it&#039;s often more cost effective to just buy bigger machines.

But if you want to rent some servers in a hosting center, or run some virtual machines on EC2, Linode, Slicehost, etc then you get none of that.  It&#039;s the AMD64 ISA and nothing else.</description>
		<content:encoded><![CDATA[<p>gebi: How do they compare to via padlock and other cheap hardware that is designed for such things?</p>
<p>Also I expect that if someone wanted to port SSL code to a GPU then performance would be pretty good.  The FPGA devices in high-end SGI machines should also do well.  Of course that would take a moderate amount of work, with hardware being cheap nowadays it&#8217;s often more cost effective to just buy bigger machines.</p>
<p>But if you want to rent some servers in a hosting center, or run some virtual machines on EC2, Linode, Slicehost, etc then you get none of that.  It&#8217;s the AMD64 ISA and nothing else.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: gebi</title>
		<link>http://etbe.coker.com.au/2009/06/28/valgrind-and-openssl/comment-page-1/#comment-19838</link>
		<dc:creator>gebi</dc:creator>
		<pubDate>Sat, 04 Jul 2009 13:22:45 +0000</pubDate>
		<guid isPermaLink="false">http://etbe.coker.com.au/?p=1223#comment-19838</guid>
		<description>&gt; What do we have to do on i386 and AMD64 to enable such atomic operations? I doubt that anyone will be doing new deployments of intensive multi-threaded SSL programs on any other architecture nowadays.

hm?

The other way arround. There are way better plattforms for crypto out there.
eg. sparc T2, tile64[0], mips octeon. ...
Not to forget the big ppc and itanium systems.

only recently the x86 plattform became initial support for usable crypto (in terms of performance) with intels nehalem plattform which has hardware aes support[1].

[0]: http://www.tilera.com/pdf/ProductBrief_TILEPro64_Web_v2.pdf
[1]: http://softwarecommunity.intel.com/isn/downloads/intelavx/AES-Instructions-Set_WP.pdf</description>
		<content:encoded><![CDATA[<p>&gt; What do we have to do on i386 and AMD64 to enable such atomic operations? I doubt that anyone will be doing new deployments of intensive multi-threaded SSL programs on any other architecture nowadays.</p>
<p>hm?</p>
<p>The other way arround. There are way better plattforms for crypto out there.<br />
eg. sparc T2, tile64[0], mips octeon. &#8230;<br />
Not to forget the big ppc and itanium systems.</p>
<p>only recently the x86 plattform became initial support for usable crypto (in terms of performance) with intels nehalem plattform which has hardware aes support[1].</p>
<p>[0]: <a href="http://www.tilera.com/pdf/ProductBrief_TILEPro64_Web_v2.pdf" rel="nofollow">http://www.tilera.com/pdf/ProductBrief_TILEPro64_Web_v2.pdf</a><br />
[1]: <a href="http://softwarecommunity.intel.com/isn/downloads/intelavx/AES-Instructions-Set_WP.pdf" rel="nofollow">http://softwarecommunity.intel.com/isn/downloads/intelavx/AES-Instructions-Set_WP.pdf</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Esben Mose Hansen</title>
		<link>http://etbe.coker.com.au/2009/06/28/valgrind-and-openssl/comment-page-1/#comment-19782</link>
		<dc:creator>Esben Mose Hansen</dc:creator>
		<pubDate>Mon, 29 Jun 2009 07:54:55 +0000</pubDate>
		<guid isPermaLink="false">http://etbe.coker.com.au/?p=1223#comment-19782</guid>
		<description>The easiest way to get atomic operations is to borrow working code from an existing project, isn&#039;t it?

E.g. http://www.boost.org/doc/libs/1_39_0/boost/interprocess/detail/atomic.hpp</description>
		<content:encoded><![CDATA[<p>The easiest way to get atomic operations is to borrow working code from an existing project, isn&#8217;t it?</p>
<p>E.g. <a href="http://www.boost.org/doc/libs/1_39_0/boost/interprocess/detail/atomic.hpp" rel="nofollow">http://www.boost.org/doc/libs/1_39_0/boost/interprocess/detail/atomic.hpp</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: etbe</title>
		<link>http://etbe.coker.com.au/2009/06/28/valgrind-and-openssl/comment-page-1/#comment-19776</link>
		<dc:creator>etbe</dc:creator>
		<pubDate>Mon, 29 Jun 2009 01:14:10 +0000</pubDate>
		<guid isPermaLink="false">http://etbe.coker.com.au/?p=1223#comment-19776</guid>
		<description>Marco and nine: I was thinking of exactly that when I wrote &quot;I know that there are security risks in terms of changing code&quot;.  I deliberately made no direct mention to the past problem in question because I want to keep discussion focussed on how to go forwards not on mistakes that were made in the past.

glandium: What do we have to do on i386 and AMD64 to enable such atomic operations?  I doubt that anyone will be doing new deployments of intensive multi-threaded SSL programs on any other architecture nowadays.

imajica: The fact that there is a check for NULL suggests that it is possible.

I agree that we need to allow support for other algorithms, but I&#039;m sure you agree that we can support them without making our code non-thread-safe!  I resisted the obvious temptation to suggest that defaults be hard-coded - about half the bugs I reported could have been resolved by writing static configuration with no option to change certain parameters.

If you want to meet up some time then suggest a time and a place.  You know roughly where I live so I&#039;m sure you can find a bar or restaurant that is convenient for both of us.</description>
		<content:encoded><![CDATA[<p>Marco and nine: I was thinking of exactly that when I wrote &#8220;I know that there are security risks in terms of changing code&#8221;.  I deliberately made no direct mention to the past problem in question because I want to keep discussion focussed on how to go forwards not on mistakes that were made in the past.</p>
<p>glandium: What do we have to do on i386 and AMD64 to enable such atomic operations?  I doubt that anyone will be doing new deployments of intensive multi-threaded SSL programs on any other architecture nowadays.</p>
<p>imajica: The fact that there is a check for NULL suggests that it is possible.</p>
<p>I agree that we need to allow support for other algorithms, but I&#8217;m sure you agree that we can support them without making our code non-thread-safe!  I resisted the obvious temptation to suggest that defaults be hard-coded &#8211; about half the bugs I reported could have been resolved by writing static configuration with no option to change certain parameters.</p>
<p>If you want to meet up some time then suggest a time and a place.  You know roughly where I live so I&#8217;m sure you can find a bar or restaurant that is convenient for both of us.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: imajica</title>
		<link>http://etbe.coker.com.au/2009/06/28/valgrind-and-openssl/comment-page-1/#comment-19771</link>
		<dc:creator>imajica</dc:creator>
		<pubDate>Sun, 28 Jun 2009 18:52:50 +0000</pubDate>
		<guid isPermaLink="false">http://etbe.coker.com.au/?p=1223#comment-19771</guid>
		<description>Howdy Russ, I need you to consider the following carefully.
Can you see a scenario where default_RSA_meth should be null?
From open-ssl(0.9.8k):

#ifdef RSA_NULL
                default_RSA_meth=RSA_null_method();
#else
#if 0 /* was: #ifdef RSAref */
                default_RSA_meth=RSA_PKCS1_RSAref();
#else
                default_RSA_meth=RSA_PKCS1_SSLeay();

My point is there are other exchange modes we want openssl to support ... history shows us that locking out options is what gets projects into trouble. 
I also feel the need to say the this;
Crypto hackers MUST NOT *MUST NOT* allow the &quot;just make it work mentality&quot; to survive. Further, we must allow and encourage support for the adoption of new PKI within existing systems ... I know everyone loves RSA I know this point of view makes me unpopular, so let me just say that public RSA itself is technology from 1978 (created off work that was at best initiated in 1973) the updates to the algorithm have been largely based on &quot;boundary limit&quot; raising ... the warning is that D/H work shows us that with this kind of hashing the larger the boundary of the data set the higher the probability of collision. These are very real problems now, and while yes there is a lot of work being done to create better exchange systems we desperately need as many options on the table as we can comfortably and rationally support. In this case I think our debian comrades have a larger decision to address. To move away from a &quot;just make it practical&quot; approach (which works very well in other software) to a &quot;trust the design goals of the upstream providers&quot; in regards to complex crypto wrappers.

Let&#039;s discuss it over a jar or two soon.

ALC</description>
		<content:encoded><![CDATA[<p>Howdy Russ, I need you to consider the following carefully.<br />
Can you see a scenario where default_RSA_meth should be null?<br />
From open-ssl(0.9.8k):</p>
<p>#ifdef RSA_NULL<br />
                default_RSA_meth=RSA_null_method();<br />
#else<br />
#if 0 /* was: #ifdef RSAref */<br />
                default_RSA_meth=RSA_PKCS1_RSAref();<br />
#else<br />
                default_RSA_meth=RSA_PKCS1_SSLeay();</p>
<p>My point is there are other exchange modes we want openssl to support &#8230; history shows us that locking out options is what gets projects into trouble.<br />
I also feel the need to say the this;<br />
Crypto hackers MUST NOT *MUST NOT* allow the &#8220;just make it work mentality&#8221; to survive. Further, we must allow and encourage support for the adoption of new PKI within existing systems &#8230; I know everyone loves RSA I know this point of view makes me unpopular, so let me just say that public RSA itself is technology from 1978 (created off work that was at best initiated in 1973) the updates to the algorithm have been largely based on &#8220;boundary limit&#8221; raising &#8230; the warning is that D/H work shows us that with this kind of hashing the larger the boundary of the data set the higher the probability of collision. These are very real problems now, and while yes there is a lot of work being done to create better exchange systems we desperately need as many options on the table as we can comfortably and rationally support. In this case I think our debian comrades have a larger decision to address. To move away from a &#8220;just make it practical&#8221; approach (which works very well in other software) to a &#8220;trust the design goals of the upstream providers&#8221; in regards to complex crypto wrappers.</p>
<p>Let&#8217;s discuss it over a jar or two soon.</p>
<p>ALC</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: nine</title>
		<link>http://etbe.coker.com.au/2009/06/28/valgrind-and-openssl/comment-page-1/#comment-19765</link>
		<dc:creator>nine</dc:creator>
		<pubDate>Sun, 28 Jun 2009 12:59:54 +0000</pubDate>
		<guid isPermaLink="false">http://etbe.coker.com.au/?p=1223#comment-19765</guid>
		<description>hmm, debian, openssl, valgrind.... Be careful what you patch!</description>
		<content:encoded><![CDATA[<p>hmm, debian, openssl, valgrind&#8230;. Be careful what you patch!</p>
]]></content:encoded>
	</item>
</channel>
</rss>

