<?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.southworks.net/~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:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Federico Boerr's Blog</title>
	
	<link>http://blogs.southworks.net/fboerr</link>
	<description />
	<pubDate>Sat, 14 Mar 2009 02:37:03 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
	<language>en</language>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.southworks.net/fboerr" /><feedburner:info uri="fboerr" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>The Manifesto for Software Craftsmanship</title>
		<link>http://feeds.southworks.net/~r/fboerr/~3/riKzs6Jb0K8/</link>
		<comments>http://blogs.southworks.net/fboerr/2009/03/13/the-manifesto-for-software-craftsmanship/#comments</comments>
		<pubDate>Sat, 14 Mar 2009 02:37:03 +0000</pubDate>
		<dc:creator>fboerr</dc:creator>
		
		<category><![CDATA[agile]]></category>

		<guid isPermaLink="false">http://blogs.southworks.net/fboerr/?p=37</guid>
		<description><![CDATA[I&#8217;ve signed the Manifesto for Software Craftsmanship.
 What is it about?
The answer provided by Micah Martin in the discussion group is one I most agree with: &#8220;&#8230;a gentle push away from &#8220;crap code&#8221; and toward  craftsmanship.&#8221; 
This manifesto is created after the agile manifesto but it&#8217;s not intended to be an appendix or an addition of [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="margin: 0cm 0cm 10pt"><span><span style="font-size: 12pt"><span style="font-family: Calibri">I&#8217;ve signed the <a title="Manifesto for Software Craftsmanship" href="http://manifesto.softwarecraftsmanship.org/main" target="_blank">Manifesto for Software Craftsmanship</a>.</span></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt"> <span><span style="font-size: small"><span style="font-family: Calibri"><span style="text-decoration: underline">What is it about</span>?</span></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt"><span style="font-size: small"><span style="font-family: Calibri"><span><a title="Answer by Micah" href="http://groups.google.com/group/software_craftsmanship/msg/085e76f34aa0ce8c?pli=1" target="_blank">The answer</a> provided by <a title="who is Micah?" href="http://www.8thlight.com/main/bios/micah" target="_blank">Micah Martin</a> in the <a title="Discussion group" href="http://groups.google.com/group/software_craftsmanship" target="_blank">discussion group</a> is one I most agree with: <em>&#8220;&#8230;a gentle push away from &#8220;crap code&#8221; and toward<span>  </span>craftsmanship.&#8221;</em> </span></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt"><span><span style="font-size: small"><span style="font-family: Calibri">This manifesto is created after the <a title="Agile manifesto" href="http://agilemanifesto.org/" target="_blank">agile manifesto</a> but it&#8217;s not intended to be an appendix or an addition of the former one.</span></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt"><span><span style="font-size: small"><span style="font-family: Calibri">The principles in the <a title="Manifesto for Software Craftsmanship" href="http://manifesto.softwarecraftsmanship.org/main" target="_blank">Manifesto for Software Craftsmanship</a> are stated as follow:</span></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 35.4pt"><span style="font-size: 12pt;font-family:">&#8220;Not only working software,</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 35.4pt"><span style="font-size: 12pt;font-family:"><span>    </span>but also <strong>well-crafted software</strong></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 35.4pt"><span style="font-size: 12pt;font-family:">Not only responding to change,</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 35.4pt"><span style="font-size: 12pt;font-family:"><span>    </span>but also <strong>steadily adding value</strong></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 35.4pt"><span style="font-size: 12pt;font-family:">Not only individuals and interactions,</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 35.4pt"><span style="font-size: 12pt;font-family:"><span>    </span>but also <strong>a community of professionals</strong></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 35.4pt"><span style="font-size: 12pt;font-family:">Not only customer collaboration,</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 35.4pt"><span style="font-size: 12pt;font-family:"><span>    </span>but also <strong>productive partnerships</strong>&#8220;</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt"><span><span style="font-size: small;font-family: Calibri"> </span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt"><span><span style="font-size: small"><span style="font-family: Calibri">Note that the manifesto stands for <em>principles</em> and <em>not commandments</em>. The difference between these 2 has clearly described in <a title="principle vs commandment" href="http://blog.technicalmanagementinstitute.com/2009/03/the-complexity-manifesto-vs-agile-fundamentalism.html" target="_blank">this post</a> as follows: </span></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt"><span><span style="font-size: small"><span style="font-family: Calibri">&#8220;Rule based systems lend themselves to misinterpretation, misapplication and gaming, while systems based on values and principles empower individual choice and responsibility and lead to simple, elegant and appropriate solutions.&#8221;</span></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt"><span><span style="font-size: small;font-family: Calibri"> </span></span><span><span style="font-size: small"><span style="font-family: Calibri"><span style="text-decoration: underline">Why did I sign</span>?</span></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt"><span><span style="font-size: small"><span style="font-family: Calibri">I signed the Manifesto for Software Craftsmanship mainly because of 2 reasons:</span></span></span></p>
<p class="MsoListParagraphCxSpFirst" style="margin: 0cm 0cm 0pt 36pt"><span><span><span style="font-size: small;font-family: Calibri">1.</span><span style="font: 7pt">       </span></span></span><span><span style="font-size: small"><span style="font-family: Calibri">I agree with the principles</span></span></span></p>
<p class="MsoListParagraphCxSpLast" style="margin: 0cm 0cm 10pt 36pt"><span><span><span style="font-size: small;font-family: Calibri">2.</span><span style="font: 7pt">       </span></span></span><span><span style="font-size: small"><span style="font-family: Calibri">I push people in my environments (university, work) to follow them</span></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt"><span><span style="font-size: small"><span style="font-family: Calibri">I believe we have to think what we do, understand what we do, care about what we do and, in a broader sense, <em>love what we do</em>.</span></span></span></p>
<img src="http://feeds.feedburner.com/~r/fboerr/~4/riKzs6Jb0K8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.southworks.net/fboerr/2009/03/13/the-manifesto-for-software-craftsmanship/feed/</wfw:commentRss>
		<feedburner:origLink>http://blogs.southworks.net/fboerr/2009/03/13/the-manifesto-for-software-craftsmanship/</feedburner:origLink></item>
		<item>
		<title>Agile by improvisation</title>
		<link>http://feeds.southworks.net/~r/fboerr/~3/q0vg2cAKTNI/</link>
		<comments>http://blogs.southworks.net/fboerr/2009/03/02/agile-by-improvisation/#comments</comments>
		<pubDate>Mon, 02 Mar 2009 20:38:33 +0000</pubDate>
		<dc:creator>fboerr</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[agile]]></category>

		<guid isPermaLink="false">http://blogs.southworks.net/fboerr/?p=36</guid>
		<description><![CDATA[Today I went to my car&#8217;s insurance company looking for a refund check (some issue with the car during holidays).
After a usual 10 minutes wait, I got to a desk and presented my case with the proper documents to Mr. Payments (don&#8217;t know the real name so this will be his name from now). He [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="margin: 0cm 0cm 10pt"><span><span style="font-size: small"><span style="font-family: Calibri">Today I went to my car&#8217;s insurance company looking for a refund check (some issue with the car during holidays).</span></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt"><span><span style="font-size: small"><span style="font-family: Calibri">After a usual 10 minutes wait, I got to a desk and presented my case with the proper documents to Mr. Payments (don&#8217;t know the real name so this will be his name from now). He looked friendly, answered all my questions and handed in the refund check. Everything was running smooth until I verified the amount on the check. They were paying me, by accident, only 20% of the expected refund. I was not happy at all with this so he pointed to the next desk where I could settle my complaint.</span></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt"><span><span style="font-size: small"><span style="font-family: Calibri">At the complaint&#8217;s desk I found a 5 person queue, attended only by one single employee. As you probably know, complaints take average over 15 minutes so I forecasted a minimum hour-wait for a company&#8217;s mistake. 20 minutes afterwards I decided it was enough waiting and went back to Mr. Payments desk to fill a customer dissatisfaction form against the companies bad policies for making me wait when it was their error.</span></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt"><span><span style="font-size: small"><span style="font-family: Calibri">Arriving at Mr. Payment&#8217;s desk, I asked for a pen and a paper and, after providing me both, he suggested that he could take care of passing over my complaint and wrote down my contact number to let me know when the new check is ready.</span></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt"><span><span style="font-size: small"><span style="font-family: Calibri">Instead of filling a customer dissatisfaction form I was glad to having my car insured with them.</span></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt"><span><span style="font-size: small;font-family: Calibri">In this situation, it was not Mr. Payment&#8217;s direct responsibility to <span> </span>receive my complaint but he understood that the customer satisfaction is vital for his company, and by being agile (adapting to change and collaborating with the customer) he strengthened the relationship with a customer instead of losing him. He probably does not know </span><a title="Agile manifesto" href="http://www.agilemanifesto.org/" target="_blank"><span style="font-size: small;font-family: Calibri">what agile means</span></a><span style="font-size: small"><span style="font-family: Calibri"> but he practices it for sure.</span></span></span></p>
<img src="http://feeds.feedburner.com/~r/fboerr/~4/q0vg2cAKTNI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.southworks.net/fboerr/2009/03/02/agile-by-improvisation/feed/</wfw:commentRss>
		<feedburner:origLink>http://blogs.southworks.net/fboerr/2009/03/02/agile-by-improvisation/</feedburner:origLink></item>
		<item>
		<title>.Net AddIn Framework: Concurrency problem</title>
		<link>http://feeds.southworks.net/~r/fboerr/~3/o-ITTTFvC44/</link>
		<comments>http://blogs.southworks.net/fboerr/2008/06/19/net-addin-framework-concurrency-problem/#comments</comments>
		<pubDate>Thu, 19 Jun 2008 23:45:52 +0000</pubDate>
		<dc:creator>fboerr</dc:creator>
		
		<category><![CDATA[AddIn]]></category>

		<guid isPermaLink="false">http://blogs.southworks.net/fboerr/?p=25</guid>
		<description><![CDATA[Using .Net System.AddIn framework in an environment that needs to handle concurrency may be a bad idea.
The problem is that the communication between Host adapter and AddIn adater, using remoting, can handle only 2 concurent conections.
This is because the implemented remoting communication is opening only 2 channels as shown in the picture below.

If more than 2 concurrent [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blogs.southworks.net/fboerr/files/2008/06/remoting-channels.png"></a><a href="http://blogs.southworks.net/fboerr/files/2008/06/exception.png"></a><a href="http://blogs.southworks.net/fboerr/files/2008/06/proposed-solution.png"></a>Using <a title="AddIn Framework structure" href="http://blogs.southworks.net/fboerr/2008/06/19/net-addin-framework-structure/" target="_blank">.Net System.AddIn framework</a> in an environment that needs to handle concurrency may be a bad idea.</p>
<p>The problem is that the communication between Host adapter and AddIn adater, using remoting, can handle only 2 concurent conections.</p>
<p>This is because the implemented remoting communication is opening only 2 channels as shown in the picture below.</p>
<p><a href="http://blogs.southworks.net/fboerr/files/2008/06/remoting-channels.png"><img class="alignnone size-full wp-image-26" src="http://blogs.southworks.net/fboerr/files/2008/06/remoting-channels.png" alt="Remoting Channels" width="500" height="221" /></a></p>
<p>If more than 2 concurrent requests arrives to the Host adapter, the folowing exception is raised:</p>
<p>&#8220;<strong>RemotingException</strong>: Port is busy (&#8230;) All pipe instances are busy.&#8221;</p>
<p> <a href="http://blogs.southworks.net/fboerr/files/2008/06/exception.png"><img class="alignnone size-full wp-image-27" src="http://blogs.southworks.net/fboerr/files/2008/06/exception.png" alt="Remoting Exception" width="500" height="76" /></a></p>
<p>A proposed approach to solve this issue would be to create an AddIn pool as shown below.</p>
<p><a href="http://blogs.southworks.net/fboerr/files/2008/06/proposed-solution.png"><img class="alignnone size-full wp-image-28" src="http://blogs.southworks.net/fboerr/files/2008/06/proposed-solution.png" alt="AddIn pool solution" width="500" height="321" /></a></p>
<p> </p>
<img src="http://feeds.feedburner.com/~r/fboerr/~4/o-ITTTFvC44" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.southworks.net/fboerr/2008/06/19/net-addin-framework-concurrency-problem/feed/</wfw:commentRss>
		<feedburner:origLink>http://blogs.southworks.net/fboerr/2008/06/19/net-addin-framework-concurrency-problem/</feedburner:origLink></item>
		<item>
		<title>.Net AddIn Framework structure</title>
		<link>http://feeds.southworks.net/~r/fboerr/~3/m4sgJamCNBk/</link>
		<comments>http://blogs.southworks.net/fboerr/2008/06/19/net-addin-framework-structure/#comments</comments>
		<pubDate>Thu, 19 Jun 2008 23:10:48 +0000</pubDate>
		<dc:creator>fboerr</dc:creator>
		
		<category><![CDATA[AddIn]]></category>

		<guid isPermaLink="false">http://blogs.southworks.net/fboerr/?p=3</guid>
		<description><![CDATA[ 





Component


Description







The Application that will use the AddIn.







Component that runs on the application’s ApplicationDomain.
It is the gateway between the application and the addIn.







Component that runs on the addIn’s ApplicationDomain.
It is the entry point of the addIn.







The AddIn that is executed.
The call to it is made by the AddIn Adapter.




 
For mor information on the AddIn Framework:

CLR AddIn [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="margin: 0in 0in 10pt;text-align: center"><a href="http://blogs.southworks.net/fboerr/files/2008/06/addin-structure.jpg"></a><a href="http://blogs.southworks.net/fboerr/files/2008/06/addin-structure1.jpg"></a><a href="http://blogs.southworks.net/fboerr/files/2008/06/addin-structure.png"></a><a href="http://blogs.southworks.net/fboerr/files/2008/06/app.png"></a><a href="http://blogs.southworks.net/fboerr/files/2008/06/hostadapter.jpg"></a><a href="http://blogs.southworks.net/fboerr/files/2008/06/addinadapter.jpg"></a><a href="http://blogs.southworks.net/fboerr/files/2008/06/addin.jpg"></a><img class="aligncenter size-full wp-image-20" src="http://blogs.southworks.net/fboerr/files/2008/06/addin-structure.png" alt="Addin Structure" width="499" height="376" /> </p>
<p class="MsoNormal" style="margin: 0in 0in 10pt">
<table class="MsoTableGrid" border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td style="padding-right: 5.4pt;padding-left: 5.4pt;padding-bottom: 0in;width: 1.95in;padding-top: 0in;border: black 1pt solid" width="187">
<p class="MsoNormal" style="margin: 0in 0in 0pt;text-align: center" align="center"><span style="font-size: small"><span style="font-family: Calibri">Component</span></span></p>
</td>
<td style="padding-right: 5.4pt;padding-left: 5.4pt;padding-bottom: 0in;width: 4.7in;padding-top: 0in" width="451" valign="top">
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Calibri">Description</span></span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt;padding-left: 5.4pt;padding-bottom: 0in;width: 1.95in;padding-top: 0in" width="187">
<p class="MsoNormal" style="margin: 0in 0in 0pt" align="center"><span><img class="size-full wp-image-21" src="http://blogs.southworks.net/fboerr/files/2008/06/app.png" alt="Application compoment" width="116" height="64" /></span></p>
</td>
<td style="padding-right: 5.4pt;padding-left: 5.4pt;padding-bottom: 0in;width: 4.7in;padding-top: 0in" width="451">
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Calibri">The Application that will use the AddIn.</span></span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt;padding-left: 5.4pt;padding-bottom: 0in;width: 1.95in;padding-top: 0in" width="187">
<p class="MsoNormal" style="margin: 0in 0in 0pt" align="center"><span><img class="size-full wp-image-22" src="http://blogs.southworks.net/fboerr/files/2008/06/hostadapter.jpg" alt="Host adapter component" width="116" height="64" /></span></p>
</td>
<td style="padding-right: 5.4pt;padding-left: 5.4pt;padding-bottom: 0in;width: 4.7in;padding-top: 0in" width="451">
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Calibri">Component that runs on the application’s ApplicationDomain.</span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Calibri">It is the gateway between the application and the addIn.</span></span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt;padding-left: 5.4pt;padding-bottom: 0in;width: 1.95in;padding-top: 0in" width="187">
<p class="MsoNormal" style="margin: 0in 0in 0pt" align="center"><span><img class="size-full wp-image-23" src="http://blogs.southworks.net/fboerr/files/2008/06/addinadapter.jpg" alt="AddIn adapter component" width="119" height="64" /></span></p>
</td>
<td style="padding-right: 5.4pt;padding-left: 5.4pt;padding-bottom: 0in;width: 4.7in;padding-top: 0in" width="451">
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Calibri">Component that runs on the addIn’s ApplicationDomain.</span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Calibri">It is the entry point of the addIn.</span></span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt;padding-left: 5.4pt;padding-bottom: 0in;width: 1.95in;padding-top: 0in" width="187">
<p style="text-align: center"><img class="size-full wp-image-24" src="http://blogs.southworks.net/fboerr/files/2008/06/addin.jpg" alt="AddIn component" width="116" height="64" /></p>
</td>
<td style="padding-right: 5.4pt;padding-left: 5.4pt;padding-bottom: 0in;width: 4.7in;padding-top: 0in" width="451">
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Calibri">The AddIn that is executed.</span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Calibri">The call to it is made by the AddIn Adapter.</span></span></p>
</td>
</tr>
</tbody>
</table>
<p> </p>
<p>For mor information on the AddIn Framework:</p>
<ul>
<li><a title="CLR AddIn team blog" href="http://blogs.msdn.com/clraddins/">CLR AddIn team blog</a></li>
<li><a title="CLR AddIn in Codeplex" href="http://www.codeplex.com/clraddins" target="_blank">CLR AddIn in Codeplex</a></li>
<li><a title="MSDN Documentation" href="http://msdn.microsoft.com/en-us/library/system.addin.aspx" target="_blank">MSDN documentation</a></li>
</ul>
<img src="http://feeds.feedburner.com/~r/fboerr/~4/m4sgJamCNBk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.southworks.net/fboerr/2008/06/19/net-addin-framework-structure/feed/</wfw:commentRss>
		<feedburner:origLink>http://blogs.southworks.net/fboerr/2008/06/19/net-addin-framework-structure/</feedburner:origLink></item>
		<item>
		<title>Memory leaks: WPF application using VisualBrush</title>
		<link>http://feeds.southworks.net/~r/fboerr/~3/_03O_oT2okg/</link>
		<comments>http://blogs.southworks.net/fboerr/2008/06/05/memory-leaks-wpf-application-using-visualbrush/#comments</comments>
		<pubDate>Thu, 05 Jun 2008 18:10:52 +0000</pubDate>
		<dc:creator>fboerr</dc:creator>
		
		<category><![CDATA[Memory Leaks]]></category>

		<category><![CDATA[WPF]]></category>

		<guid isPermaLink="false">http://blogs.southworks.net/fboerr/?p=4</guid>
		<description><![CDATA[While researching on a memory leak created by WPF, I ran across this page:
A WPF application that uses a VisualBrush object in a RichTextBox control encounters a memory leak when you try to clean up the RichTextBox control
Hopefuly, this post saves your time. The solution is tricky but it works.
]]></description>
			<content:encoded><![CDATA[<p>While researching on a memory leak created by WPF, I ran across this page:</p>
<p><a class="aligncenter" title="A WPF application that uses a VisualBrush object in a RichTextBox control encounters a memory leak when you try to clean up the RichTextBox control" href="http://support.microsoft.com/kb/943823" target="_blank">A WPF application that uses a VisualBrush object in a RichTextBox control encounters a memory leak when you try to clean up the RichTextBox control</a></p>
<p>Hopefuly, this post saves your time. The solution is tricky but it works.</p>
<img src="http://feeds.feedburner.com/~r/fboerr/~4/_03O_oT2okg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.southworks.net/fboerr/2008/06/05/memory-leaks-wpf-application-using-visualbrush/feed/</wfw:commentRss>
		<feedburner:origLink>http://blogs.southworks.net/fboerr/2008/06/05/memory-leaks-wpf-application-using-visualbrush/</feedburner:origLink></item>
		<item>
		<title>File Access Permissions Error after creating the self issued certificate</title>
		<link>http://feeds.southworks.net/~r/fboerr/~3/rxxVLd4Mhfc/</link>
		<comments>http://blogs.southworks.net/fboerr/2007/12/02/file-access-permissions-error-after-creating-the-self-issued-certificate/#comments</comments>
		<pubDate>Sun, 02 Dec 2007 04:52:00 +0000</pubDate>
		<dc:creator>fboerr</dc:creator>
		
		<category><![CDATA[CardSpace]]></category>

		<category><![CDATA[Infocard SSL http https]]></category>

		<guid isPermaLink="false">/blogs/fboerr/archive/2007/12/01/File-Access-Permissions-Error-after-creating-the-self-issued-certificate.aspx</guid>
		<description><![CDATA[After creating a self issued certificate to use secure https connection over SSL, you may get “File Access Permissions Error”.
The error occurs because the user (usually NETWORK SERVICE) running the process has no “read &#38; execute” access rights on the private key file (created when the certificate is created).
Assign “read &#38; execute” access rights to [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small;font-family: Calibri">After <strong><a title="Go to Post" href="/blogs/fboerr/archive/2007/12/01/Creating-certificates-for-Cardspace-_2800_Inforcard_2900_-and-SSL.aspx" target="_blank">creating a self issued certificate</a></strong> to use secure https connection over SSL, you may get “File Access Permissions Error”.</span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small;font-family: Calibri">The error occurs because the user (usually NETWORK SERVICE) running the process has no “read &amp; execute” access rights on the private key file (created when the certificate is created).</span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small;font-family: Calibri">Assign “read &amp; execute” access rights to the private key file for this user.</span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small;font-family: Calibri">By default, the file is stored in the folder:</span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small;font-family: Calibri">C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys\</span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small;font-family: Calibri">The last modified file is the private key file you have just created.</span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small;font-family: Calibri">Now https should work correctly.</span></p>
<img src="http://feeds.feedburner.com/~r/fboerr/~4/rxxVLd4Mhfc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.southworks.net/fboerr/2007/12/02/file-access-permissions-error-after-creating-the-self-issued-certificate/feed/</wfw:commentRss>
		<feedburner:origLink>http://blogs.southworks.net/fboerr/2007/12/02/file-access-permissions-error-after-creating-the-self-issued-certificate/</feedburner:origLink></item>
		<item>
		<title>Creating certificates for Cardspace (Inforcard) and SSL</title>
		<link>http://feeds.southworks.net/~r/fboerr/~3/POsJaIOcziA/</link>
		<comments>http://blogs.southworks.net/fboerr/2007/12/02/creating-certificates-for-cardspace-inforcard-and-ssl/#comments</comments>
		<pubDate>Sun, 02 Dec 2007 04:50:00 +0000</pubDate>
		<dc:creator>fboerr</dc:creator>
		
		<category><![CDATA[CardSpace]]></category>

		<guid isPermaLink="false">/blogs/fboerr/archive/2007/12/01/Creating-certificates-for-Cardspace-_2800_Inforcard_2900_-and-SSL.aspx</guid>
		<description><![CDATA[This post will guide you in the job of creating and installing a X.509 Certificate for working with CardSpace over https (SSL).
The main reason you would need to create a self issued certificate is to test your application. Earlier versions of Cardspace required a valid certificate to connect over https (using a SSL – Secure [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small;font-family: Calibri">This post will guide you in the job of creating and installing a X.509 Certificate for working with CardSpace over https (SSL).</span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small;font-family: Calibri">The main reason you would need to create a self issued certificate is to test your application. Earlier versions of Cardspace required a valid certificate to connect over https (using a SSL – Secure Socket Layer)<strong>.</strong> Although <strong><a title="CardSpace supports http" href="/blogs/fboerr/archive/2007/12/01/Cardspace-now-supports-connections-over-http.aspx" target="_blank">CardSpace now supports http communications</a></strong>, it is a good idea to make a full functional test using https. <strong><a title="Securiy with https" href="/blogs/fboerr/archive/2007/12/01/Implications-of-using-CardSpace-on-an-unsecure-connection-_2800_without-SSL_2900_.aspx" target="_blank">The production server will need to use https for security reasons</a></strong>.</span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small;font-family: Calibri">The Certificates generated by these commands have been used with IIS 7.0.</span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small;font-family: Calibri">Before running these commands, change the value of -n &#8220;CN=your.domain.com&#8221; in the signed certificate to match your own.</span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small"><span style="font-family: Calibri">To run the commands open a “Visual Studio Command Prompt” (“Start” </span><span style="font-family: Wingdings"><span>à</span></span><span style="font-family: Calibri"> “Programs” </span><span style="font-family: Wingdings"><span>à</span></span><span style="font-family: Calibri"> “Microsoft Visual Studio” </span><span style="font-family: Wingdings"><span>à</span></span><span style="font-family: Calibri"> “Visual Studio Tools” </span><span style="font-family: Wingdings"><span>à</span></span><span style="font-family: Calibri"> “Visual Studio Command Prompt”)</span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small;font-family: Calibri">[If your OS is Windows Vista and UAC is activated, you will need to open the “Visual Studio Command Prompt” as “Administrator”]</span></p>
<p><span style="font-size: small;font-family: Calibri"></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"> </p>
<p class="MsoNormal" style="margin: 0in 0in 10pt">For the root certificate:</p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><strong><span style="font-size: 14pt">makecert -pe -n &#8220;CN=Sample Root Authority&#8221; -ss root -sr LocalMachine -a sha1 -sky signature -r &#8220;SampleRootAuthority.cer&#8221;</span></strong></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"> </p>
<p class="MsoNormal" style="margin: 0in 0in 10pt">For the signed certificate:</p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><strong><span style="font-size: 14pt">makecert -pe -n &#8220;CN=your.domain.com&#8221; -ss my -sr LocalMachine -a sha1 -sky exchange -eku 1.3.6.1.5.5.7.3.1 -in &#8220;Sample Root Authority&#8221; -is root -ir LocalMachine -sp &#8220;Microsoft RSA SChannel Cryptographic Provider&#8221; -sy 12 &#8220;SampleSSLCert.cer&#8221;</span></strong></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"> </p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small;font-family: Calibri">To verify that the certificates have been installed correctly, <strong>(open the certificate store)</strong> and look for the certificates:</span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small"><span style="font-family: Calibri">“Local Computer” </span><span style="font-family: Wingdings"><span>à</span></span><span style="font-family: Calibri"> “Trusted Root Certification Authority” </span><span style="font-family: Wingdings"><span>à</span></span><span style="font-family: Calibri"> “Sample Root Authority”</span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small"><span style="font-family: Calibri">“Local Computer” </span><span style="font-family: Wingdings"><span>à</span></span><span style="font-family: Calibri"> “Personal” </span><span style="font-family: Wingdings"><span>à</span></span><span style="font-family: Calibri"> “your.domain. com”</span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"> </p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small;font-family: Calibri">Finally, try browsing a page on your site using https. If you get “File Access Permission Error”, check the <strong><a title="Go to post" href="/blogs/fboerr/archive/2007/12/01/File-Access-Permissions-Error-after-creating-the-self-issued-certificate.aspx" target="_blank">File Permission Error after creating the self issued certificate</a> </strong>post.</span></p>
<p></span></p>
<img src="http://feeds.feedburner.com/~r/fboerr/~4/POsJaIOcziA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.southworks.net/fboerr/2007/12/02/creating-certificates-for-cardspace-inforcard-and-ssl/feed/</wfw:commentRss>
		<feedburner:origLink>http://blogs.southworks.net/fboerr/2007/12/02/creating-certificates-for-cardspace-inforcard-and-ssl/</feedburner:origLink></item>
		<item>
		<title>View the Certificate Store</title>
		<link>http://feeds.southworks.net/~r/fboerr/~3/U15RgaW_XiI/</link>
		<comments>http://blogs.southworks.net/fboerr/2007/12/02/view-the-certificate-store/#comments</comments>
		<pubDate>Sun, 02 Dec 2007 04:50:00 +0000</pubDate>
		<dc:creator>fboerr</dc:creator>
		
		<category><![CDATA[CardSpace]]></category>

		<guid isPermaLink="false">/blogs/fboerr/archive/2007/12/01/View-the-Certificate-Store.aspx</guid>
		<description><![CDATA[

To open the “Certificate Store” follow these steps:

1.       Run mmc.exe
[Select Continue if Windows asks for confirmation]
 
2.       From the menu, click on File àAdd/Remove Snap In…, the following window will pop-up. 
 
3.       Select “Certificates” in the left list
 
4.       Click on “Add &#62;”, the following window will pop-up. 
  
5.       Select “Computer account”
 
6.       Click on “Next &#62;”, you will see [...]]]></description>
			<content:encoded><![CDATA[<h1 style="margin: 24pt 0in 0pt">
<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small;font-family: Calibri"><a href="http://blogs.southworks.net/fboerr/files/2008/06/pic1.png"></a></span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt;text-align: left"><span style="font-size: small;font-family: Calibri">To open the “Certificate Store” follow these steps:</span></p>
</h1>
<p class="MsoListParagraphCxSpFirst" style="margin: 0in 0in 0pt 0.5in"><span><span><span style="font-size: small;font-family: Calibri">1.</span><span style="font-family: 'Times New Roman'">       </span></span></span><span style="font-size: small;font-family: Calibri">Run mmc.exe</span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin: 0in 0in 0pt 0.5in"><span style="font-size: small;font-family: Calibri">[Select Continue if Windows asks for confirmation]</span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin: 0in 0in 0pt 0.5in"> </p>
<p class="MsoListParagraphCxSpLast" style="margin: 0in 0in 10pt 0.5in"><span><span><span style="font-size: small;font-family: Calibri">2.</span><span style="font-family: 'Times New Roman'">       </span></span></span><span style="font-size: small"><span style="font-family: Calibri">From the menu, click on File </span><span style="font-family: Wingdings"><span>à</span></span><span style="font-family: Calibri">Add/Remove Snap In…, the following window will pop-up.</span></span> <span style="font-size: small;font-family: Calibri"><a href="http://blogs.southworks.net/fboerr/files/2008/06/pic1.png"><img class="alignnone size-full wp-image-30" src="http://blogs.southworks.net/fboerr/files/2008/06/pic1.png" alt="Step 2" width="500" height="351" /></a></span></p>
<p class="MsoListParagraphCxSpFirst" style="margin: 0in 0in 0pt 0.5in"> </p>
<p class="MsoListParagraphCxSpMiddle" style="margin: 0in 0in 0pt 0.5in"><span><span><span style="font-size: small;font-family: Calibri">3.</span><span style="font-family: 'Times New Roman'">       </span></span></span><span style="font-size: small;font-family: Calibri">Select “Certificates” in the left list</span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin: 0in 0in 0pt 0.5in"> </p>
<p class="MsoListParagraphCxSpLast" style="margin: 0in 0in 10pt 0.5in"><span><span><span style="font-size: small;font-family: Calibri">4.</span><span style="font-family: 'Times New Roman'">       </span></span></span><span style="font-size: small;font-family: Calibri">Click on “Add &gt;”, the following window will pop-up.</span><span style="font-size: small;font-family: Calibri"><a href="http://blogs.southworks.net/fboerr/files/2008/06/pic2.png"><img class="alignnone size-full wp-image-31" src="http://blogs.southworks.net/fboerr/files/2008/06/pic2.png" alt="Step 4" width="500" height="367" /></a> </span></p>
<p class="MsoListParagraphCxSpFirst" style="margin: 0in 0in 0pt 0.5in">  </p>
<p class="MsoListParagraphCxSpMiddle" style="margin: 0in 0in 0pt 0.5in"><span><span><span style="font-size: small;font-family: Calibri">5.</span><span style="font-family: 'Times New Roman'">       </span></span></span><span style="font-size: small;font-family: Calibri">Select “Computer account”</span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin: 0in 0in 0pt 0.5in"> </p>
<p class="MsoListParagraphCxSpLast" style="margin: 0in 0in 10pt 0.5in"><span><span><span style="font-size: small;font-family: Calibri">6.</span><span style="font-family: 'Times New Roman'">       </span></span></span><span style="font-size: small;font-family: Calibri">Click on “Next &gt;”, you will see the following screen.</span> <span><span><span style="font-size: small;font-family: Calibri"><a href="http://blogs.southworks.net/fboerr/files/2008/06/pic3.png"><img class="alignnone size-full wp-image-32" src="http://blogs.southworks.net/fboerr/files/2008/06/pic3.png" alt="Step 6" width="500" height="368" /></a></span></span></span></p>
<p class="MsoListParagraphCxSpFirst" style="margin: 0in 0in 0pt 0.5in"> </p>
<p class="MsoListParagraphCxSpFirst" style="margin: 0in 0in 0pt 0.5in"> </p>
<p class="MsoListParagraphCxSpFirst" style="margin: 0in 0in 0pt 0.5in"><span><span><span style="font-size: small;font-family: Calibri">7.</span><span style="font-family: 'Times New Roman'">       </span></span></span><span style="font-size: small;font-family: Calibri">With “Local Computer” selected, click on “Finish”</span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin: 0in 0in 0pt 0.5in"> </p>
<p class="MsoListParagraphCxSpLast" style="margin: 0in 0in 10pt 0.5in"><span><span><span style="font-size: small;font-family: Calibri">8.</span><span style="font-family: 'Times New Roman'">       </span></span></span><span style="font-size: small;font-family: Calibri">Now the “Local Computer Certificate Snap-In” will appear in the “selected snap-ins” list.</span><span style="font-size: small;font-family: Calibri"><a href="http://blogs.southworks.net/fboerr/files/2008/06/pic4.png"><img class="alignnone size-full wp-image-33" src="http://blogs.southworks.net/fboerr/files/2008/06/pic4.png" alt="Step 8" width="500" height="351" /></a> </span> </p>
<p class="MsoListParagraphCxSpLast" style="margin: 0in 0in 10pt 0.5in"><span><span><span style="font-size: small;font-family: Calibri">9.</span><span style="font-family: 'Times New Roman'">       </span></span></span><span style="font-size: small;font-family: Calibri">Click on “OK” to finish. You will see a window similar to the following.</span></p>
<p class="MsoListParagraphCxSpLast" style="margin: 0in 0in 10pt 0.5in"><span style="font-size: small;font-family: Calibri">This is the “Certificate Store” window.</span><a href="http://blogs.southworks.net/fboerr/files/2008/06/pic5.png"><img class="alignnone size-full wp-image-34" src="http://blogs.southworks.net/fboerr/files/2008/06/pic5.png" alt="Step 9" width="500" height="334" /></a></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"> </p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"> </p>
<div style="padding-right: 4pt;padding-left: 4pt;padding-bottom: 1pt;padding-top: 1pt;border: windowtext 1pt solid">
<p class="MsoNormal" style="margin: 0in 0in 10pt;border: medium none;padding: 0in"><span style="font-size: small;font-family: Calibri">Tip: </span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt;border: medium none;padding: 0in"><span style="font-size: small;font-family: Calibri">Save the configuration to skip the steps for opening the “Local Computer Certificate Snap-In”.</span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt;border: medium none;padding: 0in"><span style="font-size: small"><span style="font-family: Calibri">From the menu, select File</span><span style="font-family: Wingdings"><span>à</span></span><span style="font-family: Calibri"> “Save as…”</span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt;border: medium none;padding: 0in"><span style="font-size: small;font-family: Calibri">Give to it an appropriate name like “Certificate Store.msc”.</span></p>
</div>
<img src="http://feeds.feedburner.com/~r/fboerr/~4/U15RgaW_XiI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.southworks.net/fboerr/2007/12/02/view-the-certificate-store/feed/</wfw:commentRss>
		<feedburner:origLink>http://blogs.southworks.net/fboerr/2007/12/02/view-the-certificate-store/</feedburner:origLink></item>
		<item>
		<title>Cardspace now supports connections over http</title>
		<link>http://feeds.southworks.net/~r/fboerr/~3/UZ9GzGxb4gI/</link>
		<comments>http://blogs.southworks.net/fboerr/2007/12/02/cardspace-now-supports-connections-over-http/#comments</comments>
		<pubDate>Sun, 02 Dec 2007 04:45:00 +0000</pubDate>
		<dc:creator>fboerr</dc:creator>
		
		<category><![CDATA[CardSpace]]></category>

		<guid isPermaLink="false">/blogs/fboerr/archive/2007/12/01/Cardspace-now-supports-connections-over-http.aspx</guid>
		<description><![CDATA[The release of the new .NET Framework 3.5 brings an update for CardSpace that allows connections over http as Vittorio wrote in his blog. Earlier versions of CardSpace would abort any connection not using SSL.
When CardSpace pops-up from an http (unsecure page), it will display a message informing the user that the connection is unsecure.
 
This [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small;font-family: Calibri">The release of the new <strong><a title=".Net Framework 3.5" href="http://go.microsoft.com/?linkid=7755937" target="_blank">.NET Framework 3.5</a> </strong>brings an update for <strong><a title="CardSpace" href="http://cardspace.netfx3.com/content/introduction.aspx" target="_blank">CardSpace</a> </strong>that allows connections over http as <strong><a title="Vittorio's Blog" href="http://blogs.msdn.com/vbertocci/archive/2007/09/25/windows-cardspace-will-work-without-https-too.aspx" target="_blank">Vittorio wrote in his blog</a></strong>. Earlier versions of CardSpace would abort any connection not using SSL.</span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small;font-family: Calibri">When CardSpace pops-up from an http (unsecure page), it will display a message informing the user that the connection is unsecure.</span></p>
<p> </p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small;font-family: Calibri">This screen opens for CardSpace <strong>without</strong> SSL…</span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><a href="http://blogs.southworks.net/fboerr/files/2008/06/cardspacenossl.png"><img class="alignnone size-full wp-image-14" src="http://blogs.southworks.net/fboerr/files/2008/06/cardspacenossl.png" alt="" width="500" height="364" /></a></p>
<p> </p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small;font-family: Calibri">Instead of the one for CardSpace <strong>with</strong> SSL…</span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><a href="http://blogs.southworks.net/fboerr/files/2008/06/cardspacessl.png"><img class="alignnone size-full wp-image-15" src="http://blogs.southworks.net/fboerr/files/2008/06/cardspacessl.png" alt="" width="500" height="364" /></a></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt">
<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: 11pt;font-family: 'Calibri','sans-serif'"><strong></strong></span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: 11pt;font-family: 'Calibri','sans-serif'"><strong></strong></span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: 11pt;font-family: 'Calibri','sans-serif'"><strong><a title="Go to post" href="/blogs/fboerr/archive/2007/12/01/Implications-of-using-CardSpace-on-an-unsecure-connection-_2800_without-SSL_2900_.aspx" target="_blank">This little difference has big implications</a></strong></span><span style="font-size: 11pt;font-family: 'Calibri','sans-serif'">.</span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt">
<p class="MsoNormal" style="margin: 0in 0in 10pt"> </p>
<img src="http://feeds.feedburner.com/~r/fboerr/~4/UZ9GzGxb4gI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.southworks.net/fboerr/2007/12/02/cardspace-now-supports-connections-over-http/feed/</wfw:commentRss>
		<feedburner:origLink>http://blogs.southworks.net/fboerr/2007/12/02/cardspace-now-supports-connections-over-http/</feedburner:origLink></item>
		<item>
		<title>Implications of using CardSpace on an unsecure connection (without SSL)</title>
		<link>http://feeds.southworks.net/~r/fboerr/~3/miZ0njDPe0Y/</link>
		<comments>http://blogs.southworks.net/fboerr/2007/12/02/implications-of-using-cardspace-on-an-unsecure-connection-without-ssl/#comments</comments>
		<pubDate>Sun, 02 Dec 2007 04:42:00 +0000</pubDate>
		<dc:creator>fboerr</dc:creator>
		
		<category><![CDATA[CardSpace]]></category>

		<guid isPermaLink="false">/blogs/fboerr/archive/2007/12/01/Implications-of-using-CardSpace-on-an-unsecure-connection-_2800_without-SSL_2900_.aspx</guid>
		<description><![CDATA[As Vittorio wrote in his blog, choosing to use CardSpace over http unsecure connections have 2 mayor consequences:

1 - Data in not encrypted, anyone listening on the wire can read the messages.
2 – The domain is not authenticated by any authority.

 
 
He wrote: “So, let me stress this one more time: we are still using asymmetric [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small;font-family: Calibri">As <strong><a title="Vittorio's Blog" href="http://blogs.msdn.com/vbertocci/archive/2007/09/25/windows-cardspace-will-work-without-https-too.aspx" target="_blank">Vittorio wrote in his blog</a></strong>, choosing to use CardSpace over http unsecure connections have 2 mayor consequences:</span></p>
<div style="padding-right: 4pt;padding-left: 4pt;padding-bottom: 1pt;padding-top: 1pt;border: windowtext 1pt solid">
<p class="MsoNormal" style="margin: 0in 0in 10pt;border: medium none;padding: 0in"><strong><span style="font-size: 14pt"><span style="font-family: Calibri">1 - Data in not encrypted, anyone listening on the wire can read the messages.</span></span></strong></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt;border: medium none;padding: 0in"><strong><span style="font-size: 14pt"><span style="font-family: Calibri">2 – The domain is not authenticated by any authority.</span></span></strong></p>
</div>
<p class="MsoNormal" style="margin: 0in 0in 10pt"> </p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"> </p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small;font-family: Calibri">He wrote: “</span><span><span style="font-family: Calibri"><span style="font-size: small">So, let me stress this one more time: <strong><span style="text-decoration: underline"><span style="font-family: 'Calibri','sans-serif'">we are still using asymmetric cryptography here. The UniqueID check is as solid as it with HTTPS, losing the transport encryption does not affect it.</span></span></strong></span></span><strong><span style="font-weight: normal;font-family: 'Calibri','sans-serif'"><span style="font-size: small">”</span></span></strong></span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small;font-family: Calibri">The identity for authentication can still be verified because the only one who has the private key for signing the PPID is the user requiring authentication.</span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt"><span style="font-size: small;font-family: Calibri">Additionally, the second consequence brings the bigger menace. The <strong><a title="man-in-the-middle attack" href="http://en.wikipedia.org/wiki/Man-in-the-middle_attack" target="_blank">man-in-the-middle attack</a> </strong>can be used, taking advantage of the fact that no Certificate Authority is certifying the domain the user is connecting to.</span></p>
<img src="http://feeds.feedburner.com/~r/fboerr/~4/miZ0njDPe0Y" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.southworks.net/fboerr/2007/12/02/implications-of-using-cardspace-on-an-unsecure-connection-without-ssl/feed/</wfw:commentRss>
		<feedburner:origLink>http://blogs.southworks.net/fboerr/2007/12/02/implications-of-using-cardspace-on-an-unsecure-connection-without-ssl/</feedburner:origLink></item>
	</channel>
</rss>
