<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" 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/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Underbelly</title>
	
	<link>http://ubelly.com</link>
	<description />
	<lastBuildDate>Fri, 03 Sep 2010 20:17:16 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/ubelly" /><feedburner:info uri="ubelly" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Nerds rule at dConstruct 2010</title>
		<link>http://feedproxy.google.com/~r/ubelly/~3/8zAP7dJuJPg/</link>
		<comments>http://ubelly.com/2010/09/nerds-rule-at-dconstruct-2010/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 20:15:26 +0000</pubDate>
		<dc:creator>sara</dc:creator>
				<category><![CDATA[News Tweet]]></category>
		<category><![CDATA[dConstruct 2010]]></category>
		<category><![CDATA[digital experiences]]></category>
		<category><![CDATA[geeks]]></category>
		<category><![CDATA[geeks versus nerds]]></category>
		<category><![CDATA[nerds]]></category>
		<category><![CDATA[the web]]></category>

		<guid isPermaLink="false">http://ubelly.com/?p=2253</guid>
		<description><![CDATA[
I can’t think of a better way to spend a Friday ‘at work’ than going to dConstruct 2010. The day’s been filled with fascinating talks on creativity and how to consistently create the best digital experiences. Favs were Brendan Dawes and Tom Coates but all were inspiring. Kudos to uber nerd Merlin Mann and his [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://ubelly.com/wp-content/uploads/2010/09/IMG_138741.jpg"><img style="background-image: none; margin: 0px 10px 0px 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="IMG_1387[4]" src="http://ubelly.com/wp-content/uploads/2010/09/IMG_13874_thumb1.jpg" border="0" alt="IMG_1387[4]" width="97" height="115" align="left" /></a></p>
<p>I can’t think of a better way to spend a Friday ‘at work’ than going to <a href="http://2010.dconstruct.org/">dConstruct 2010</a>. The day’s been filled with fascinating talks on creativity and how to consistently create the best digital experiences. Favs were <a href="http://www.brendandawes.com/">Brendan Dawes</a> and <a href="http://www.plasticbag.org/">Tom Coates</a> but all were inspiring. Kudos to uber nerd <a href="http://www.merlinmann.com/">Merlin Mann</a> and his definition of geek versus nerd, which went something like:</p>
<p>A geek will fix your computer – whereas a nerd can fix your computer too, but will talk to you for ages about the pros and cons of your software before even thinking of fixing it</p>
<p>So which are you? Answer on a postcard to…</p>
<p>The video from today plus a montage of pics of some of the dConstructees will be live next week, so make sure you come back to check them out!</p>
<p><a href="http://ubelly.com/wp-content/uploads/2010/09/Preconferenceparty2.jpg"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" src="http://ubelly.com/wp-content/uploads/2010/09/Preconferenceparty_thumb2.jpg" border="0" alt="" width="131" height="155" /></a><a href="http://ubelly.com/wp-content/uploads/2010/09/IMG_13492.jpg"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="IMG_1349" src="http://ubelly.com/wp-content/uploads/2010/09/IMG_1349_thumb2.jpg" border="0" alt="IMG_1349" width="129" height="154" /></a><a href="http://ubelly.com/wp-content/uploads/2010/09/IMG_13632.jpg"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="IMG_1363" src="http://ubelly.com/wp-content/uploads/2010/09/IMG_1363_thumb2.jpg" border="0" alt="IMG_1363" width="128" height="153" /></a><a href="http://ubelly.com/wp-content/uploads/2010/09/IMG_13392.jpg"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="IMG_1339" src="http://ubelly.com/wp-content/uploads/2010/09/IMG_1339_thumb2.jpg" border="0" alt="IMG_1339" width="128" height="153" /></a></p>
<img src="http://feeds.feedburner.com/~r/ubelly/~4/8zAP7dJuJPg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ubelly.com/2010/09/nerds-rule-at-dconstruct-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://ubelly.com/2010/09/nerds-rule-at-dconstruct-2010/</feedburner:origLink></item>
		<item>
		<title>Events–dConstruct 2010</title>
		<link>http://feedproxy.google.com/~r/ubelly/~3/b6h7w9wpYM0/</link>
		<comments>http://ubelly.com/2010/09/eventsdconstruct2010/#comments</comments>
		<pubDate>Wed, 01 Sep 2010 16:00:45 +0000</pubDate>
		<dc:creator>sara</dc:creator>
				<category><![CDATA[Top Stories]]></category>
		<category><![CDATA[dConstruct]]></category>
		<category><![CDATA[foursquare]]></category>
		<category><![CDATA[ie9]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[Windows Phone 7]]></category>

		<guid isPermaLink="false">http://ubelly.com/?p=2222</guid>
		<description><![CDATA[
We’re coming to Brighton! Yes, this Thursday the Underbelly possy and Microsoft bods be heading off to dConstruct 2010 – first stop the pre party at Lola Lo, and then up early for the big day itself.
So what will we be doing at this key event I hear you cry? Well, here’s a taster…




Use Foursquare? [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://ubelly.com/wp-content/uploads/2010/08/dConstructlogo.png"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="dConstruct logo" src="http://ubelly.com/wp-content/uploads/2010/08/dConstructlogo_thumb.png" border="0" alt="dConstruct logo" width="244" height="37" /></a></p>
<p>We’re coming to Brighton! Yes, this Thursday the Underbelly possy and Microsoft bods be heading off to <a href="http://2010.dconstruct.org">dConstruct 2010</a> – first stop the pre party at <a href="http://lolalobrighton.com/">Lola Lo,</a> and then up early for the big day itself.</p>
<p>So what will we be doing at this key event I hear you cry? Well, here’s a taster…</p>
<table border="0" cellspacing="0" cellpadding="2" width="468">
<tbody>
<tr>
<td width="149" valign="top"><a href="http://ubelly.com/wp-content/uploads/2010/08/Foursquare5.png"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="Foursquare[5]" src="http://ubelly.com/wp-content/uploads/2010/08/Foursquare5_thumb.png" border="0" alt="Foursquare[5]" width="138" height="59" align="left" /></a></td>
<td width="317" valign="top">Use <a href="http://foursquare.com/">Foursquare</a>?<a href="http://foursquare.com/venue/8470458"> Look us up</a> when you&#8217;re there and grab a free coffee and pastry to get your brain ready for the sessions.</td>
</tr>
</tbody>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="460">
<tbody>
<tr>
<td width="296" valign="top">We’ll be <a href="http://ie.microsoft.com/testdrive/">test driving IE9</a> and our experts will be ready to answer all your questions (yep, we’re expecting quite a few!).</td>
<td width="162" valign="top"><a href="http://ubelly.com/wp-content/uploads/2010/08/IE97.png"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="IE9[7]" src="http://ubelly.com/wp-content/uploads/2010/08/IE97_thumb.png" border="0" alt="IE9[7]" width="137" height="56" /></a></td>
</tr>
</tbody>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="461">
<tbody>
<tr>
<td width="88" valign="top"><a href="http://ubelly.com/wp-content/uploads/2010/08/WP75.png"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="WP7[5]" src="http://ubelly.com/wp-content/uploads/2010/08/WP75_thumb.png" border="0" alt="WP7[5]" width="71" height="119" /></a></td>
<td width="371" valign="top">We’ll also be sneaking in a <a href="http://developer.windowsphone.com/windows-phone-7/">Windows Phone 7 </a>(or two) to show you and our roving reporter will be chatting to all willing (and able!) speakers and attendees about creating beautiful websites and applications.</td>
</tr>
</tbody>
</table>
<p>Who the heck are we? Here’s a quick introduction:</p>
<ul>
<li><a href="http://twitter.com/alex_ball">Alexandria Ball</a>: Marketing guru known for her loud laugh and artistic abilities</li>
<li><a href="http://twitter.com/andspo">Andrew Spooner</a>: Creative genius on the lookout for likeminded individuals</li>
<li><a href="http://twitter.com/markqu">Mark Quirk</a>: IE9 technical expert and demo master extraordinaire</li>
<li><a href="http://twitter.com/thebeebs">Martin Beeby</a>: Windows Phone 7 and IE9 technical wizard</li>
<li><a href="http://twitter.com/ubelly">Sara Allison</a>: Underbelly roving reporter, on the hunt for willing interviewees</li>
</ul>
<p>Catch us #dConstruct on Twitter @ubelly.</p>
<p>See you there – or online! <img class="wlEmoticon wlEmoticon-smile" style="border-style: none;" src="http://ubelly.com/wp-content/uploads/2010/08/wlEmoticonsmile2.png" alt="Smile" /></p>
<img src="http://feeds.feedburner.com/~r/ubelly/~4/b6h7w9wpYM0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ubelly.com/2010/09/eventsdconstruct2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://ubelly.com/2010/09/eventsdconstruct2010/</feedburner:origLink></item>
		<item>
		<title>Sell to my friends? Hmmm, well – OK, if I’m going to get paid for it….!</title>
		<link>http://feedproxy.google.com/~r/ubelly/~3/x0EN7s14mmo/</link>
		<comments>http://ubelly.com/2010/09/sell-to-my-friends-hmmm-well-ok-if-im-going-to-get-paid-for-it/#comments</comments>
		<pubDate>Wed, 01 Sep 2010 10:52:47 +0000</pubDate>
		<dc:creator>sara</dc:creator>
				<category><![CDATA[News Tweet]]></category>
		<category><![CDATA[loved by; online community; product promotion]]></category>

		<guid isPermaLink="false">http://ubelly.com/?p=2228</guid>
		<description><![CDATA[The days of people holding Tupperware parties &#8211; or your Mum’s friend knocking on the door trying to sell Avon to their neighbours are coming to an end (can’t say the same for Ann Summer’s parties, but that’s a different story). That’s not to say the days of selling to friends and family are over [...]]]></description>
			<content:encoded><![CDATA[<p>The days of people holding Tupperware parties &#8211; or your Mum’s friend knocking on the door trying to sell Avon to their neighbours are coming to an end (can’t say the same for Ann Summer’s parties, but that’s a different story). That’s not to say the days of selling to friends and family are over – the opposite is true in fact. Now more than ever all of us get the chance to promote films, clothes, music, applications – whatever grabs us – and shout about it to our online community without feeling we’re directly selling to them.</p>
<p><a href="http://loved.by"><img style="background-image: none; margin: 0px 10px 0px 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="Loved by" src="http://ubelly.com/wp-content/uploads/2010/09/Lovedby.png" border="0" alt="Loved by" width="307" height="153" align="left" /></a>Capitalising on this idea of sharing what you love, <a href="http://loved.by">Loved.by</a> is a site that rewards members for promoting products – essentially you get a cut of the sale if a friend buys a product. Sounds great, as long as it doesn’t mean I get friends ramming the latest products down my neck trying to persuade me to buy them (I could lose some friends pretty quickly!). But hey – if I happen to send some emails gushing about the latest ‘super expensive’ products I’ve found on the net, who can blame me…? <img class="wlEmoticon wlEmoticon-winkingsmile" style="border-style: none;" src="http://ubelly.com/wp-content/uploads/2010/09/wlEmoticonwinkingsmile.png" alt="Winking smile" /></p>
<img src="http://feeds.feedburner.com/~r/ubelly/~4/x0EN7s14mmo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ubelly.com/2010/09/sell-to-my-friends-hmmm-well-ok-if-im-going-to-get-paid-for-it/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://ubelly.com/2010/09/sell-to-my-friends-hmmm-well-ok-if-im-going-to-get-paid-for-it/</feedburner:origLink></item>
		<item>
		<title>Twitter Authentication is Dead – Long Live OAuth</title>
		<link>http://feedproxy.google.com/~r/ubelly/~3/hu9LohwtHmU/</link>
		<comments>http://ubelly.com/2010/08/twitter-authentication-is-dead-long-live-oauth/#comments</comments>
		<pubDate>Tue, 31 Aug 2010 11:03:23 +0000</pubDate>
		<dc:creator>sara</dc:creator>
				<category><![CDATA[News Tweet]]></category>
		<category><![CDATA[oauth]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://ubelly.com/?p=2204</guid>
		<description><![CDATA[
Don’t lose that app! If you haven’t updated your Twitter app to use OAuth, it won’t work any more. In order to increase security, Twitter has killed support for all basic user authentication in favour of OAuth from today, that many are wittily calling the ‘OAuthcalypse’. Twitter has posted a help page for anyone needing support [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://ubelly.com/wp-content/uploads/2010/08/Twitter.png"><img style="background-image: none; margin: 0px 10px 0px 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="Twitter" src="http://ubelly.com/wp-content/uploads/2010/08/Twitter_thumb.png" border="0" alt="Twitter" width="110" height="98" align="left" /></a></p>
<p>Don’t lose that app! If you haven’t updated your Twitter app to use OAuth, it won’t work any more. In order to increase security, Twitter has killed support for all basic user authentication in favour of OAuth from today, that many are wittily calling the ‘<a href="http://twitter.com/home#search?q=oauthcalypse">OAuthcalypse</a>’. Twitter has posted a <a href="http://dev.twitter.com/pages/basic_auth_shutdown">help page</a> for anyone needing support in updating their app, and many devs have been working over the bank holiday (nothing new there) to ensure their precious work isn’t lost.</p>
<p>Twitter has also posted an article on the <a href="http://blog.twitter.com/2010/08/twitter-applications-and-oauth.html">demise of basic authentication</a> to explain the change to all Twitter users.</p>
<img src="http://feeds.feedburner.com/~r/ubelly/~4/hu9LohwtHmU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ubelly.com/2010/08/twitter-authentication-is-dead-long-live-oauth/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://ubelly.com/2010/08/twitter-authentication-is-dead-long-live-oauth/</feedburner:origLink></item>
		<item>
		<title>It’s not about what we have, it’s about what we share… Part Two.</title>
		<link>http://feedproxy.google.com/~r/ubelly/~3/NfCLBewt9xU/</link>
		<comments>http://ubelly.com/2010/08/its-not-about-what-we-have-its-about-what-we-share-part-two/#comments</comments>
		<pubDate>Fri, 27 Aug 2010 11:30:06 +0000</pubDate>
		<dc:creator>sara</dc:creator>
				<category><![CDATA[Uguest]]></category>
		<category><![CDATA[messenger connect]]></category>
		<category><![CDATA[oauth]]></category>
		<category><![CDATA[social media]]></category>
		<category><![CDATA[Windows Live]]></category>
		<category><![CDATA[Windows Live ID]]></category>

		<guid isPermaLink="false">http://ubelly.com/?p=2174</guid>
		<description><![CDATA[Here’s the second instalment from Planky on Social Media tools – enjoy  P.S. If you missed the first article, you can find it here.
It’s not about what we have, it’s about what we share… Part Two.
In part one I gave an overview of what was possible and started down the journey of the various [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://ubelly.com/wp-content/uploads/2010/08/Planky1.jpg"><img style="background-image: none; margin: 0px 10px 0px 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="Planky" src="http://ubelly.com/wp-content/uploads/2010/08/Planky_thumb1.jpg" border="0" alt="Planky" width="100" height="73" /></a>Here’s the second instalment from Planky on Social Media tools – enjoy <img class="wlEmoticon wlEmoticon-smile" style="border-style: none;" src="http://ubelly.com/wp-content/uploads/2010/08/wlEmoticonsmile1.png" alt="Smile" /> P.S. If you missed the first article, <a href="http://ubelly.com/2010/08/its-not-about-what-we-have-its-about-what-we-share-part-one/">you can find it here</a>.</p>
<h2>It’s not about what we have, it’s about what we share… Part Two.</h2>
<p>In part one I gave an overview of what was possible and started down the journey of the various bits of setup that had to be done, either by you, or setup that has already been done by the Windows Live team. In this article I show how the OAuthWRAP protocol works with Messenger Connect.</p>
<h3>Windows Live ID wants to share some secrets</h3>
<p>Windows Live ID is the Authorization Server. It implicitly trusts the Live IDs in its database because it created and issued them. But when it gets down to your site, it needs to have some assurances that the site that comes to it purporting to be your site is in fact your site. To this end it will create and share a couple of secrets with you.  In OAuth WRAP terms, your site is known as the <em>client application</em>, hence the secrets are termed the <em>client ID </em>and the <em>client secret</em>. It&#8217;s important that you keep these secrets, well, secret.</p>
<p>To obtain these secrets you must go through a registration process with Windows Live ID (the Authorization Server). You&#8217;ll be asked for the site&#8217;s domain name and the URL of a callback handler (covered later). The secrets will be stored against the domain and URL. Whenever your site communicates with Windows Live ID, all the parameters must match up; the URL, the domain, the client ID and the client secret. Security and authorization error messages invariably end up with one or more of these parameters not matching up correctly.</p>
<p>While the product is in Beta, you can&#8217;t register a domain unless you have also <em>applied to join the Beta</em> and been accepted on to the program. You are informed by email of your successful registration. This process can take a few days, so make sure you allow for it in your schedule. You&#8217;ll be asked questions about the number of users that hit your site and the scenarios you want to try. As a general rule, if you fill in all the fields accurately, the scenario you want to deploy is supported and the site is a genuine site, you will be accepted on to the Beta program. You&#8217;ll need a Live ID to register.</p>
<p>To register, go to <a href="http://dev.live.com/">http://dev.live.com</a> and click the &#8220;Join the Beta&#8221; button.</p>
<p>Once you are registered, you can add additional URLs and manage their secrets. You can also upload logos that will be used in authentication challenges and so on. This is done at <a href="http://manage.dev.live.com/">http://manage.dev.live.com</a>.</p>
<p><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-01-40-06/3005.manage.dev.live.com.png" border="0" alt="" width="449" height="528" /></p>
<h5>Figure 2: Client application management at <a href="http://manage.dev.live.com">http://manage.dev.live.com</a></h5>
<h3>Protocol Exchanges</h3>
<p>Once all this basic setup (certificates, client ID, secret, callback URL, domain name) has been completed, you can create/modify the pages in your site with the aid of the Windows Live SDK.</p>
<p>In this section, you&#8217;ll see how the browser, Windows Live ID, the Windows Live API Service, your site and so on all communicate with each other. In later sections we&#8217;ll talk about how most of this is wrapped up in the OAuthWRAPCallback assembly plus some javascript libraries. It&#8217;s useful to understand how the elements communicate with each other <em>before</em> understanding what the libraries and Windows Live tags do. Even though this means you&#8217;ll have to live with a degree of ambiguity until you understand more &#8211; but stick with it, it is better this way.</p>
<p>First, a protocol diagram:</p>
<p><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-01-40-06/3324.OAuthWRAP-protocol.png" border="0" alt="" width="517" height="489" /></p>
<h5>Figure 3: OAuthWRAP protocol exchanges in Messenger Connect</h5>
<p>Each element is numbered 1 &#8211; 17. At the end of this, the browser will have cookies that represent security tokens. Your web site will take these cookies, convert them to tokens and use them to access, for example, Windows Live profile information, or contact information.</p>
<ol>
<li>The web browser connects to your site.</li>
<li>The web browser loads a page that contains a &#8220;Connect&#8221; button. Embedded in to this button is the client ID you obtained when you registered your application, the callbackURL you registered, a thing called the client scope (basically a permission type that will be covered later) and optionally, client state information.</li>
<li>Clicking the button causes the browser to see if it has already gone through a consent process by checking for a consent cookie. In this case we assume no consent cookie is present.</li>
<li>This causes the browser to go to a special page on Windows Live called the &#8220;Windows Live Consent page&#8221;.</li>
<li>The consent page prompts the user for credentials, but also, importantly asks the user &#8220;are you happy to be providing this site, with the following information&#8221;. The consent page looks like this:<img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-01-40-06/5807.WindowsLiveCOnsentPage.png" border="0" alt="" /><br />
<h5>Figure 4: Windows Live Consent Page</h5>
<p>&#8230;clicking the &#8220;what will I share&#8221; link, shows something similar to the following:</p>
<p><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-01-40-06/3125.whatyouwillshare.png" border="0" alt="" /></p>
<h5>Figure 5: What you will share</h5>
</li>
<li>At the same time, the consent page gathers up the client ID, scope, callbackURL and state, and makes a call to the Windows Live ID Authentication URL.</li>
<li>Windows Live ID is what is asking for the Live ID and password.</li>
<li>Because the user typed the credentials in to the consent page and they were accurate&#8230;</li>
<li>…Windows Live ID validates the password against the Windows Live ID and sees a genuine user. It now generates a short lived verification code and records this fact against the specified Windows Live ID in the back-end database.</li>
<li>Windows Live ID generates an HTTP 302 redirect to the callbackURL (which it obtained in step 6)</li>
<li>The verification ID, client ID and client state are passed to the callbackURL.</li>
<li>It&#8217;s the callbackURL that has access to the client secret (the one that was generated by http://manage.dev.live.com when you registered your site. Remember the screenshot in figure 2?). The code for the callbackURL is provided in an assembly as part of the Live SDK. The assembly checks in web.config to retrieve the secret <em>which must match exactly</em> the secret stored at manage.dev.live.com. Although it might appear to be a security risk to store sensitive information like this in a file on a web server, by default IIS request filtering protects this file. Of course though, if someone manages to find an exploit &#8211; there is your client secret for all to see. I&#8217;ll talk about a solution to this problem later.</li>
<li>The client secret is checked to make sure it matches the one stored against the specified client ID. The short-lived verification code is checked to see if it has expired yet. This is a simple protection against replay attacks. 2 tokens are now generated: the refresh token, which is long lived &#8211; 8 hours &#8211; and the access token, which has a short life. The names of the tokens are something of a give-away. You use the refresh token to get new access tokens when they expire. There is no need to re-trace every step, including authentication, to renew an access token. Simply supplying a refresh token returns a fresh access token. Say if the access token has a life of 10 minutes, it means if a Windows Live user makes a more restrictive edit to their profile, it will only be a maximum of 10 minutes before requests are no longer honoured. Of course, if the client application already has a copy of the data, then there is nothing Messenger Connect, the OAuthWRAP protocol or indeed the original owner of the data can do about that. Once past initial disclosure, it is not possible to destroy data that is now in somebody else&#8217;s hands. These tokens are stored in <a href="http://oauth-wrap-wg.googlegroups.com/web/SWT-v0.9.5.1.pdf?gda=89Tl0UMAAABFB7PFAFiVedPtjcqT8uuIJl9Z95_hhlmalT4Ps52mFtF2tzlQ33RhT1wW8BFYO1QytiJ-HdGYYcPi_09pl8N7FWLveOaWjzbYnpnkpmxcWg"><em>Simple Web Token </em></a>format. Recall the description in the Part One post which shows how the tokens are additionally protected by encryption and signing, and remember this requires the creator and consumer of the tokens to go through a certificate exchange which involves the exchange of public keys.</li>
<li>The access and refresh tokens are returned to the callbackURL along with expiry information.</li>
<li>The callbackURL forwards the tokens to your web site.</li>
<li>Your website uses a process to copy the token contents in to a collection of cookies.</li>
<li>The cookies are returned to the browser. Although you might expect the site to keep copies of the tokens and maintain state between the browser and the tokens, in this case, the tokens are effectively stored in cookies on the client. They are session cookies, not long-lived cookies, so when the browser is closed, the cookies are destroyed. This means to get them back again, the process has to be re-traced in its entirety. The reason for doing this is because the code that runs on your site is a very clever javascript library. Storing cookies in the browser like this makes it possible to perform apparently complex state operations entirely in client-side code.</li>
</ol>
<p>In Part 3, we&#8217;ll have a look at how the tokens are passed to the Windows Live API Service and the data retrieved. Then in subsequent parts we&#8217;ll look at some code and show how the various pages and services link together. I&#8217;ll cross reference the code that runs with the protocol diagram so you should be able to work out what&#8217;s going on.</p>
<p>Stay tuned, Planky</p>
<p>_______________________________________________________________</p>
<p>Thanks Planky! You can check out <a href="http://blogs.msdn.com/b/plankytronixx">Planky&#8217;s blog here</a>.</p>
<img src="http://feeds.feedburner.com/~r/ubelly/~4/NfCLBewt9xU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ubelly.com/2010/08/its-not-about-what-we-have-its-about-what-we-share-part-two/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://ubelly.com/2010/08/its-not-about-what-we-have-its-about-what-we-share-part-two/</feedburner:origLink></item>
		<item>
		<title>The world’s first digital camera</title>
		<link>http://feedproxy.google.com/~r/ubelly/~3/ZBp6N_MMNYM/</link>
		<comments>http://ubelly.com/2010/08/the-worlds-first-digital-camera/#comments</comments>
		<pubDate>Fri, 27 Aug 2010 08:30:35 +0000</pubDate>
		<dc:creator>Spooner</dc:creator>
				<category><![CDATA[News Tweet]]></category>
		<category><![CDATA[digital camera]]></category>
		<category><![CDATA[kodak]]></category>
		<category><![CDATA[Underbelly]]></category>

		<guid isPermaLink="false">http://ubelly.com/?p=2184</guid>
		<description><![CDATA[This week at Underbelly towers we were updating our AV camera kit. Many mega pixels with many zooms, lots of gigs and many other clever things. So when I saw this picture today, I was more than a little tickled. I love the cassette tape on the side, I love that it took 23 seconds to [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://pluggedin.kodak.com/post/?ID=687843"></a><a href="http://ubelly.com/1_camera_small"><img class="alignleft size-thumbnail wp-image-2196" title="1_Camera_small" src="http://ubelly.com/wp-content/uploads/2010/08/1_Camera_small-150x150.jpg" alt="" width="150" height="150" /></a>This week at Underbelly towers we were updating our AV camera kit. Many mega pixels with many zooms, lots of gigs and many other clever things. So when I saw this picture today, I was more than a little tickled. I love the cassette tape on the side, I love that it took 23 seconds to record an image to that tape, I love that this was being worked on 35 years ago.</p>
<p>Go over to Kodak.com and read the full story about the <a href="http://pluggedin.kodak.com/post/?ID=687843">invention of the digital camera</a>.</p>
<img src="http://feeds.feedburner.com/~r/ubelly/~4/ZBp6N_MMNYM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ubelly.com/2010/08/the-worlds-first-digital-camera/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://ubelly.com/2010/08/the-worlds-first-digital-camera/</feedburner:origLink></item>
		<item>
		<title>Epic Win!</title>
		<link>http://feedproxy.google.com/~r/ubelly/~3/J_iB1c0cetc/</link>
		<comments>http://ubelly.com/2010/08/epic-win/#comments</comments>
		<pubDate>Thu, 26 Aug 2010 11:59:01 +0000</pubDate>
		<dc:creator>Spooner</dc:creator>
				<category><![CDATA[News Tweet]]></category>

		<guid isPermaLink="false">http://ubelly.com/?p=2181</guid>
		<description><![CDATA[In essence, this is a glorified to-do list, but that glorification turns chores into rewarding gameplay. I might actually get round to shaving the oven this weekend after all.

]]></description>
			<content:encoded><![CDATA[<p>In essence, this is a glorified to-do list, but that glorification turns chores into rewarding gameplay. I might actually get round to shaving the oven this weekend after all.</p>
<p><object width="586" height="354"><param name="movie" value="http://www.youtube.com/v/AmKwF_Si734?fs=1&amp;hl=en_GB&amp;color1=0x3a3a3a&amp;color2=0x999999"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/AmKwF_Si734?fs=1&amp;hl=en_GB&amp;color1=0x3a3a3a&amp;color2=0x999999" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="586" height="354"></embed></object></p>
<img src="http://feeds.feedburner.com/~r/ubelly/~4/J_iB1c0cetc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ubelly.com/2010/08/epic-win/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://ubelly.com/2010/08/epic-win/</feedburner:origLink></item>
		<item>
		<title>An easy sell… sneak preview of new Windows Phone 7 apps</title>
		<link>http://feedproxy.google.com/~r/ubelly/~3/zYZOD52PdbA/</link>
		<comments>http://ubelly.com/2010/08/an-easy-sell-sneak-preview-of-new-windows-phone-7-apps/#comments</comments>
		<pubDate>Wed, 25 Aug 2010 13:00:47 +0000</pubDate>
		<dc:creator>sara</dc:creator>
				<category><![CDATA[News Tweet]]></category>
		<category><![CDATA[augmented reality]]></category>
		<category><![CDATA[eBay]]></category>
		<category><![CDATA[Windows Phone 7]]></category>

		<guid isPermaLink="false">http://ubelly.com/?p=2156</guid>
		<description><![CDATA[Imagine taking a picture of something and checking your phone to see if eBay has something similar – or taking a picture of what you want to sell and uploading it directly onto eBay… rumour has it that eBay is building an augmented reality (AR) application for Windows Phone 7. Full details are being kept [...]]]></description>
			<content:encoded><![CDATA[<p>Imagine taking a picture of something and checking your phone to see if eBay has something similar – or taking a picture of what you want to sell and uploading it directly onto eBay… rumour has it that eBay is building an augmented reality (AR) application for Windows Phone 7. Full details are being kept tightly under wraps until the launch of the phone, but I’m enjoying guessing.</p>
<p>In the meantime, if you fancy getting around London on the new Barclays sponsored bikes for hire but have no idea where to find them, 18 year old Daniel May has developed an application to help you find the nearest cycle hub based on your location. Sounds good to me!</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="400" height="300" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://vimeo.com/moogaloop.swf?clip_id=13982504&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=1&amp;color=&amp;fullscreen=1&amp;autoplay=0&amp;loop=0" /><embed type="application/x-shockwave-flash" width="400" height="300" src="http://vimeo.com/moogaloop.swf?clip_id=13982504&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=1&amp;color=&amp;fullscreen=1&amp;autoplay=0&amp;loop=0" allowfullscreen="true" allowscriptaccess="always"></embed></object></p>
<p><a href="http://vimeo.com/13982504">CycleHubs WP7 preview</a> from <a href="http://vimeo.com/user4451313">Daniel May</a> on <a href="http://vimeo.com">Vimeo</a>.</p>
<p>Dunno about you but can’t wait to get my hands on one of those phones…</p>
<img src="http://feeds.feedburner.com/~r/ubelly/~4/zYZOD52PdbA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ubelly.com/2010/08/an-easy-sell-sneak-preview-of-new-windows-phone-7-apps/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://ubelly.com/2010/08/an-easy-sell-sneak-preview-of-new-windows-phone-7-apps/</feedburner:origLink></item>
		<item>
		<title>Hot… or not?</title>
		<link>http://feedproxy.google.com/~r/ubelly/~3/e1XPzUHTcKU/</link>
		<comments>http://ubelly.com/2010/08/hot-or-not-4/#comments</comments>
		<pubDate>Tue, 24 Aug 2010 21:42:16 +0000</pubDate>
		<dc:creator>sara</dc:creator>
				<category><![CDATA[Comment]]></category>
		<category><![CDATA[3d]]></category>
		<category><![CDATA[gaming]]></category>
		<category><![CDATA[standards]]></category>
		<category><![CDATA[star wars]]></category>
		<category><![CDATA[usb]]></category>
		<category><![CDATA[wc3]]></category>

		<guid isPermaLink="false">http://ubelly.com/?p=2144</guid>
		<description><![CDATA[How could these be anything but ‘hot’? Star Wars MIMOBOT USB Flash Drive – hopefully they’ll be coming to a store near you (i.e. in the UK) soon…
3D might be the next big thing in film, but is gaming a step too far? Gaming giants bet on 3D for next big boost – my bet [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://ubelly.com/wp-content/uploads/2010/08/mimobotr2d2.jpg"><img class="wlDisabledImage" style="margin: 0px 10px 0px 0px; display: inline; border: 0px;" title="mimobot-r2-d2" src="http://ubelly.com/wp-content/uploads/2010/08/mimobotr2d2_thumb.jpg" border="0" alt="mimobot-r2-d2" width="125" height="90" align="left" /></a>How could these be anything but ‘hot’? <a href="http://www.neatorama.com/2010/08/23/star-wars-mimobot-usb-flash-drive/">Star Wars MIMOBOT USB Flash Drive</a> – hopefully they’ll be coming to a store near you (i.e. in the UK) soon…</p>
<p>3D might be the next big thing in film, but is gaming a step too far? <a href="http://www.independent.co.uk/life-style/gadgets-and-tech/gaming-giants-bet-on-3d-for-next-big-boost-2056248.html">Gaming giants bet on 3D for next big boost</a> – my bet is on 3D gaming reaching its peak in 5 years when we may have got around the need for glasses… ‘not’ (yet)</p>
<p><a href="http://www.webmonkey.com/2010/08/new-standard-hopes-to-unify-your-address-book/">New Standard Hopes to Unify Your Address Book</a> – in a post by Steve Plank we describe being able to manage all your social media accounts in one place – Messenger. The WC3 has recently published a draft of the contacts API to provide a unified address book of contacts, offering a way of standardising the way contacts are managed so individuals have more control over what applications use your data. Hmmm…. I’m too old not to care about privacy, so it’s definitely ‘hot’ IMHO!</p>
<p><a href="http://www.shinyshiny.tv/2010/08/generate_business_names_dotcomroulette.html">Got a brilliant start-up idea but don&#8217;t know what to call it? .Dot.Com.Roulette does</a>. Is this the start of a new naming convention? Might rely on roulette to name my pets! ‘Hot’.</p>
<img src="http://feeds.feedburner.com/~r/ubelly/~4/e1XPzUHTcKU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ubelly.com/2010/08/hot-or-not-4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://ubelly.com/2010/08/hot-or-not-4/</feedburner:origLink></item>
		<item>
		<title>It’s not about what we have, it’s about what we share… Part One.</title>
		<link>http://feedproxy.google.com/~r/ubelly/~3/NPXXskotAAo/</link>
		<comments>http://ubelly.com/2010/08/its-not-about-what-we-have-its-about-what-we-share-part-one/#comments</comments>
		<pubDate>Tue, 24 Aug 2010 11:00:10 +0000</pubDate>
		<dc:creator>sara</dc:creator>
				<category><![CDATA[Uguest]]></category>
		<category><![CDATA[messenger]]></category>
		<category><![CDATA[messenger connect]]></category>
		<category><![CDATA[Microsoft DPE]]></category>
		<category><![CDATA[Steve Plank]]></category>
		<category><![CDATA[Windows Live API]]></category>
		<category><![CDATA[Windows Live ID]]></category>

		<guid isPermaLink="false">http://ubelly.com/?p=2131</guid>
		<description><![CDATA[Steve Plank (Planky) is an Architect Evangelist on the Microsoft DPE team (Developer Platform Evangelists). Planky, in his own words, is ‘unusually intrigued by things like encryption and that kind of caper. Very interested in protocols and all the malarkey that surrounds them’. If you want to know more, take a look at his blog.
It’s [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://ubelly.com/wp-content/uploads/2010/08/Planky.jpg"><img class="wlDisabledImage" style="margin: 0px 10px 0px 0px; display: inline; border: 0px;" title="Planky" src="http://ubelly.com/wp-content/uploads/2010/08/Planky_thumb.jpg" border="0" alt="Planky" width="100" height="73" /></a>Steve Plank (Planky) is an Architect Evangelist on the Microsoft DPE team (Developer Platform Evangelists). Planky, in his own words, is ‘unusually intrigued by things like encryption and that kind of caper. Very interested in protocols and all the malarkey that surrounds them’. If you want to know more, <a href="http://blogs.msdn.com/b/plankytronixx/">take a look at his blog</a>.</p>
<p><strong>It’s not about what we have, it’s about what we share…</strong></p>
<p>Facebook, MySpace, Twitter, Messenger, Spaces, Linkedin, Bebo and so the list goes on: places we share different aspects of our lives. We see something on the net that we like and we put it on our wall, we tweet it, we promote it, we chat about it, we allow others to share in the pleasure we get from it.</p>
<p>Each of these services is an Island. We go to the first one and register, create a profile, log out, log in, add to our profile, add friends, add photos, share photos, share the things we like. Then we go to the next service and guess what we do? We register, create a profile, log out, log in, add to our profile, add friends, add photos, share photos, share the things we like. As they say in the Rock and Roll world &#8211; repeat till fade.</p>
<p>Windows Messenger Connect is a way for us to connect these experiences and services together. For some of the features &#8211; such as creating a single login or sharing profiles, contacts and friends across different sites it does require the co-operation of the site concerned. Your site.</p>
<p>But many things can be shared in a natural way, because of the APIs and services exposed by these sites in any case.</p>
<p>We&#8217;ve all seen this sort of thing on various web-sites:</p>
<p><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-01-40-06/3757.share.png" border="0" alt="" /></p>
<p>&#8230;a way of sharing that page through email, with our Facebook friends, or through Twitter. We can now add a new sharing icon &#8211; the Messenger Connect Sharing Badge:</p>
<p><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-01-40-06/7028.badge.png" border="0" alt="" /></p>
<p>When you see this icon on a site, it means you can share it with your Messenger friends just by clicking it. This is the simplest Messenger Connect feature to implement on your site because it just requires a few lines of HTML &#8211; Messenger at the back-end takes care of everything else for you.</p>
<p>Why would you do this on your site? The more people who share your pages with their Messenger friends, the more visitors you will have to your site.</p>
<p><strong>Messenger Connect Capabilities</strong></p>
<p>There&#8217;s more than just sharing a page. This list gives you an idea of the sorts of things you can build right in to your site:</p>
<ul>
<li><strong>Lower the friction of getting users to register at your site.</strong> We&#8217;ve all done it &#8211; hit yet another page that asks for personal information like Last Name, Home Address, Home Telephone Number. We often find the process too onerous for the benefit we feel we might receive from the site and so we bail out. Depending on which study you read, between 80% and 99% of users who go to the registration page of a site, abandon the process.
<ul>
<li>ASP.Net has built-in mechanisms for authenticating users. Or you can build a home-grown authentication system or use libraries from a 3<sup>rd</sup> party. The advantage of using Windows LiveID on your site is that it&#8217;s a ready-made market of about half a billion people in the world <em>who have already registered.</em></li>
<li>There&#8217;s a Windows Live Signin Control where you can integrate the authentication and consent process into your site using little or no JavaScript code</li>
<li>There are JavaScript and .Net libraries that allow you to sign users in, monitor their authentication state and, with user permission, get access to their Windows Live profile information so they don&#8217;t have to go through the process of re-keying all that information yet again.</li>
</ul>
</li>
<li><strong>Real-time chat within your site:</strong>
<ul>
<li>A small bar at the bottom of the page; the <em>Messenger Web Bar</em> is a single UI Control that contains a full Windows Live Messenger experience. It allows users to manage contacts and interact with them, shows all active conversations, allows users to update and display presence and most interestingly &#8211; enables the user to stay signed in to Windows Live Messenger while they navigate from page to page within your website. Conversations that start on one page can continue on another.</li>
<li>The Chat Control can be embedded right in to your web pages: users can view a Messenger chat session and users who have a Live ID can use Messenger chat to send their own messages.</li>
</ul>
</li>
</ul>
<p><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-01-40-06/5556.messengerchat.png" border="0" alt="" /></p>
<ul>
<li><strong>Contacts:</strong> Users spend more time on a site when they know their friends are there. Make it easy for them to discover their Windows Live contacts on your site.</li>
<li><strong>Share your activities:</strong> Let your friends and contacts know what you are doing &#8211; it&#8217;s a way to remain connected on a personal as well as a network to those close to you.</li>
<li><strong>Share your Calendar and Photos: </strong>Isn&#8217;t this really about sharing some of the minutiae of your life with the people you care about. Whether you can make it to a dinner party on a certain date, or a picture of you and your partner on a beautiful beach somewhere is not interesting to anybody unless they know you. The level of interest and engagements goes up exponentially when you know the people you share these things with. Messenger Connect just makes that process easy to do in an ad-hoc way when using the Internet.</li>
</ul>
<p><strong>The mechanics</strong></p>
<p>Almost all of this is possible because of a web based protocol which is used for authorizing API access across sites: OAuthWRAP or <em>Open Authorization Web Resource Authorization Profile.</em> WRAP is a profile within OAuth. In the cases we are interested in, it uses browser redirects, HTTP headers and HTTP Post messages to transfer control and tokens between web sites, Live ID and the  web browser. The tokens contain authorization information that determines what site can get access to what information. The protocol has built-in features such as timeouts, security, encryption, secrecy and so on. There are 4 parties in an exchange:</p>
<ol>
<li>The Client Application (your website)</li>
<li>The Authorization Server (Windows Live)</li>
<li>The Protected Resource (Windows Live): for example your profile or your contacts</li>
<li>The web browser (and attached to the screen, keyboard and mouse of the browser &#8211; the user)</li>
</ol>
<p>In the case of Windows Live &#8211; it performs roles as both an Authorization Server and a Protected Resource. It authorizes or denies authorization to resources such as a user&#8217;s profile, contacts, calendar or photos.</p>
<p><strong>Setup</strong></p>
<p>Before any exchanges can take place, some things need to be set up. This section talks about that.</p>
<p><strong>Windows Live APIs trust Windows Live ID</strong></p>
<p>Firstly, there needs to be a trust relationship between the Protected Resource (Live profiles, Live API service etc) and the Authorization Server (Live ID). The trust involves a certificate exchange which essentially results in the 2 services swopping public keys with each other. This ensures that tokens can be encrypted and signed &#8211; just a precaution to ensure tokens aren&#8217;t cracked open and inspected, faked or modified. The diagram below shows the way this is achieved.</p>
<p><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-01-40-06/4061.certexchange.png" border="0" alt="" width="591" height="373" /></p>
<ol>
<li>The Windows Live Authorization Server has a certificate (as does the Windows Live API Service). It contains a&#8230;</li>
<li>Public Key.</li>
<li>The related private key is held separately to protect it.</li>
<li>A certificate exchange takes place, which essentially means the Windows Live Authorization Server and the Windows Live API Service swop public keys.</li>
<li>When a Refresh Token or Access Token is generated by the Authorization Server, to assure its authenticity, it is signed by the Authorization Server&#8217;s private key.</li>
<li>Because the Windows Live Authorization Server has a copy of the Windows Live API Service&#8217;s public key, it uses this to encrypt the Refresh/Access Token.</li>
<li>The encrypted, signed token is passed to the Windows Live API Service.</li>
<li>Because the Windows Live API Service has a copy of the Windows Live Authorization Server&#8217;s public key, it can use this to validate the signature and therefore be assured that the token was indeed generated by the Windows Live Authorization Server, and not modified by an imposter while in transit.</li>
<li>The Access/Refresh Token was generated by the Authorization Server, which used the Windows Live API Service&#8217;s public key to encrypt the token. It therefore uses its own private key to decrypt the token. In this way the security and authenticity of the tokens transported between the 2 servers is maintained.</li>
</ol>
<p>The reality is that this all happens entirely under the covers. It&#8217;s merely included in this description for the sake of completeness. But it does mean as a developer you can be assured any time authorization information is passed via a user&#8217;s browser, it is all safe.</p>
<p>I&#8217;ll continue the story in future instalments. Stay Tuned!</p>
<img src="http://feeds.feedburner.com/~r/ubelly/~4/NPXXskotAAo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ubelly.com/2010/08/its-not-about-what-we-have-its-about-what-we-share-part-one/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://ubelly.com/2010/08/its-not-about-what-we-have-its-about-what-we-share-part-one/</feedburner:origLink></item>
	</channel>
</rss>
