<?xml version="1.0" encoding="utf-8"?><!-- generator="wordpress/2.2.2" -->
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
	<title>Comments on: Code Breaking.</title>
	<link>http://www.mikedidonato.com/2008/06/18/code-breaking/</link>
	<description>It's hard being a superstar</description>
	<pubDate>Mon, 01 Dec 2008 22:52:00 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.2.2</generator>

	<item>
		<title>By: mike d.</title>
		<link>http://www.mikedidonato.com/2008/06/18/code-breaking/#comment-79014</link>
		<author>mike d.</author>
		<pubDate>Fri, 20 Jun 2008 15:07:00 +0000</pubDate>
		<guid>http://www.mikedidonato.com/2008/06/18/code-breaking/#comment-79014</guid>
		<description>Ryan Schenk FTW</description>
		<content:encoded><![CDATA[<p>Ryan Schenk FTW</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ryan Schenk</title>
		<link>http://www.mikedidonato.com/2008/06/18/code-breaking/#comment-78994</link>
		<author>Ryan Schenk</author>
		<pubDate>Thu, 19 Jun 2008 15:15:00 +0000</pubDate>
		<guid>http://www.mikedidonato.com/2008/06/18/code-breaking/#comment-78994</guid>
		<description>I made it in Ruby; it will also guestimate the cypher shift based on the assumption that the most occurrant letter is 'e'

class String 
  def what_does_it_say?
    decipher(find_shift)
  end
  def most_occurant_letter
    letter_occurances = Hash[*('A'..'Z').collect{&#124;l&#124; [l, 0]}.flatten]
    self.upcase.chars.each{&#124;c&#124; letter_occurances[c] = letter_occurances[c] + 1 if letter_occurances.has_key?(c) }
    letter_occurances.sort_by{&#124;pair&#124; pair.last}.last.first
  end
  def find_shift
    most_occurant_letter[0] - ?E
  end
  def decipher(shift)   # Character shift yanked from http://agorf.gr/code/rcipher.rb.txt
    upcase.chars.collect{&#124;c&#124; c =~ /[A-Z]/ ? ((c[0] % ?A - shift) % 26 + ?a).chr : c }.join
  end
end

cypher = 'FDYDQ,WKHDUFKHU’VFKLOG;FXULRXP,EULJKW–BRXUTXLFHJLOGSLYRWVDQGOHDSVOLNHDGDOFHU. WKHNHBWRSUHVHUYLQJFXULRXPLWB’VOLJKWLVWRORYHWKHTXHVWLRQDVPZFKDVWKHDQVZHU'

puts cypher.what_does_it_say?</description>
		<content:encoded><![CDATA[<p>I made it in Ruby; it will also guestimate the cypher shift based on the assumption that the most occurrant letter is &#8216;e&#8217;</p>
<p>class String<br />
  def what_does_it_say?<br />
    decipher(find_shift)<br />
  end<br />
  def most_occurant_letter<br />
    letter_occurances = Hash[*(&#8217;A&#8217;..&#8217;Z').collect{|l| [l, 0]}.flatten]<br />
    self.upcase.chars.each{|c| letter_occurances[c] = letter_occurances[c] + 1 if letter_occurances.has_key?(c) }<br />
    letter_occurances.sort_by{|pair| pair.last}.last.first<br />
  end<br />
  def find_shift<br />
    most_occurant_letter[0] - ?E<br />
  end<br />
  def decipher(shift)   # Character shift yanked from <a href="http://agorf.gr/code/rcipher.rb.txt" rel="nofollow">http://agorf.gr/code/rcipher.rb.txt</a><br />
    upcase.chars.collect{|c| c =~ /[A-Z]/ ? ((c[0] % ?A - shift) % 26 + ?a).chr : c }.join<br />
  end<br />
end</p>
<p>cypher = &#8216;FDYDQ,WKHDUFKHU’VFKLOG;FXULRXP,EULJKW–BRXUTXLFHJLOGSLYRWVDQGOHDSVOLNHDGDOFHU. WKHNHBWRSUHVHUYLQJFXULRXPLWB’VOLJKWLVWRORYHWKHTXHVWLRQDVPZFKDVWKHDQVZHU&#8217;</p>
<p>puts cypher.what_does_it_say?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: mike d.</title>
		<link>http://www.mikedidonato.com/2008/06/18/code-breaking/#comment-78979</link>
		<author>mike d.</author>
		<pubDate>Wed, 18 Jun 2008 22:47:09 +0000</pubDate>
		<guid>http://www.mikedidonato.com/2008/06/18/code-breaking/#comment-78979</guid>
		<description>Yes, that did exist.  no one ever solved it.  Although to be fair, it was very difficult.  I will not reveal the answer as I know of a few people who are still working on it.   If you're interested in trying again, you can find it here:

http://www.mikedidonato.com/2008/04/23/code-2/

This excel program could help you solve one of the steps, but the algorithm is more complicated than a simple find and replace, so I wouldn't recommend plugging it in and giving it a shot.

That code is very hard.</description>
		<content:encoded><![CDATA[<p>Yes, that did exist.  no one ever solved it.  Although to be fair, it was very difficult.  I will not reveal the answer as I know of a few people who are still working on it.   If you&#8217;re interested in trying again, you can find it here:</p>
<p><a href="http://www.mikedidonato.com/2008/04/23/code-2/" rel="nofollow">http://www.mikedidonato.com/2008/04/23/code-2/</a></p>
<p>This excel program could help you solve one of the steps, but the algorithm is more complicated than a simple find and replace, so I wouldn&#8217;t recommend plugging it in and giving it a shot.</p>
<p>That code is very hard.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Patrick</title>
		<link>http://www.mikedidonato.com/2008/06/18/code-breaking/#comment-78978</link>
		<author>Patrick</author>
		<pubDate>Wed, 18 Jun 2008 22:00:41 +0000</pubDate>
		<guid>http://www.mikedidonato.com/2008/06/18/code-breaking/#comment-78978</guid>
		<description>Didn't you post a code a few months ago, but asked that answers not be posted in the comments? Whatever happened to that, and did anyone ever get the answer? (I completely forgot what it looked like)</description>
		<content:encoded><![CDATA[<p>Didn&#8217;t you post a code a few months ago, but asked that answers not be posted in the comments? Whatever happened to that, and did anyone ever get the answer? (I completely forgot what it looked like)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jes Saint</title>
		<link>http://www.mikedidonato.com/2008/06/18/code-breaking/#comment-78975</link>
		<author>Jes Saint</author>
		<pubDate>Wed, 18 Jun 2008 21:12:12 +0000</pubDate>
		<guid>http://www.mikedidonato.com/2008/06/18/code-breaking/#comment-78975</guid>
		<description>Wow, now I really feel computer illiterate.  I can barely use Excel, let alone write programs for it.</description>
		<content:encoded><![CDATA[<p>Wow, now I really feel computer illiterate.  I can barely use Excel, let alone write programs for it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jon Abad</title>
		<link>http://www.mikedidonato.com/2008/06/18/code-breaking/#comment-78974</link>
		<author>Jon Abad</author>
		<pubDate>Wed, 18 Jun 2008 18:11:09 +0000</pubDate>
		<guid>http://www.mikedidonato.com/2008/06/18/code-breaking/#comment-78974</guid>
		<description>hahaha!
Great!

I've taken to working on the mathematical Car Talk puzzlers in excel as well. I'm having mixed results getting to the answer but mostly due to my understanding of the problem.</description>
		<content:encoded><![CDATA[<p>hahaha!<br />
Great!</p>
<p>I&#8217;ve taken to working on the mathematical Car Talk puzzlers in excel as well. I&#8217;m having mixed results getting to the answer but mostly due to my understanding of the problem.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: mike d.</title>
		<link>http://www.mikedidonato.com/2008/06/18/code-breaking/#comment-78973</link>
		<author>mike d.</author>
		<pubDate>Wed, 18 Jun 2008 17:58:38 +0000</pubDate>
		<guid>http://www.mikedidonato.com/2008/06/18/code-breaking/#comment-78973</guid>
		<description>Awesome!  thanks</description>
		<content:encoded><![CDATA[<p>Awesome!  thanks</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: shamus</title>
		<link>http://www.mikedidonato.com/2008/06/18/code-breaking/#comment-78972</link>
		<author>shamus</author>
		<pubDate>Wed, 18 Jun 2008 17:58:02 +0000</pubDate>
		<guid>http://www.mikedidonato.com/2008/06/18/code-breaking/#comment-78972</guid>
		<description>worked for me in Excel 2007</description>
		<content:encoded><![CDATA[<p>worked for me in Excel 2007</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: mike d.</title>
		<link>http://www.mikedidonato.com/2008/06/18/code-breaking/#comment-78970</link>
		<author>mike d.</author>
		<pubDate>Wed, 18 Jun 2008 17:07:47 +0000</pubDate>
		<guid>http://www.mikedidonato.com/2008/06/18/code-breaking/#comment-78970</guid>
		<description>&lt;b&gt;QUESTION: &lt;/b&gt; Did the Ctrl-M keystroke listed in the instructions on the excel sheet work for you?  if it didn't, let me know.</description>
		<content:encoded><![CDATA[<p><b>QUESTION: </b> Did the Ctrl-M keystroke listed in the instructions on the excel sheet work for you?  if it didn&#8217;t, let me know.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
