<?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: The Kember Identity</title>
	<atom:link href="http://blog.macaoidh.name/2009/05/02/the-kember-identity/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.macaoidh.name/2009/05/02/the-kember-identity/</link>
	<description>PHP, Music, Linux</description>
	<lastBuildDate>Wed, 30 Jun 2010 18:01:37 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
	<item>
		<title>By: Steven</title>
		<link>http://blog.macaoidh.name/2009/05/02/the-kember-identity/comment-page-1/#comment-414</link>
		<dc:creator>Steven</dc:creator>
		<pubDate>Mon, 15 Jun 2009 03:34:46 +0000</pubDate>
		<guid isPermaLink="false">http://blog.macaoidh.name/?p=205#comment-414</guid>
		<description>Also FireFox froze a few times while running it. The best thing to do is just leave it to do it’s job and don’t do anything else while it is working!

ha ha!! thats why you dont use a web language for number crunching and then try to view it in your browser</description>
		<content:encoded><![CDATA[<p>Also FireFox froze a few times while running it. The best thing to do is just leave it to do it’s job and don’t do anything else while it is working!</p>
<p>ha ha!! thats why you dont use a web language for number crunching and then try to view it in your browser</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dominic</title>
		<link>http://blog.macaoidh.name/2009/05/02/the-kember-identity/comment-page-1/#comment-332</link>
		<dc:creator>Dominic</dc:creator>
		<pubDate>Mon, 11 May 2009 07:00:43 +0000</pubDate>
		<guid isPermaLink="false">http://blog.macaoidh.name/?p=205#comment-332</guid>
		<description>&lt;blockquote cite=&quot;comment-314&quot;&gt;
The KID may exist, the probability is very high, but it’s not a sureity.
&lt;/blockquote&gt;

Actually, the probability that the KID exists, presuming MD5 is randomly distributed over its range (it should be) is 1 - ((2 ^ 128 - 1) / (2 ^ 128)) ^ (2 ^ 128). Which is 0.63. Not all that high.</description>
		<content:encoded><![CDATA[<blockquote cite="comment-314"><p>
The KID may exist, the probability is very high, but it’s not a sureity.
</p></blockquote>
<p>Actually, the probability that the KID exists, presuming MD5 is randomly distributed over its range (it should be) is 1 &#8211; ((2 ^ 128 &#8211; 1) / (2 ^ 128)) ^ (2 ^ 128). Which is 0.63. Not all that high.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Conor</title>
		<link>http://blog.macaoidh.name/2009/05/02/the-kember-identity/comment-page-1/#comment-315</link>
		<dc:creator>Conor</dc:creator>
		<pubDate>Tue, 05 May 2009 17:31:51 +0000</pubDate>
		<guid isPermaLink="false">http://blog.macaoidh.name/?p=205#comment-315</guid>
		<description>I suppose saying the KID exists is like saying God exists. People think that it exists but no one as yet has been able to prove it :-)

One idea a friend of mine had was to write it in AJAX and PHP. Using those techniques he would be able to spread the load onto multiple computers.

But it would still take ages!</description>
		<content:encoded><![CDATA[<p>I suppose saying the KID exists is like saying God exists. People think that it exists but no one as yet has been able to prove it <img src='http://blog.macaoidh.name/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>One idea a friend of mine had was to write it in AJAX and PHP. Using those techniques he would be able to spread the load onto multiple computers.</p>
<p>But it would still take ages!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Colm MacCarthaigh</title>
		<link>http://blog.macaoidh.name/2009/05/02/the-kember-identity/comment-page-1/#comment-314</link>
		<dc:creator>Colm MacCarthaigh</dc:creator>
		<pubDate>Tue, 05 May 2009 17:22:06 +0000</pubDate>
		<guid isPermaLink="false">http://blog.macaoidh.name/?p=205#comment-314</guid>
		<description>Ok, firstly MD5 is not an encryption algorithim, well - it&#039;s not a cipher - it&#039;s a hash. Even if the full list of MD5s is created (and I wonder where they would store such a list, as there are fewer particles in the universe) it wouldn&#039;t render MD5 totally useless - it would still hash things just fine.

Secondly, MD5 has /already/ been broken, there are published collisions. SHA-256 is now, and there is an contest under way to replace it, because the general class of hash functions is weak.

Thirdly, although there are 2^128 hashes, there is an infinite amount of inputs that could generate each and every one of those hashes. There&#039;s no reason at all why the Kember identity would need to be discovered as part of a process to identify an input for each hash.

Lastly - supercomputers aren&#039;t very good at calculating MD5&#039;s. It&#039;s not a FLOP heavy process, and no coordination is neccessary. It&#039;s better to distribute the load SETI style, or put the task on a cloud.

The KID may exist, the probability is very high, but it&#039;s not a sureity.</description>
		<content:encoded><![CDATA[<p>Ok, firstly MD5 is not an encryption algorithim, well &#8211; it&#8217;s not a cipher &#8211; it&#8217;s a hash. Even if the full list of MD5s is created (and I wonder where they would store such a list, as there are fewer particles in the universe) it wouldn&#8217;t render MD5 totally useless &#8211; it would still hash things just fine.</p>
<p>Secondly, MD5 has /already/ been broken, there are published collisions. SHA-256 is now, and there is an contest under way to replace it, because the general class of hash functions is weak.</p>
<p>Thirdly, although there are 2^128 hashes, there is an infinite amount of inputs that could generate each and every one of those hashes. There&#8217;s no reason at all why the Kember identity would need to be discovered as part of a process to identify an input for each hash.</p>
<p>Lastly &#8211; supercomputers aren&#8217;t very good at calculating MD5&#8242;s. It&#8217;s not a FLOP heavy process, and no coordination is neccessary. It&#8217;s better to distribute the load SETI style, or put the task on a cloud.</p>
<p>The KID may exist, the probability is very high, but it&#8217;s not a sureity.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Conor</title>
		<link>http://blog.macaoidh.name/2009/05/02/the-kember-identity/comment-page-1/#comment-313</link>
		<dc:creator>Conor</dc:creator>
		<pubDate>Tue, 05 May 2009 17:11:18 +0000</pubDate>
		<guid isPermaLink="false">http://blog.macaoidh.name/?p=205#comment-313</guid>
		<description>That&#039;s a long time. I will be dead before that happens.

But there is an upside. I have been informed that an organisation, not to be named, is attempting to crack the md5 encryption method by creating an archive of all possible md5 values. This is an enormous task. I think that it is a bad idea because when it is completed there will no longer be any use for md5 encryption. sha1 is the future! :-)

Anyway my eventual point is by undergoing this process they will recover the Kember Identity, but it might take a while until they get to the 32nd character since they have only done 8 characters in the last few years. They also have a few of the worlds most powerfull super computers on their side.

SO i&#039;m going to sit back and wait for those guys. But I am sure that the KID does exist! :L</description>
		<content:encoded><![CDATA[<p>That&#8217;s a long time. I will be dead before that happens.</p>
<p>But there is an upside. I have been informed that an organisation, not to be named, is attempting to crack the md5 encryption method by creating an archive of all possible md5 values. This is an enormous task. I think that it is a bad idea because when it is completed there will no longer be any use for md5 encryption. sha1 is the future! <img src='http://blog.macaoidh.name/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Anyway my eventual point is by undergoing this process they will recover the Kember Identity, but it might take a while until they get to the 32nd character since they have only done 8 characters in the last few years. They also have a few of the worlds most powerfull super computers on their side.</p>
<p>SO i&#8217;m going to sit back and wait for those guys. But I am sure that the KID does exist! :L</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Colm MacCarthaigh</title>
		<link>http://blog.macaoidh.name/2009/05/02/the-kember-identity/comment-page-1/#comment-312</link>
		<dc:creator>Colm MacCarthaigh</dc:creator>
		<pubDate>Tue, 05 May 2009 12:54:33 +0000</pubDate>
		<guid isPermaLink="false">http://blog.macaoidh.name/?p=205#comment-312</guid>
		<description>it&#039;s 32 hex characters, each of which represents a nibble, the search space is only 2^128. Hashes are designed to be enormously sensitive to input. But even if this is perfect, then every possible string has a probability of 1/^2^128 of being a particular hash (in this case itself). The odds are therefore pretty good, with the probability of there being at least one match (1 - 1/2^128). You become more likely than not to have found under half-way through the set, so the true search space is 
smaller again.

You can get a rough idea of how quickly your hardware can perform MD5s with the &quot;openssl speed&quot; command:


colmmacc@minerva (~) $ openssl speed md5
Doing md5 for 3s on 16 size blocks: 4567334 md5&#039;s in 3.00s
Doing md5 for 3s on 64 size blocks: 3846399 md5&#039;s in 3.00s
Doing md5 for 3s on 256 size blocks: 2627654 md5&#039;s in 2.98s
Doing md5 for 3s on 1024 size blocks: 1152486 md5&#039;s in 3.00s
Doing md5 for 3s on 8192 size blocks: 182798 md5&#039;s in 3.00s
OpenSSL 0.9.8g 19 Oct 2007
built on: Thu Mar 26 21:30:51 UTC 2009
options:bn(64,64) md2(int) rc4(ptr,char) des(idx,cisc,16,int) aes(partial) blowfish(ptr2) 
compiler: gcc -fPIC -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DL_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall -DMD32_REG_T=int -DMD5_ASM
available timing options: TIMES TIMEB HZ=100 [sysconf value]
timing function used: times
The &#039;numbers&#039; are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
md5              24359.11k    82056.51k   225731.35k   393381.89k   499160.41k


If we say 4 million a second. It will probably take about 1,348,785,383,850,751,773,621,316 CPU years to find the answer.</description>
		<content:encoded><![CDATA[<p>it&#8217;s 32 hex characters, each of which represents a nibble, the search space is only 2^128. Hashes are designed to be enormously sensitive to input. But even if this is perfect, then every possible string has a probability of 1/^2^128 of being a particular hash (in this case itself). The odds are therefore pretty good, with the probability of there being at least one match (1 &#8211; 1/2^128). You become more likely than not to have found under half-way through the set, so the true search space is<br />
smaller again.</p>
<p>You can get a rough idea of how quickly your hardware can perform MD5s with the &#8220;openssl speed&#8221; command:</p>
<p>colmmacc@minerva (~) $ openssl speed md5<br />
Doing md5 for 3s on 16 size blocks: 4567334 md5&#8242;s in 3.00s<br />
Doing md5 for 3s on 64 size blocks: 3846399 md5&#8242;s in 3.00s<br />
Doing md5 for 3s on 256 size blocks: 2627654 md5&#8242;s in 2.98s<br />
Doing md5 for 3s on 1024 size blocks: 1152486 md5&#8242;s in 3.00s<br />
Doing md5 for 3s on 8192 size blocks: 182798 md5&#8242;s in 3.00s<br />
OpenSSL 0.9.8g 19 Oct 2007<br />
built on: Thu Mar 26 21:30:51 UTC 2009<br />
options:bn(64,64) md2(int) rc4(ptr,char) des(idx,cisc,16,int) aes(partial) blowfish(ptr2)<br />
compiler: gcc -fPIC -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DL_ENDIAN -DTERMIO -O3 -Wa,&#8211;noexecstack -g -Wall -DMD32_REG_T=int -DMD5_ASM<br />
available timing options: TIMES TIMEB HZ=100 [sysconf value]<br />
timing function used: times<br />
The &#8216;numbers&#8217; are in 1000s of bytes per second processed.<br />
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes<br />
md5              24359.11k    82056.51k   225731.35k   393381.89k   499160.41k</p>
<p>If we say 4 million a second. It will probably take about 1,348,785,383,850,751,773,621,316 CPU years to find the answer.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: david</title>
		<link>http://blog.macaoidh.name/2009/05/02/the-kember-identity/comment-page-1/#comment-309</link>
		<dc:creator>david</dc:creator>
		<pubDate>Sun, 03 May 2009 08:38:59 +0000</pubDate>
		<guid isPermaLink="false">http://blog.macaoidh.name/?p=205#comment-309</guid>
		<description>Hi Conor,

32 characters = 256 bits

that means to do a brute force search like you&#039;re doing means doing 2^256 searches

try measuring the time it takes to do one search and then multiply by 2^256

i think you will find that it is a huge number and the universe will have ended by the time you have finished your search

approaches to speeding up the search are using C or even assembler to code the search 

but the best approach is to choose better candidates likely to return an identity

this is likely to require extensive mathematic analysis

-D.</description>
		<content:encoded><![CDATA[<p>Hi Conor,</p>
<p>32 characters = 256 bits</p>
<p>that means to do a brute force search like you&#8217;re doing means doing 2^256 searches</p>
<p>try measuring the time it takes to do one search and then multiply by 2^256</p>
<p>i think you will find that it is a huge number and the universe will have ended by the time you have finished your search</p>
<p>approaches to speeding up the search are using C or even assembler to code the search </p>
<p>but the best approach is to choose better candidates likely to return an identity</p>
<p>this is likely to require extensive mathematic analysis</p>
<p>-D.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
