<?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: Cloudy Verification</title>
	<atom:link href="http://jens.mooseyard.com/2008/04/cloudy-verification/feed/" rel="self" type="application/rss+xml" />
	<link>http://jens.mooseyard.com/2008/04/cloudy-verification/</link>
	<description>Little boxes made of words, by Jens Alfke</description>
	<lastBuildDate>Sat, 04 Feb 2012 05:05:18 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: alexr</title>
		<link>http://jens.mooseyard.com/2008/04/cloudy-verification/comment-page-1/#comment-2606</link>
		<dc:creator>alexr</dc:creator>
		<pubDate>Thu, 01 May 2008 02:16:50 +0000</pubDate>
		<guid isPermaLink="false">http://mooseyard.com/Jens/2008/04/cloudy-verification/#comment-2606</guid>
		<description>Although Cloudy&#039;s usage model isn&#039;t yet clear, this authentication method appears to require the availability of real-time out-of-band communications. Were I to wish to use Cloudy (for whatever it&#039;s purpose is) with my coworkers in Japan, this might present a problem.</description>
		<content:encoded><![CDATA[<p>Although Cloudy&#8217;s usage model isn&#8217;t yet clear, this authentication method appears to require the availability of real-time out-of-band communications. Were I to wish to use Cloudy (for whatever it&#8217;s purpose is) with my coworkers in Japan, this might present a problem.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: hendrik</title>
		<link>http://jens.mooseyard.com/2008/04/cloudy-verification/comment-page-1/#comment-2605</link>
		<dc:creator>hendrik</dc:creator>
		<pubDate>Sun, 27 Apr 2008 06:42:33 +0000</pubDate>
		<guid isPermaLink="false">http://mooseyard.com/Jens/2008/04/cloudy-verification/#comment-2605</guid>
		<description>Thanks for the detailed explanation. Clever. I like it.</description>
		<content:encoded><![CDATA[<p>Thanks for the detailed explanation. Clever. I like it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jens Alfke</title>
		<link>http://jens.mooseyard.com/2008/04/cloudy-verification/comment-page-1/#comment-2604</link>
		<dc:creator>Jens Alfke</dc:creator>
		<pubDate>Sun, 27 Apr 2008 06:23:46 +0000</pubDate>
		<guid isPermaLink="false">http://mooseyard.com/Jens/2008/04/cloudy-verification/#comment-2604</guid>
		<description>I don&#039;t blame you, this stuff is confusing! I had to read several papers, argue with a friend, and scrawl notes on paper before I really felt safe implementing the verification protocol.

Each peer does this:

1. Generates a random 64-bit number.
2. Sends it over the connection to the other peer.
3. Concatenates that number with their own public key, takes the SHA-1 hash of that, then takes the first 32 bits of the hash and uses the mnemonicode library to turn those 32 bits into a three-word phrase.
4. This is the challenge phrase that the user needs to hear over another channel and click the radio button for.
5. Repeats step 3 on the 64-bit number received from the peer and the peer&#039;s public key — this is the phrase that will be displayed on-screen for the user to read to the other person.

The trick is that, by basing the challenge phrase in part on a random number that&#039;s not chosen until the procedure begins, it defeats any attempt by the attacker to pick a public key that happens to &quot;look enough like&quot; the one they&#039;re trying to impersonate.

For example, if you just hashed the other person&#039;s public key and used 32 bits of that, the attacker could generate keys over and over ahead of time, till they found one that would generate the same result as the real person&#039;s key. That would take on average only 2^32 operations … feasible if they have weeks to prepare.

But with the real protocol, the hacker would have to do a comparable brute-force search, &lt;i&gt;but couldn&#039;t begin until he received your random number&lt;/i&gt;. And no one is going to leave this panel up for a week waiting for a reply.</description>
		<content:encoded><![CDATA[<p>I don&#8217;t blame you, this stuff is confusing! I had to read several papers, argue with a friend, and scrawl notes on paper before I really felt safe implementing the verification protocol.</p>
<p>Each peer does this:</p>
<p>1. Generates a random 64-bit number.<br />
2. Sends it over the connection to the other peer.<br />
3. Concatenates that number with their own public key, takes the SHA-1 hash of that, then takes the first 32 bits of the hash and uses the mnemonicode library to turn those 32 bits into a three-word phrase.<br />
4. This is the challenge phrase that the user needs to hear over another channel and click the radio button for.<br />
5. Repeats step 3 on the 64-bit number received from the peer and the peer&#8217;s public key — this is the phrase that will be displayed on-screen for the user to read to the other person.</p>
<p>The trick is that, by basing the challenge phrase in part on a random number that&#8217;s not chosen until the procedure begins, it defeats any attempt by the attacker to pick a public key that happens to &#8220;look enough like&#8221; the one they&#8217;re trying to impersonate.</p>
<p>For example, if you just hashed the other person&#8217;s public key and used 32 bits of that, the attacker could generate keys over and over ahead of time, till they found one that would generate the same result as the real person&#8217;s key. That would take on average only 2^32 operations … feasible if they have weeks to prepare.</p>
<p>But with the real protocol, the hacker would have to do a comparable brute-force search, <i>but couldn&#8217;t begin until he received your random number</i>. And no one is going to leave this panel up for a week waiting for a reply.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: hendrik</title>
		<link>http://jens.mooseyard.com/2008/04/cloudy-verification/comment-page-1/#comment-2603</link>
		<dc:creator>hendrik</dc:creator>
		<pubDate>Sun, 27 Apr 2008 06:04:13 +0000</pubDate>
		<guid isPermaLink="false">http://mooseyard.com/Jens/2008/04/cloudy-verification/#comment-2603</guid>
		<description>I initially thought that this would give a man in the middle a 1/6th chance of undetected attack. But I now realize that that is not at all so.</description>
		<content:encoded><![CDATA[<p>I initially thought that this would give a man in the middle a 1/6th chance of undetected attack. But I now realize that that is not at all so.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jens Alfke</title>
		<link>http://jens.mooseyard.com/2008/04/cloudy-verification/comment-page-1/#comment-2602</link>
		<dc:creator>Jens Alfke</dc:creator>
		<pubDate>Sun, 27 Apr 2008 04:30:15 +0000</pubDate>
		<guid isPermaLink="false">http://mooseyard.com/Jens/2008/04/cloudy-verification/#comment-2602</guid>
		<description>&lt;i&gt;&quot;Is a 1/6th chance of randomly guessing secure enough?&quot;&lt;/i&gt;

I decided not to fight too hard against the user. Preventing the automatic click of the OK button is important, but beyond that I&#039;ll make the assumption they&#039;re not just guessing.

Thanks for the compliments on Jed&#039;s art! But as an icon, the original line art just looked too flat to me, against all those sexy Aqua icons next to it in the Dock. Ah well, it&#039;s only a placeholder anyway.</description>
		<content:encoded><![CDATA[<p><i>&#8220;Is a 1/6th chance of randomly guessing secure enough?&#8221;</i></p>
<p>I decided not to fight too hard against the user. Preventing the automatic click of the OK button is important, but beyond that I&#8217;ll make the assumption they&#8217;re not just guessing.</p>
<p>Thanks for the compliments on Jed&#8217;s art! But as an icon, the original line art just looked too flat to me, against all those sexy Aqua icons next to it in the Dock. Ah well, it&#8217;s only a placeholder anyway.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: hendrik</title>
		<link>http://jens.mooseyard.com/2008/04/cloudy-verification/comment-page-1/#comment-2601</link>
		<dc:creator>hendrik</dc:creator>
		<pubDate>Sun, 27 Apr 2008 01:21:33 +0000</pubDate>
		<guid isPermaLink="false">http://mooseyard.com/Jens/2008/04/cloudy-verification/#comment-2601</guid>
		<description>Very interesting writeup. It&#039;s true that we put way too much trust into email and such. Spammers recently started using my work email address as From: address for their spam and I got flooded with all the undeliverable replies from mail servers. It is frustrating to realize that there is exactly nothing I can do about it (except setting up filters to keep those replies out of my inbox).

Is a 1/6th chance of randomly guessing secure enough? Why not have multiple choices for all 3 words independently? Say 5 words each for a 1/125th chance of correct random guessing. The big hurdle here for users really is not the number of clicks in answering this dialog but establishing the second communication channel (phone or such).

I&#039;d recommend loosing that radial gradient in your Cloudy icon. Stay true to your son&#039;s artistic vision! :) Your son is crazy talented by the way, those comic strips are excellent.</description>
		<content:encoded><![CDATA[<p>Very interesting writeup. It&#8217;s true that we put way too much trust into email and such. Spammers recently started using my work email address as From: address for their spam and I got flooded with all the undeliverable replies from mail servers. It is frustrating to realize that there is exactly nothing I can do about it (except setting up filters to keep those replies out of my inbox).</p>
<p>Is a 1/6th chance of randomly guessing secure enough? Why not have multiple choices for all 3 words independently? Say 5 words each for a 1/125th chance of correct random guessing. The big hurdle here for users really is not the number of clicks in answering this dialog but establishing the second communication channel (phone or such).</p>
<p>I&#8217;d recommend loosing that radial gradient in your Cloudy icon. Stay true to your son&#8217;s artistic vision! :) Your son is crazy talented by the way, those comic strips are excellent.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

