<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-29173677</id><updated>2011-12-14T08:03:56.183-08:00</updated><category term='Safety'/><category term='nbc identity'/><category term='year-in-review'/><category term='education'/><category term='portals'/><category term='concordia'/><category term='sysadmin'/><category term='trust'/><category term='identiy'/><category term='development'/><category term='geekdom'/><category term='christmas'/><category term='gadget'/><category term='privacy'/><category term='web hosted'/><category term='relationships'/><category term='accessiblity'/><category term='authz'/><category term='united'/><category term='tax'/><category term='green'/><category term='gifts'/><category term='travel'/><category term='browser'/><category term='spam'/><category term='blog tag'/><category term='family'/><category term='attributes'/><category term='video'/><category term='dulles'/><category term='cpu'/><category term='backup'/><category term='voting'/><category term='math'/><category term='liberty'/><category term='appliance'/><category term='speaking'/><category term='security'/><category term='programming'/><category term='social security'/><category term='federation'/><category term='college'/><category term='music'/><category term='ripoff'/><category term='how-to'/><category term='self defense'/><category term='gps'/><category term='digitizing life'/><category term='phishing'/><category term='social networks'/><category term='patent'/><category term='web2.0'/><category term='telephony'/><category term='identity'/><category term='high definition'/><category term='about me'/><category term='saml'/><category term='standards'/><category term='fun'/><category term='collections'/><category term='scam'/><category term='identity theft'/><category term='vista'/><title type='text'>Conor's Web Log of Esoterica</title><subtitle type='html'>Hey, I just happen to have an opinion or two...</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default?start-index=101&amp;max-results=100'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>268</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-29173677.post-576661673170766145</id><published>2010-06-12T06:03:00.000-07:00</published><updated>2010-06-12T06:43:49.628-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><category scheme='http://www.blogger.com/atom/ns#' term='privacy'/><title type='text'>Rethinking analysis of Google's AP data capture</title><content type='html'>&lt;p&gt;In "&lt;a href="http://www.identityblog.com/?p=1121"&gt;&lt;span style="font-style:italic;"&gt;Rethink things in light of Google's Gstumbler report&lt;/span&gt;&lt;/a&gt;," &lt;a href="http://www.identityblog.com/"&gt;Kim Cameron&lt;/a&gt; asks that we rethink our analysis of &lt;a href="http://www.google.com"&gt;Google&lt;/a&gt;'s wireless data capture in light of the &lt;a href="http://static.googleusercontent.com/external_content/untrusted_dlcp/www.google.com/en/us/googleblogs/pdfs/friedberg_sourcecode_analysis_060910.pdf"&gt;third-party analysis of the gstumbler data capture software&lt;/a&gt;.  In particular he seems to have a particular fondness for the phrase "wrong," "completely wrong," and "wishful thinking" when referring to my comments on the topic. In my defense, I will say that there was no "wishful thinking" going on in my mind.  I was just examining the published information rather than jumping to conclusions -- something that I will &lt;span style="font-weight:bold;"&gt;always&lt;/span&gt; advocate.   In this case, after examining the published report, it does appear that those who jumped to conclusions happened to be closer to the mark, but I still think they were wrong to jump to those conclusions until the actual facts had been published.&lt;/p&gt;
&lt;p&gt;I read through the entire report and have to say that the information in the report is quite different than the information that had been published at the time I expressed my opinions on the events at hand.  The differences include:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;We had been led to believe that Google had only captured data on open wireless networks (networks that broadcast their SSIDs and/or were unencrypted).  The analysis of the software shows that to be incorrect -- Google captured data on every network regardless of the state of openness.  So no matter what the user did to try to protect their network, Google captured data that the underlying protocols required to be transmitted in the clear.&lt;/li&gt;
&lt;li&gt;We had been led to believe that Google had only captured data from wireless access points (APs).   Again the analysis shows that this was incorrect -- Google captured data on any device for which it was able to capture the wireless traffic for (AP or user device).  So portable devices that were currently transmitting as the Street View vehicle passed would have their data captured.&lt;br&gt;
&lt;p&gt;One factor that is potentially in the user's favor is that the typical wireless configuration would encourage portable devices to transmit at just enough power for the AP to hear them (devices on wireless networks do not talk directly to each other).  Depending upon the household configuration, it is possible (probable?) that a number of devices would not be transmitting strongly enough for them to be detected from a vehicle out in the middle of the street.  However, if Google had a big honking antenna on the vehicle with lots of gain in the right frequencies, it could have detected every device within the house.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Given this &lt;span style="font-weight:bold;"&gt;new&lt;/span&gt; information I would have to agree that Google has clearly stepped into the arena of doing something that could be detrimental to the user's privacy.&lt;/p&gt;
&lt;p&gt;That said, however, we need to be a little careful about the automatic assumption that the intent was to put all of this data into some global database.   In fact, the way the data was captured -- the header of every data packet was captured, many of which would contain duplicate information -- makes it clear that Google intended to do some post-processing of the data.  One could hope that they would use this post-processing step to restrict the data making it into any general, world-wide database.   Of course, we don't know whether or not they would do this and even if they would, they still have that raw data capture which contains information that could clearly be used to the users detriment.&lt;/p&gt;
&lt;p&gt;In addition, the fact that we know that Google did this, doesn't preclude the fact that others can be doing this (or have already done this) without publicizing that they have done so -- especially those who do intend to use this information for nefarious purposes.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-weight:bold;"&gt;We should take this incident as a wake-up call to start building privacy into the foundations of our programs and protocols&lt;/span&gt;.
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags :
  &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
/ &lt;a href="http://technorati.com/tag/privacy" rel="tag"&gt;privacy&lt;/a&gt;
/ &lt;a href="http://technorati.com/tag/google" rel="tag"&gt;google&lt;/a&gt;
/ &lt;a href="http://technorati.com/tag/ssid" rel="tag"&gt;SSID&lt;/a&gt;
/ &lt;a href="http://technorati.com/tag/gstumbler" rel="tag"&gt;Gstumbler&lt;/a&gt;
/ &lt;a href="http://technorati.com/tag/privacy" rel="tag"&gt;privacy&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-576661673170766145?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/576661673170766145/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=576661673170766145' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/576661673170766145'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/576661673170766145'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2010/06/rethinking-analysis-of-googles-ap-data.html' title='Rethinking analysis of Google&apos;s AP data capture'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-4002486280868309961</id><published>2010-06-07T08:47:00.001-07:00</published><updated>2010-06-12T06:43:54.111-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><category scheme='http://www.blogger.com/atom/ns#' term='privacy'/><title type='text'>Kim vs. Google summary...</title><content type='html'>&lt;p&gt;As &lt;a href="http://www.identityblog.com/"&gt;Kim&lt;/a&gt; and my &lt;a href="http://www.identityblog.com/?p=1113"&gt;ongoing blog discussion&lt;/a&gt; seems to have gone off on various tangents (what some might call "&lt;i&gt;rat holes&lt;/i&gt;") I thought it best to try to bring things together in a single summary (which I'm sure will probably generate more tangents.&lt;/P&gt;
&lt;p&gt;Lets list some of the facts/opinions that have come out in the discussion:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;MAC addresses typically are persistent identifiers that by the definition of the protocols used in wireless APs can't be hidden from snoopers, even if you turn on encryption.&lt;/li&gt;
&lt;li&gt;By themselves, MAC addresses are not all that useful except to communicate with a local network entity (so you need to be nearby on the same local network to use them.&lt;/li&gt;
&lt;li&gt;When you combine MAC addresses with other information (locality, user identity, etc.) you can be creating worrisome data aggregations that when exposed publicly could have a detrimental impact on a user's privacy.&lt;/li&gt;
&lt;li&gt;SSIDs have some of these properties as well, though the protocol clearly gives the user control over whether or not to broadcast (publicize) their SSID.  The choice of the SSID value can have a substantial impact on it's use as a privacy invading value -- a generic value such as "home" or "linksys" is much less likely to be a privacy issue than "ConorCahillsHomeAP".&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.google.com"&gt;Google&lt;/a&gt; purposely collected SSID and MAC Addresses from APs which were configured in SSID broadcast mode and inadvertently collected some network traffic data from those same APs.   Google &lt;b&gt;did not&lt;/b&gt; collect information from APs configured to not broadcast SSIDs.&lt;/li&gt;
&lt;li&gt;Google associated the SSID and MAC information with some location information (probably the GPS vehicle location at the time the AP signal was strongest).&lt;/li&gt;
&lt;li&gt;There is no AP protocol defined means to differentiate between open wireless hotspots and closed hotspots which broadcast their SSIDs.&lt;/li&gt;
&lt;li&gt;I have not found out if Google used the encryption status of the APs in its decision about recording the SSID/MAC information for the AP.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Now we get to the point where there are differences of opinion.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Kim believes that since there's no way for the user to configure whether or not to expose their MAC address and because the association of the MAC address to other information could be privacy invasive, that Google should not have collected that data without express user consent to do so and that in this case Google did not have user consent.&lt;br&gt;
&lt;p&gt;I believe that Google's treatment of the user's decision to broadcast their SSID as an implicit consent for someone to record that SSID and the associated MAC address is a valid and reasonable interpretation.  If the user doesn't want their SSID and MAC address collected, they should configure their system to not broadcast their SSID.&lt;/p&gt;
&lt;p&gt;Yes, even with the SSID broadcast turned off, some other party can easily determine the APs MAC address and this would clearly have potential negative impacts on the user's privacy, but that's a technical protocol issue not Google's issue since they clearly interpreted SSID silence to be a user's decision to keep their information private and respected that decision.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;In "&lt;a href="http://www.identityblog.com/?p=1111"&gt;What harm can come from a MAC address?&lt;/a&gt;" Kim seems to argue that because there's some potential way for an entity to abuse a piece of data, that any and all uses of that data should be prohibited.   So, because an evil person could capture your mac address of your phone and then drive along the neighborhood to find that mac address and therefore find your home, any use of mac addresses other than their original intent is evil and should be outlawed.&lt;br&gt;
&lt;p&gt;I believe that it's much better to outlaw what would clearly be illegal activity rather than trying to outlaw all possible uses.   So, in this particular case, the stalker should be prohibited from using *any* means to track/identify users with the intent of committing a crime (or something like that).&lt;/p&gt;
&lt;p&gt;Blindly prohibiting all uses will block useful features.  For example, giving my device a means of establishing a location of where it is to obtain some location services without revealing to me the basis for that location is a useful feature that I have made use of on my iPhone and I don't believe that I've violated anyone's privacy in using this type of information to know where I am (to do things such as get a list of movies playing at the nearest theatre via the Fandango application).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;Kim doesn't seem to have responded at all to my criticism of the privacy advocates failing to use this case as a learning experience for users to help them configure their APs in a way that best protects their privacy.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;In summary, I do agree that MAC addresses could be abused if associated with an end-user and used for some nefarious purpose.  However, I don't believe that Google was doing either of these.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags :
  &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
/ &lt;a href="http://technorati.com/tag/privacy" rel="tag"&gt;privacy&lt;/a&gt;
/ &lt;a href="http://technorati.com/tag/google" rel="tag"&gt;google&lt;/a&gt;
/ &lt;a href="http://technorati.com/tag/ssid" rel="tag"&gt;SSID&lt;/a&gt;
/ &lt;a href="http://technorati.com/tag/privacy" rel="tag"&gt;privacy&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-4002486280868309961?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/4002486280868309961/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=4002486280868309961' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/4002486280868309961'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/4002486280868309961'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2010/06/kim-vs-google-summary.html' title='Kim vs. Google summary...'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-7004312230528377927</id><published>2010-06-06T08:22:00.000-07:00</published><updated>2010-06-06T08:59:00.420-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><category scheme='http://www.blogger.com/atom/ns#' term='privacy'/><title type='text'>House numbers vs SSIDs</title><content type='html'>In "&lt;a href="http://www.identityblog.com/?p=1108"&gt;Are SSIDs and mac addresses like house numbers?&lt;/a&gt;" &lt;a href="http://www.identityblog.com/"&gt;Kim Cameron&lt;/a&gt; argues against my characterization of SSIDs and mac addresses being like house numbers:
&lt;blockquote&gt;
&lt;p&gt;Let&amp;#8217;s think about this.  Are SSIDs and MAC addresses like house numbers?&lt;/p&gt;
&lt;p&gt;Your house number is used - by anyone in the world who wants to find it - to get to your house.  Your house was given a number for that purpose.  The people who live in the houses like this.  They actually run out and buy little house number things, and nail them up on the side of their houses, to advertise clearly what number they are.&lt;/p&gt;
&lt;p&gt;So let&amp;#8217;s see:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Are SSIDS and MAC addresses used by anyone in the world to get through to your network?  No.  A DNS name would be used for that.  In residential neighborhoods, you employ a SSID for only one reason - to make it easier to get wireless working for members of your family and their visitors.  Your intent is for the wireless access point&amp;#8217;s MAC address to be used only by your family&amp;#8217;s devices, and the MACs of their devices only by the other devices in the house.&lt;/li&gt;
&lt;li&gt;Were SSIDS and MAC addressed invented to allow anyone in the world to find the devices in your house?   No, nothing like that.&lt;/li&gt;
&lt;li&gt;Do people consciously try to advertise their SSIDs and MAC addresses to the world by running to the store, buying them, and nailing them to their metaphorical porches?  Nope again.  Zero analogy.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;So what is similar?  Nothing.&lt;/strong&gt; &lt;/p&gt;
&lt;p&gt;That&amp;#8217;s because house addresses are what, in Law Four of the &lt;a href="http://www.identityblog.com/wp-content/images/2009/06/7_Laws.htm"&gt;Laws of Identity&lt;/a&gt;, were called &amp;#8220;universal identifiers&amp;#8221;, while SSIDs and MAC addresses are what were called &amp;#8220;unidirectional identifiers&amp;#8221; - meaning that they were intended to be constrained to use in a single context. &lt;/p&gt;
&lt;p&gt;Keeping &amp;#8220;unidirectional identifiers&amp;#8221; private to their context is essential for privacy.  And let me be clear: I&amp;#8217;m not refering only to the privacy of individuals, but also that of enterprises, governments and organizations.  Protecting unidirectional identifiers is essential for building a secure and trustworthy Internet.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;P&gt;This argument confuses &lt;b&gt;house address&lt;/b&gt; with &lt;b&gt;house number&lt;/b&gt;.   A &lt;i&gt;house number&lt;/i&gt; is &lt;b&gt;not&lt;/b&gt; able to be used as a universal identifier (I presume that there are many houses out there with the number 15, even in the same town, many times even on the same street in the same zip code (where the only difference is the N.W. and S.E. on the end of the street name).&lt;/P&gt;
&lt;P&gt;Like SSIDs and mac addresses, the house number is only usable as an identifier once you get to the neighborhood and very often only once you get to the street.&lt;/p&gt;
&lt;P&gt;People choose to advertise SSIDs so they themselves and others will have an easy time connecting with their network once they are within range of the AP - as evidenced by&lt;a href="http://paranoidmike.blogspot.com/"&gt; Mike's&lt;/a&gt; &lt;a href="http://conorcahill.blogspot.com/2010/06/privacy-theatre.html?showComment=1275667112308#c8176159072137723242"&gt;comment on my previous article&lt;/a&gt; (and, the reason why I have chosen to configure my SSID as broadcast).   Yes, many people don't know enough to make that decision and perhaps sometimes choose to do what others might consider a wrong thing, but a) that's part of my issue with the wireless AP industry and with the privacy folks not using this as a good educational example.&lt;/p&gt;
&lt;P&gt;So while people don't need to go to the hardware store to buy the number to put up on their house, they can, and many do, choose the electronic equivalent when they setup their AP.&lt;/P&gt;
&lt;P&gt;House numbers are very much unidirectional identifiers used within the context of a given address (street, city, state, country, postal cod) just as SSIDs and MAC addresses are.&lt;P&gt;
&lt;P&gt;I will admit that there are some differences with the mac address because of how basic Ethernet networking was designed.  The mac address is designed to be unique (though, those in networking know that this isn't always the case and in fact most devices let you override the mac address anytime you want).  So this could be claimed to be some form of a universal identifier.  However, it's not at all usable outside of the local neighborhood.  There is no way for me to talk to a particular mac address unless I am locally on the same network with that device.&lt;/P&gt;
&lt;P&gt;I do believe that a more privacy enabled design of networking would have allowed for scenarios where mac addresses were more dynamic and thus reducing the universal-ness and persistence of the mac address itself.   However, that's an issue for network design and I don't think that what Google did was a substantial privacy issue for the user.&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags :
  &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
/ &lt;a href="http://technorati.com/tag/privacy" rel="tag"&gt;privacy&lt;/a&gt;
/ &lt;a href="http://technorati.com/tag/google" rel="tag"&gt;google&lt;/a&gt;
/ &lt;a href="http://technorati.com/tag/ssid" rel="tag"&gt;SSID&lt;/a&gt;
/ &lt;a href="http://technorati.com/tag/privacy" rel="tag"&gt;privacy&lt;/a&gt;
/ &lt;a href="http://technorati.com/tag/privacy" rel="tag"&gt;privacy&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-7004312230528377927?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/7004312230528377927/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=7004312230528377927' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/7004312230528377927'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/7004312230528377927'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2010/06/house-numbers-vs-ssids.html' title='House numbers vs SSIDs'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-3642620541951265723</id><published>2010-06-04T04:26:00.000-07:00</published><updated>2010-06-04T05:34:00.785-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><category scheme='http://www.blogger.com/atom/ns#' term='privacy'/><title type='text'>Privacy Theatre</title><content type='html'>&lt;p&gt;In a series of &lt;a href="http://www.identityblog.com/?p=1107"&gt;blog articles&lt;/a&gt;, &lt;a href="http://www.identityblog.com/"&gt;Kim Cameron&lt;/a&gt; and &lt;a href="http://twitter.com/benadida"&gt;Ben Adida&lt;/a&gt; discuss Google's capturing of open access point information as part of its &lt;a href="http://maps.google.com/streetview/"&gt;Street View&lt;/a&gt; project.&lt;/p&gt;
&lt;p&gt;Kim's assertion that Google was wrong to do so is based upon two primary factors:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Google intended to capture the SSID and mac address of the access points&lt;/li&gt;
&lt;li&gt;SSIDs and mac addresses are persistent identifiers&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;And it seems that this has at least gotten Ben re-thinking his assertion that this was all about privacy theater and even him giving Kim a get-out-of-jail-free card.&lt;/p&gt;
&lt;p&gt;While I agree that Kim's asserted facts are true, I disagree with his conclusion.  
&lt;ul&gt;
&lt;li&gt;I don't believe Google did anything wrong in collecting SSIDs and mac addresses (capturing data, perhaps).   The SSIDs were configured to *broadcast* (to make something known widely).  However, SSIDs and mac addresses are local identifiers more like house numbers.  They identify entities within the local wireless network and are generally not re-transmitted beyond that wireless network. &lt;/li&gt;
&lt;li&gt;I don't believe that what they did had an impact on the user's privacy. As I pointed out above, it's like capturing house numbers and associating them with a location.  That, in itself, has little to do with the user's privacy unless something else associates the location with the user.&lt;/li&gt;
&lt;li&gt;I hold the wireless AP industry responsible for the fact that many users don't have their APs setup in SSID stealth and data encrypted mode.  The AP industry should have designed things so that they were encrypted by default with hidden SSIDs and required the user to do something to create an open network if they wanted to. &lt;/li&gt;
&lt;li&gt;The user has to assume some responsibility here, though I really don't expect my mother to know how to configure encryption on an AP (nor do I expect her to know enough to know it's necessary).  So I'm back to the AP industry.&lt;/li&gt;
&lt;li&gt;And, perhaps most of all, I fault the various privacy pundits and all the news outlets who did not take this as an opportunity to teach the users and the industry about how to protect their data.  Not one report that I read/saw went into any detail on how the user could protect themselves (which, if they still broadcast their SSIDs and leave their network unencrypted they are open to much worse attacks than Google capturing their SID &amp;amp; mac address).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Perhaps my view is contrarian for one who is somewhat active on the privacy side.  However, I think it is a much more pragmatic view that will ultimately bring value to the user far beyond giving Google a hard time for capturing SSIDs and mac addresses which have little privacy value (in my opinion).&lt;/p&gt;


&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags :
  &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
/ &lt;a href="http://technorati.com/tag/privacy" rel="tag"&gt;privacy&lt;/a&gt;
/ &lt;a href="http://technorati.com/tag/google" rel="tag"&gt;google&lt;/a&gt;
/ &lt;a href="http://technorati.com/tag/ssid" rel="tag"&gt;SSID&lt;/a&gt;
/ &lt;a href="http://technorati.com/tag/privacy" rel="tag"&gt;privacy&lt;/a&gt;
/ &lt;a href="http://technorati.com/tag/privacy" rel="tag"&gt;privacy&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-3642620541951265723?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/3642620541951265723/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=3642620541951265723' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3642620541951265723'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3642620541951265723'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2010/06/privacy-theatre.html' title='Privacy Theatre'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-1519268774206479254</id><published>2010-01-23T05:00:00.000-08:00</published><updated>2010-01-23T05:27:35.256-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='privacy'/><title type='text'>Consent for my own software to look at my data???</title><content type='html'>&lt;p&gt;Here in the US (and I presume elsewhere) the annual rite of passage of doing one's taxes is upon use yet again.   Once you've done something crazy like getting married, having kids or buying a house, the whole process gets more and more complicated as you try to minimize the amount of taxes you owe Uncle Sam.&lt;/p&gt;
&lt;p&gt;I've always done my own taxes and for the past 10 or 15 years, I've used &lt;a href="http://www.intuit.com"&gt;Intuit's&lt;/a&gt; &lt;a href="http://turbotax.intuit.com/"&gt;Turbo Tax&lt;/a&gt; software to do so.   I still can't bring myself to do the taxes online -- I can't help feeling that there's just something wrong about not keeping that data in house.&lt;/p&gt;
&lt;p&gt;Anyway, yesterday I installed TurboTax to start working on my 2009 taxes (yeah, I'm a bit early, but I like to do it piecemeal as I receive tax reports and have spare cycles here and there).&lt;/p&gt;
&lt;p&gt;Following the installation, I was prompted with the following consent screen:&lt;/p&gt;
&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_SEiYV06qGYE/S1rzhJejS0I/AAAAAAAAGXs/2y2se0TLHLA/s1600-h/TurboTaxConsent.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 398px;" src="http://4.bp.blogspot.com/_SEiYV06qGYE/S1rzhJejS0I/AAAAAAAAGXs/2y2se0TLHLA/s400/TurboTaxConsent.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5429920051553848130" /&gt;&lt;/a&gt;
&lt;p&gt;If you look carefully, essentially the screen is asking if you give consent to release data to Intuit so that they can figure out whether they should offer you extra paid tax preparation services (paid out of your return) and/or a chance for you to get some portion of your return on a debit card.  So they want to use the information on your return to market additional services to you.&lt;/p&gt;
&lt;p&gt;What isn't clear to me from the disclosure is: are you actually giving the information to Intuit (in other words, is it being transferred to an Intuit server off-system) or is the consent is about the software that you've purchased and installed on your computer looking at the data locally.&lt;/p&gt;
&lt;p&gt;If the former, then I think that they should explicitly say that the data is being transferred to an Intuit server as that isn't clear in the disclosure.&lt;/p&gt;
&lt;p&gt;If the latter, why the heck is that necessary.  It's my software that I purchased and it's keeping the data locally on my system.  Intuit never sees the data unless I specifically send it to them for one reason or another.   If this is really required by law, how does that match up with the &lt;a href="http://financialplan.about.com/cs/taxes/a/TaxRefundLoans.htm"&gt;"instant refund" or "refund anticipation loans"&lt;/a&gt; offered by the likes of &lt;a href="http://www.hrblock.com"&gt;H&amp;R Block&lt;/a&gt; or &lt;a href="http://www.jacksonhewitt.com/"&gt;Jackson Hewitt&lt;/a&gt;?  Do they have to get you to sign a similar consent form before they can "notice" that you're getting a loan and offer to give it to you instantly (at great cost to you, of course)?&lt;/p&gt;
&lt;p&gt;Even if it is the crazy latter situation, the consent should clearly state that the data is not leaving the system, that it is only being used by the software I just installed.&lt;/p&gt;
&lt;p&gt;In any case, I did not consent to any data release... I'll wait for my money to show up when it shows up (assuming I even get a refund, which isn't always the case).&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/taxes" rel="tag"&gt;taxes&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/privacy" rel="tag"&gt;privacy&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/intuit" rel="tag"&gt;Intuit&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/turbotax" rel="tag"&gt;TurboTax&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-1519268774206479254?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/1519268774206479254/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=1519268774206479254' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/1519268774206479254'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/1519268774206479254'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2010/01/consent-for-my-own-software-to-look-at.html' title='Consent for my own software to look at my data???'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_SEiYV06qGYE/S1rzhJejS0I/AAAAAAAAGXs/2y2se0TLHLA/s72-c/TurboTaxConsent.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-5571160892977337388</id><published>2010-01-10T13:43:00.000-08:00</published><updated>2010-01-15T18:07:12.313-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><title type='text'>Setting up a new ubuntu server</title><content type='html'>&lt;p&gt;I've been running my own mail server for close to 20 years... Through
years, I've gone from Interactive Unix (how many of you remember that one!) to
&lt;a href="http://www.redhat.com/"&gt;Red Hat Linux&lt;/a&gt; to&lt;a href="http://fedoraproject.org/"&gt; Fedora Linux&lt;/a&gt; and now I'm moving to &lt;a href="http://www.ubuntu.com/"&gt;Ubunto&lt;/a&gt; (in
part thanks to the strong recommendations I've gotten from friends, especially &lt;a href="http://blog.superpat.com/"&gt;Pat Patterson&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I host several services on my server and because we're at the end of a
relatively slow pipe, I use a dedicated server hosted at
&lt;a href="http://www.superbhosting.net/"&gt;Superb Hosting&lt;/a&gt;.   I use a
dedicated server rather than the more typical web hosting or shared hosting
because it gives me better control over my services and because I host
a bunch of email domains for friends (some of which I simply forward to
their current ISP and some who actually get their mail from my system.&lt;/p&gt;
&lt;p&gt;So, I needed to setup the following services on my server:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;DNS services for the 12 or so domans I manage (2 of my own and
the rest friends &amp;amp; family).&lt;/li&gt;
&lt;li&gt;Web server for my personal site.&lt;/li&gt;
&lt;li&gt;Email services for something like 12 domains as well.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Sounds simple, doesn't it?&lt;/p&gt;
&lt;p&gt;Well, it wasn't that simple, but mostly becuase a) I was learning new
ways that things are done on Ubuntu vs Fedora, b) the tweaks of how I wnat
to do things typically involves manual configuration changes that aren't
always easily discerned from reading the man pages, and c) I like to
understand the why as well as the how when doing administrative stuff so
I spend a lot of time reading/reviewing/searching as I make my changes.&lt;/p&gt;
&lt;p&gt;BTW - I'm not only willing, but actually want to do this so that I
can keep my hands a bit dirty (and maintain some basic understanding of
the current technologies used on servers).  At work, they keep my grubby
little hands far away from the system adminstartion side of the houose.&lt;/p&gt;
&lt;p&gt;Anyway, I thougt it would be useful to document what I went through as
I setup the server as it may help others trying to do the same things.&lt;/p&gt;
&lt;p&gt;One note about the commands shown below: I logged in as &lt;i&gt;root&lt;/i&gt; to do
the configuration, so you don't see "&lt;b&gt;sudo&lt;/b&gt; &lt;i&gt;(command)&lt;/i&gt;" for all
of the various commands.   Some would say this might be a more dangerous
way to configure the system and I would agree for onsey twosey administrative
commands.  However, for a long term session where you're doing &lt;b&gt;nothing&lt;/b&gt;
other than administrative commands, &lt;i&gt;sudo&lt;/i&gt; just gets in the way.  And
yes, you need to be careful when you're logged in as &lt;i&gt;root&lt;/i&gt;.&lt;/p&gt;
&lt;p&gt;The following sections are presented below&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="#OSUpdates"&gt;OS Updates&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#Miscellaneous"&gt;Miscellaneous Tools&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#Firewall"&gt;Firewall&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#Backup"&gt;Backup&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#Bind9"&gt;Bind 9 (DNS Server)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#WebServer"&gt;Web Server&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#Proxies"&gt;Proxies&lt;/a&gt;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="#Proxies_Socks5"&gt;Socks 5 Proxy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#Proxies_WebProxy"&gt;Web (HTTP/HTTPS) Proxy Server&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;&lt;a href="#MailServer"&gt;Mail Server &lt;/a&gt;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="#MailServer_Clients"&gt;Mail Clients&lt;/a&gt;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="#MailServer_Clients_SSL"&gt;Secure Sockets Layer (SSL)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#MailServer_Clients_imap"&gt;IMAP and POP&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#MailServer_Clients_smtp"&gt;Authenticated SMTP&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#MailServer_Clients_web"&gt;Web Server Mail Client&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;&lt;a href="#MailServer_Spam"&gt;SPAM Filtering&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#MailServer_Switch"&gt;The Switchover&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;h2 id="OSUpdates"&gt;OS Updates&lt;/h2&gt;
&lt;p&gt;First step with any new system is to ensure that I have the latest
and greatest software installed -- this is expecially important on an
internet visible server.&lt;/p&gt;
&lt;p&gt;This involved running the following commands:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;
apt-get update         # to update the apt-get configuration/data files
apt-get dist-upgrade   # to upgrade all insalled packages to latest versions
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;This made sure I had the latest patches for this release of the OS.
However, I wanted also to make sure I had the latest OS version.  For
Ubuntu, they have two development lines for servers:  a somewhat frequently
changing/evolving line and a more stable Long Term Support (LTS) line.
Both lines get security patches regularly but LTS gets them for several years
longer while the fast changing line will more frequently require you to
upgrade to the latest OS version for patches.&lt;/p&gt;
&lt;p&gt;Given what I do with the server, using the LTS line is the right thing
for me to do (which is the version that was installed by my provider).  So
I ran the follwing commands to ensure I had the latest version:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;
apt-get install update-manager-core
do-release-upgrade
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;WHich reported that there was "&lt;i&gt;No new release found&lt;/i&gt;" which is
correct as 8.04LTS is the latest LTS.&lt;/p&gt;
&lt;p&gt;If, on the other hand, I wanted the latest OS rev (not just the latest
LTS OS rev), I could have edited the file: &lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;
/etc/update-manager/release-upgrades
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;and changed the line "&lt;i&gt;Prompt=lts&lt;/i&gt;" to "&lt;i&gt;Prompt=normal&lt;/i&gt;"

&lt;/p&gt;&lt;hr /&gt;
&lt;h2 id="Miscellaneous"&gt;Miscellaneous Tools&lt;/h2&gt;
&lt;p&gt;As I went throught the isntallation and setup, I found a number of tools
were missing that I had to install to do the things I wanted to do, so I'll
list them here...&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;b&gt;System V Configuration files&lt;/b&gt;
&lt;p&gt;I like to use the System V commands for managing the system (including the
&lt;i&gt;service&lt;/i&gt; command to start/stop init.d services).&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;apt-get install sysvconfig&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Make&lt;/b&gt;
&lt;p&gt;I use a lot of Makefiles for managing the build and installation of software
and packages.  I was a bit suprised that my server didn't include that by
default, but I presume that was because it is a server and doesn't have the
development system installed either.  &lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;apt-get install make&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;hr /&gt;
&lt;h2 id="Firewall"&gt;Firewall&lt;/h2&gt;
&lt;p&gt;First thing to do is get the firewall up and running. While I plan
to tightly control which services are exposed on which ports, I still
feel much more comfortable having an explisit list of ports which are
accessible from the internet at large.   I also like to setup and test
services locally while the are still blocked (including only opening up
access from my own systems so I can even do remote testing without worrying
about others getting into the server while it is a work-in-progress.&lt;/p&gt;
&lt;p&gt;I use an iptables based firewall that is manually configured for the
system.  I've been using pretty much the same setup for years though I
continuously tweak it.  The script is written as an init.d service script
so that I can install it there and have it automatically run it at system
startup. &lt;/p&gt;
&lt;p&gt;In addition to the typicall port protections, I also keep a blacklist
of IPs for which I block all access to my server.   Systems get on this
list when I see that they are trying to hack into my system via repeated
SSH login attempts.&lt;/p&gt;
&lt;p&gt;The core iptables rules in the script include:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;
#
# Create a new chain named "filter" and "OFilter"
#
iptables -N filter                # add the new chain

#
# allow established connections
#
iptables -A filter -m state --state ESTABLISHED,RELATED -j ACCEPT

#
# if there are any ports to be dropped
#
if [ -f "${FILE_DroppedPorts}" ]; then
  grep -v "^#" "${FILE_DroppedPorts}" | while  read proto port
  do
      #
      # for non-blank lines
      #
      if [ x${proto} != x ]; then
          iptables -A filter -i eth0 -p ${proto} --dport ${port} -j DROP
      fi
  done
fi

#
# if there are any blocked IPs
#
if [ -f "${FILE_BlockedIPs}" ]; then
  grep -v "^#" "${FILE_BlockedIPs}" | while  read ip
  do
      if [ x${ip} != x ]; then
          iptables -A filter -s ${ip} -j LOG
          iptables -A filter -s ${ip} -j DROP
      fi
  done
fi

#
# allow ssh to this host from anywhere
#
iptables -A filter -p tcp --dport ssh -j ACCEPT

#
# allow HTTP/HTTPS to this host
#
iptables -A filter -i eth0 -p tcp --dport http  -j ACCEPT
iptables -A filter -i eth0 -p tcp --dport https -j ACCEPT

#
# allow SMTP, SMTPS and SMTP/TLS to this host
#
iptables -A filter -i eth0 -p tcp --dport smtp  -j ACCEPT
iptables -A filter -i eth0 -p tcp --dport smtps -j ACCEPT
iptables -A filter -i eth0 -p tcp --dport 587   -j ACCEPT

#
# allow IMAPs &amp;amp; POP3s to this host
#
iptables -A filter -i eth0 -p tcp --dport 993 -j ACCEPT
iptables -A filter -i eth0 -p tcp --dport 995 -j ACCEPT

#
# Allow DNS lookups to this host
#
iptables -A filter -i eth0 -p tcp --dport domain -j ACCEPT
iptables -A filter -i eth0 -p udp --dport domain -j ACCEPT
iptables -A filter -i eth0 \
             -p udp --sport domain --dport 1024: -j ACCEPT

#
# allow outgoing ftp connections
#
iptables -A filter  -p tcp --sport 21 \
              -m state --state ESTABLISHED -j ACCEPT
iptables -A filter -p tcp --sport 20 \
              -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A filter -p tcp --sport 1024: --dport 1024:  \
              -m state --state ESTABLISHED -j ACCEPT

#
# let people ping us
#
iptables -A filter -p icmp -j ACCEPT

#
# Log all else
#
iptables -A filter -j LOG

#
# drop all else
#
iptables -A filter -j DROP

#
# install the input and output filters for input transactions
#
iptables -A INPUT   -j filter
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;If you're interested, you can download the script and associated files
&lt;a href="http://www.cahillfamily.com/files/firewall.tar.gz"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Note that at this point, while I'm setting up the system, many of those
ports opened above are commented out and then, as I install the various
components (such as Apache2) I open the respective port.&lt;/p&gt;
&lt;p&gt;Once completed, I installed the script in &lt;i&gt;/etc/init.d&lt;/i&gt; using
the &lt;i&gt;install&lt;/i&gt; directive in my &lt;i&gt;Makefile&lt;/i&gt; (make
install) and then used the following command to setup the necessary
/etc/rc*.d files to ensure the firewall started as necessary when the system
was booted.&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;update-rc.d firewall defaults&lt;/pre&gt;
&lt;/blockquote&gt;

&lt;hr /&gt;
&lt;h2 id="Backup"&gt;Backup&lt;/h2&gt;
&lt;p&gt;Whether or not we actually do it, we &lt;b&gt;all&lt;/b&gt; know that we should be
backing up our systems and data.  This is especially true for remote systems
where we don't have easy local access.&lt;/p&gt;
&lt;p&gt;My hosting provider does have backup options, but they cost re-occuring
money that I don't want to spend if I don't have to.  So, my solution is to
backup my remote server onto one of my home servers (where I have TBs of
space anyway).&lt;/p&gt;
&lt;p&gt;Since I have a firewall at home, I have to do the backup across a two
step ssh tunnel similar to what I decribed in
&lt;a href="http://conorcahill.blogspot.com/2006/11/backing-up-using-ssh-rsync.html"&gt;Backing up using S
SH &amp;amp; Rsync&lt;/a&gt;.
The first connection goes from my remote server to my firewall and the
second connection goes from the remote server through the first
connection to my backup server.  I then rsync a number of directories
on the remote server to the backup sever including:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;/etc, /var, /usr/local, /home&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;For security reasons, I require private key authentication for this
connection on both my gateway and my backup server, I use a user account
which has no login shell and no login directory and I configure that
the only service that can be accessed is the rsync service.  Not perfect,
but it's good enough that I can get some sleep at night.&lt;/p&gt;
&lt;p&gt;One problem with this setup is that the second ssh tunnel connects
to a port on localhost in order to establish the connection to the remote
system which can be a problem if there's other ssh connection tunnels
setup similarly.  To get around that, I add an alias for my backup server
to the &lt;i&gt;localhost&lt;/i&gt; entry in &lt;i&gt;/etc/hosts&lt;/i&gt; file.  So, rather than
connecting to &lt;i&gt;localhost&lt;/i&gt; the second tunnel connects to the host
&lt;i&gt;backup_server&lt;/i&gt; and thus keeps all of the SSH host keys separate.&lt;/p&gt;
&lt;p&gt;If you're interested, you can download a modified (I removed any
credentials &amp;amp; system names) of the script from
&lt;a href="http://www.cahillfamily.com/files/backup.sh"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;hr /&gt;
&lt;h2 id="Bind9"&gt;Bind9 (DNS Server)&lt;/h2&gt;
&lt;p&gt;I host DNS for a most of the domains for which I host mail (a few of
my friends host their own DNS, but use my mail server).  A long time
ago, I wrote a shell script that creates the necessary configuration
files for the set of domains I manage (which makes it easy to add new
domains which are following the same rules and makes it easy to change
things around when I change my configuration).&lt;/p&gt;
&lt;h3 id="bind9_prep"&gt;Preparation for the move&lt;/h3&gt;
&lt;p&gt;Since nameserver changes can take some time to propogate through the
internet, this is the first service that I installed, configured and
exposed on the new system.  In preparation for the move, I went to my
old nameserver and cranked down the caching settings for the domains
I hosted there in order to reduce the propagation time. My typical
settings are:
&lt;/p&gt;&lt;blockquote&gt;
&lt;pre&gt;
@     IN    SOA     mydomain.com.  postmaster.mydomain.com. (
      2010010200      ; serial number
      86400           ; refresh every 24 hours
      3600            ; retry after an hour
      604800          ; expire after 7 days
      86400           ; keep 24 hours
)
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;In preparation for the move, about a week in advance I
reduced these settings to:
&lt;/p&gt;&lt;blockquote&gt;
&lt;pre&gt;
@     IN    SOA     mydomain.com.  postmaster.mydomain.com. (
      2010010800      ; serial number
      3600            ; refresh every hour
      1800            ; retry after a half hour
      7200            ; expire after 2 hours
      3600            ; keep 1 hour
)
&lt;/pre&gt;
&lt;/blockquote&gt;
And finally, the day before the switch, I moved to:
&lt;blockquote&gt;
&lt;pre&gt;
@     IN    SOA     mydomain.com.  postmaster.mydomain.com. (
      2010010900      ; serial number
      1800            ; refresh every half hours
      1800            ; retry after a half hour
      600             ; expire after 10 mins days
      600             ; keep 10 mins
)
&lt;/pre&gt;
&lt;/blockquote&gt;

&lt;h3 id="bind9_install"&gt;Installation and configuration&lt;/h3&gt;
I installed the nameservice daemon software and utilities using:
&lt;blockquote&gt;
&lt;pre&gt;apt-get install bind9 dnsutils bind9-doc resolvconf&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;I then copied my setup files from the old server to the new server.  The
way that &lt;i&gt;/etc/named.conf&lt;/i&gt; is managed has changed.  On my old server
all of the settings were in that one file.  However, in Ubuntu, that
file is intended to be unchanged and the local options are supposed to
be placed into &lt;i&gt;/etc/named.conf.options&lt;/i&gt; while the host references
are intended to be placed into &lt;i&gt;/etc/named.conf.local&lt;/i&gt;.  So I changed
my scripts to match the new model and modified the &lt;i&gt;Makefile&lt;/i&gt; to
correctly installe the new compoonents.&lt;/p&gt;
&lt;p&gt;I've always run my &lt;i&gt;named&lt;/i&gt; (the nameserice daemon) within a
&lt;a href="http://en.wikipedia.org/wiki/Chroot"&gt;chrooted&lt;/a&gt; environment and
every time I do this I have to yet again figure out what pieces need to
be there in order to get things working.  So this time, I wrote a
&lt;a href="http://www.cahillfamily.com/files/CreateChroot.sh"&gt;CreateChroot.sh&lt;/a&gt;
script and ran it to create the chroot environment for me (and now I don't
have to figure it out from scratch the next time!).  In addition to creating
the chroot environment, I had to change the OPTIONS directive in
&lt;i&gt;/etc/default/bind&lt;/i&gt; to include "-t /var/cache/bind" so that the
file now looks like:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;
OPTIONS="-u bind -t /var/cache/bind"
#OPTIONS="-u bind"
# Set RESOLVCONF=no to not run resolvconf
RESOLVCONF=yes
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;In first setting up the new server, I made no changes other than to add
a new entry for my new server.  So my new nameserver had pretty much the
same host entries that were on the old server. So I ran my script for
creating and installing my named configuration and restarted the bind9
service.&lt;/p&gt;
&lt;p&gt;At this point, I opened the DNS TCP &amp;amp; UDP ports on my filewall so that
I could accept incoming nameservice requests.  In order to test the service,
I went to my old server and used nslookup to test the new server:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;
# nslookup
&gt; server newns.mydomain.com
Default server: newns.mydomain.com
Address: 192.168.169.11#53
&gt; www.mydomain.com
Server:         newns.mydomain.com
Address:        192.168.169.11#53

Name:   www.mydomain.com
Address: 192.168.169.11
&gt; mail.mydomain.com
Server:         newns.mydomain.com
Address:        192.168.169.11#53

Name:   mail.mydomain.com
Address: 192.168.169.11
&gt;exit
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;This showed that things were working as I intended.&lt;/p&gt;
&lt;h3 id="Bind9_switch"&gt;The Switchover&lt;/h3&gt;
&lt;p&gt;At this point, everything was ready to go, so I went to my domain
registry (&lt;a href="http://www.networksolutions.com/"&gt;Network Solutions&lt;/a&gt;)
and changed the host records for my nameservers to make the new nameserver
my primary dns server and my old server to be the secondary server.&lt;/p&gt;
&lt;p&gt;This worked fine (though they warned me it could take 72 hours to
propagate) and I ran a bunch of tests from my home network, my work network
and my old server and everything was peachy keen.&lt;/p&gt;


&lt;hr /&gt;
&lt;h2 id="WebServer"&gt;Web Server&lt;/h2&gt;
&lt;p&gt;I run a web server for my own family web site.  It's all hand-coded
html (yeah, kinda old fangled, but I haven't had the time, energy or
inclination to re-architect it.  Setting it up on the new server was
pretty simple.&lt;/p&gt;
&lt;p&gt;First step was to copy over the directory heirarchy from the old
server to the new server.  Just tar'd it up and scp'd it over to
the new server and untar'd it within the &lt;i&gt;/home/www&lt;/i&gt; directory.
&lt;/p&gt;&lt;p&gt;Next step involved geting apache2 installed...&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;apt-get install apache2&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;The configuration for the web servers is located in:
&lt;i&gt;/etc/apache2/sites-available&lt;/i&gt;
which comes with a single &lt;i&gt;default&lt;/i&gt; file.   I renamed this file
to be &lt;i&gt;www.cahillfamily.com&lt;/i&gt; (allowing for more sites at some point
in the future) and editet that file to match up the settings from the old
server.&lt;/p&gt;
&lt;h3 id="WebServer_ServerSideIncludes"&gt;Server Side Includes (SSI)&lt;/h3&gt;
&lt;p&gt;SSI is a capability on the server which allows an html file to include
html from other files on the same web server.  I use this feature extensively
to maintain a consistent menu structure by placing it in one file and
including it in all the html files on the server.&lt;/p&gt;
&lt;p&gt;To enable this feature, I did the following:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Set the &lt;i&gt;Includes&lt;/i&gt; option within the configuration section for
my virtual host.&lt;/li&gt;
&lt;li&gt;Set the &lt;i&gt;+XBitHack&lt;/i&gt; option as well.  This allows me to indicate
to the server that there's an include directive in the file by simply
setting the executable bit on the file (rather than having to have a
particular suffix on the html file).&lt;/li&gt;
&lt;li&gt;Enabled mod-include by running the following command:

&lt;blockquote&gt;
&lt;pre&gt;a2enmod include&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;/li&gt;
&lt;/ol&gt;


&lt;hr /&gt;
&lt;h2 id="Proxies"&gt;Proxies&lt;/h2&gt;
&lt;p&gt;I run a few proxy severs on my remote server that I have found useful
when I'm behind some crazy firewalls or when an ISP has tight controls
on the number of outgoing connections -- I've run into racheted down
connection limits on my former home ISP
(&lt;a href="http://www.roadstarinternet.com/"&gt;RoadStar Internet&lt;/a&gt; and
at some hotels while on the road. &lt;/p&gt;
&lt;p&gt;So I setup the proxies on my remot server, SSH to the server and
then tunnel my services through that server.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;WARNING&lt;/b&gt;: You have to be very careful when you setup proxies
so that you don't end up creating an open proxy that others can use
to make it appear that bad things are coming from your server.  If
you do set one up, do so carefully.&lt;/p&gt;

&lt;h3 id="Proxies_Socks5"&gt;Socks 5 Proxy&lt;/h3&gt;
&lt;p&gt;Socks 5 is used for proxying many of my different Instant Messenger
connections (I have like 5 of them).   For Ubuntu, the common/best one
seems to be the Dante-Server wich I installed using:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;apt-get install dante-server&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;I configured it to only allow connections from the local system (since
I will have an SSH tunnel to the server).  This prevents others from using
it unless they have internal access to my server.
&lt;/p&gt;&lt;blockquote&gt;
&lt;pre&gt;
*** /etc/danted.conf.orig       2009-12-31 11:29:41.000000000 -0500
--- /etc/danted.conf    2009-12-31 11:39:16.000000000 -0500
***************
*** 37,43 ****

# the server will log both via syslog, to stdout and to /var/log/lotsoflogs
#logoutput: syslog stdout /var/log/lotsoflogs
! logoutput: stderr

# The server will bind to the address 10.1.1.1, port 1080 and will only
# accept connections going to that address.
--- 37,43 ----

# the server will log both via syslog, to stdout and to /var/log/lotsoflogs
#logoutput: syslog stdout /var/log/lotsoflogs
! logoutput: syslog

# The server will bind to the address 10.1.1.1, port 1080 and will only
# accept connections going to that address.
***************
*** 45,54 ****
--- 45,58 ----
# Alternatively, the interface name can be used instead of the address.
#internal: eth0 port = 1080

+ internal: 127.0.0.1 port=1080
+
# all outgoing connections from the server will use the IP address
# 195.168.1.1
#external: 192.168.1.1

+ external: xx.yy.zzz.aaa
+
# list over acceptable methods, order of preference.
# A method not set here will never be selected.
#
***************
*** 57,66 ****
#

# methods for socks-rules.
! #method: username none #rfc931

# methods for client-rules.
! #clientmethod: none

#or if you want to allow rfc931 (ident) too
#method: username rfc931 none
--- 61,70 ----
#

# methods for socks-rules.
! method: username none #rfc931

# methods for client-rules.
! clientmethod: none

#or if you want to allow rfc931 (ident) too
#method: username rfc931 none
***************
*** 106,112 ****
# can be enabled using the "extension" keyword.
#
# enable the bind extension.
! #extension: bind


#
--- 110,116 ----
# can be enabled using the "extension" keyword.
#
# enable the bind extension.
! extension: bind


#
***************
*** 162,167 ****
--- 166,178 ----
#     method: rfc931 # match all idented users that also are in passwordfile
#}

+ #
+ # Allow any connections from localhost (they will get here via SSH tunnels)
+ #
+ client pass {
+       from: 127.0.0.1/32 port 1-65535 to: 0.0.0.0/0
+ }
+
# This is identical to above, but allows clients without a rfc931 (ident)
# too.  In practise this means the socksserver will try to get a rfc931
# reply first (the above rule), if that fails, it tries this rule.
&lt;/pre&gt;
&lt;/blockquote&gt;

&lt;h3 id="Proxies_WebProxy"&gt;Web (HTTP/HTTPS) Proxy Server&lt;/h3&gt;
&lt;p&gt;Since I already had the web server up and running, setting up a web
proxy was easy.  First I had to ensure that the necessary modules were
installed and enabled:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;
a2enmod proxy
a2enmod proxy-connect
a2enmod proxy-ftp
a2enmod proxy-http
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;Then I edited the &lt;i&gt;/etc/apache2/httpd.conf&lt;/i&gt; file and added the
following entries:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;
ProxyRequests On

&amp;lt;Proxy *&amp;gt;
  AddDefaultCharset off
  Order deny,allow
  Deny from all
  Allow from 127.0.0.1
&amp;lt;/Proxy&amp;gt;

AllowConnect 443 563 8481 681 8081 8443 22 8080 8181 8180 8182 7002
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;The &lt;i&gt;AllowConnect&lt;/i&gt; option is necessary if your're going to
proxy other connections (such as HTTPS).  Most of those numbers are
legacy from some point in the past.  The really necessary one is 443
(for HTTPS), some of the 8xxx ones were from when I was doing some
web services testing from behind a firewall at work (so I could invoke
the web service endpoint from my test application).  Not sure
about all the others, but I'm not to worried about it since I only
accept proxy requests from the local system.&lt;/p&gt;


&lt;hr /&gt;
&lt;h2 id="MailServer"&gt;Mail Server&lt;/h2&gt;
&lt;p&gt;Setting up a mail server can be somewhat complex, especialy when you
throw in the fact that I was moving a running mail server to a new system
&lt;b&gt;and&lt;/b&gt; adding new client capabilities.
On my old server, all of my users had to SSH into my server with private
key authetnication and then tunnel POP &amp;amp; SMTP over the SSH connection.  This
could be a pain (to say the least) and restricted access for clients like
the iphone or other devices.   Most of my users (family &amp;amp; friends) are using
an ssh tunnelling product from
&lt;a href="http://www.vandyke.com/"&gt;VanDyke&lt;/a&gt; that was discontinued back
in 2004.&lt;/p&gt;
&lt;h3 id="MailServer_Installation"&gt;Installation&lt;/h3&gt;
First step is to install the necessary components.  Some of these were
already installed with the server OS package (e.g. Postfix) but there's
nothing wrong with making sure...
&lt;blockquote&gt;
&lt;pre&gt;
apt-get update
apt-get install postfix
apt-get install courier courier-pop-ssl courier-imap-ssl courier-doc 
apt-get install spell mail
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;Before I start actually accepting and processing mail, I thought it best
to get the clients protocols all working, so onto the clients.
&lt;/p&gt;&lt;h3 id="MailServer_Clients"&gt;Mail Clients&lt;/h3&gt;
&lt;p&gt;I needed to enable support for your typical mail clients such as
&lt;a href="http://www.microsoft.com/outlook/"&gt;Outlook&lt;/a&gt;
and &lt;a href="http://www.mozillamessaging.com/thunderbird/"&gt;Thunderbird&lt;/a&gt;
(which require IMAP or POP3 to retrive mail and SMTP to send mail) as
well as web browser clients.   In the past, I have not supported web clients
and I have required mail clients to tunnel their POP3 &amp;amp; SMTP over ssh
tunnels.   With the new server, I wanted to allow access without requiring
ssh tunnels so that other clients (such as my iPhone) that didn't have
ready support for ssh tunneling could get to the mail server.  I also wanted
to add browser based support so that people could check their email from
other locations (such as a friends computer).&lt;/p&gt;
&lt;p&gt;This involved the following steps:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="#MailServer_Clients_SSL"&gt;Secure Sockets Layer (SSL)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#MailServer_Clients_imap"&gt;IMAP and POP&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#MailServer_Clients_smtp"&gt;Authenticated SMTP&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#MailServer_Clients_web"&gt;Web Server Mail Client&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="MailServer_SSL"&gt;Secure Sockets Layer (SSL)&lt;/h4&gt;
&lt;p&gt;For remote access to my server I needed to enable SSL
so that user credentials were protected.  My intent was to enable SSL on
all the standard mail client protocols (SMTP, IMAP and POP) and to enable
browser based access to mail via HTTPS and a web server based mail client.&lt;/p&gt;
&lt;h4 id="MailServer_SSL_KeyGen"&gt;Certificate Generation&lt;/h4&gt;
&lt;p&gt;In order to support SSL, I needed to get an SSL certificate.  I could
have created my own certificate and signed it myself, but that would have
lead to error messages from the clients telling my users that perhaps they
shoudln't trust my server.  Instead, I signed up for an SSL certificate
from
&lt;a href="http://www.godaddy.com/"&gt;GoDaddy&lt;/a&gt; which was running a
special for $12.95/year for up to 5 years.&lt;/p&gt;
&lt;p&gt;In order to create the certificate, I had to generate my private key
and then a certificate signing request using the following commands:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;
*** make sure openssl is installed
# &lt;font size="+1"&gt;&lt;b&gt;apt-get install openssl&lt;/b&gt;&lt;/font&gt;

*** Generate 4096 bit RSA server key
# &lt;font size="+1"&gt;&lt;b&gt;openssl genrsa -des3 -out server.key 4096&lt;/b&gt;&lt;/font&gt;
Generating RSA private key, 4096 bit long modulus
.............................................................................++
................................................................................
......................................++
e is 65537 (0x10001)
Enter pass phrase for server.key: &lt;font size="+1"&gt;&lt;b&gt;abcd&lt;/b&gt;&lt;/font&gt;
Verifying - Enter pass phrase for server.key: &lt;font size="+1"&gt;&lt;b&gt;abcd&lt;/b&gt;&lt;/font&gt;

*** Generate certificate signing request for server key (note that the
*** "Common Name" must be the name of the host that the clients will connect
*** to if you don't want to get ssl errors)
# &lt;font size="+1"&gt;&lt;b&gt;openssl req -new -key server.key -out server.csr&lt;/b&gt;&lt;/font&gt;
Enter pass phrase for server.key: &lt;font size="+1"&gt;&lt;b&gt;abcd&lt;/b&gt;&lt;/font&gt;
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]: &lt;font size="+1"&gt;&lt;b&gt;US&lt;/b&gt;&lt;/font&gt;
State or Province Name (full name) [Some-State]: &lt;font size="+1"&gt;&lt;b&gt;Virginia&lt;/b&gt;&lt;/font&gt;
Locality Name (eg, city) []: &lt;font size="+1"&gt;&lt;b&gt;Waterford&lt;/b&gt;&lt;/font&gt;
Organization Name (eg, company) [Internet Widgits Pty Ltd]: &lt;font size="+1"&gt;&lt;b&gt;Cahills&lt;/b&gt;&lt;/font&gt;
Organizational Unit Name (eg, section) []:
Common Name (eg, YOUR name) []: &lt;font size="+1"&gt;&lt;b&gt;mail.cahillfamily.com&lt;/b&gt;&lt;/font&gt;
Email Address []:

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;At this point, I took the server signing request, &lt;i&gt;server.csr&lt;/i&gt;,
and sent it to GoDaddy to get them to sign it and create my certificate.
If, on the other hand, I wanted to do a self-signed certificate, I would
have performed the following steps:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;
*** sign the csr using our own server key (making this a self-signed cert)
# &lt;font size="+1"&gt;&lt;b&gt;openssl x509 -req -days 1825 -in server.csr \
  -signkey server.key -out server.crt&lt;/b&gt;&lt;/font&gt;
Signature ok
subject=/C=US/ST=Virginia/L=Waterford/O=Cahills/CN=mail.cahillfamily.com
Getting Private key
Enter pass phrase for server.key: &lt;font size="+1"&gt;&lt;b&gt;abcd&lt;/b&gt;&lt;/font&gt;
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;To test this, I configured Apache2 to support SSL and tested
access to https://mail.cahillfamily.com.  I first needed to enable the
SSL module using the following command:
&lt;/p&gt;&lt;blockquote&gt;
&lt;pre&gt;a2enmod ssl&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;I took the server key and server certificate and place them into
a secure non-standard location (no need to advertise where) and set the
access modes on the directory to restrict it to root only. In
order for the server key to be used without a pass phrase, I ran the
following commands to remove the pass phrase from the file:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;mv server.key server.key.safe
openssl rsa -in server.key.safe -out server.key&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;I copied the default Apache2 site file into one
for &lt;i&gt;mail.cahillfamily.com&lt;/i&gt; and set it up using the following
commands:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;cp /etc/apache2/sites-available/default /etc/apache2/sites-available/mail.cahillfamily.com
ln -s /etc/apache2/sites-available/mail.cahillfamily.com /etc/apache2/sites-enabled/mail.cahillfamil
y.com&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;I then edited the configuration file to enable SSL and to point to
the newly installed certificate and key files:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;
NameVirtualHost *:443
&amp;lt;VirtualHost *:443&amp;gt;
      ServerAdmin webmaster
      ServerName mail.cahillfamily.com

      DocumentRoot /home/www/mail.cahillfamily.com
      ErrorLog /var/log/apache2/error.log

      # Possible values include: debug, info, notice, warn, error, crit,
      # alert, emerg.
      LogLevel warn

      CustomLog /var/log/apache2/access.log combined
      ServerSignature On

      SSLEngine On
      SSLCertificateFile /path-to-ssl-files/server.crt
      SSLCertificateKeyFile /path-to-ssl-files/server.key
&amp;lt;/VirtualHost&amp;gt;
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;I also wanted to automatically redirect any http: access to
&lt;i&gt;mail.cahillfamily.com&lt;/i&gt; to https: access, so I added the following
section to the default site file which uses the &lt;i&gt;RedirectPermanent&lt;/i&gt;
directive to automatically redirect access on port 80:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;
&amp;lt;VirtualHost *:80&amp;gt;
      ServerAdmin webmaster
      ServerName  mail.cahillfamily.com
      RedirectPermanent / https://mail.cahillfamily.com
&amp;lt;/VirtualHost&amp;gt;
&lt;/pre&gt;
&lt;/blockquote&gt;

&lt;h4 id="MailServer_Clients_imap"&gt;IMAP and POP&lt;/h4&gt;
&lt;p&gt;After poking about some, I came to the conclusion that the right mail
server for me to use to expose IMAP and POP interfaces for my mail clients
is the &lt;a href="http://www.courier-mta.org/"&gt;Courier Mail Server&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;Courier requires that you use the &lt;i&gt;MailDir&lt;/i&gt; structure for user
mailboxes while Postfix uses the &lt;i&gt;mbox&lt;/i&gt; structure by default.  So I
changed Postfix to use the &lt;i&gt;MailDir&lt;/i&gt; structure by adding the following
setting to &lt;i&gt;/etc/postfix/main.cf&lt;/i&gt;:
&lt;/p&gt;&lt;blockquote&gt;
&lt;pre&gt;home_mailbox = Maildir/&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;I manually created an empty Maildir structure for all my user
accounts.&lt;/p&gt;
&lt;p&gt;For SSL, Courier requires the key and the certificate to be in a
single .pem file.  So I concatenated &lt;i&gt;server.key&lt;/i&gt; and &lt;i&gt;server.crt&lt;/i&gt;
into a single &lt;i&gt;server.pem&lt;/i&gt; file.
&lt;/p&gt;&lt;p&gt;I edited the &lt;i&gt;/etc/courier/imapd-ssl&lt;/i&gt; file to make the following
changes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Set &lt;i&gt;SSLPort&lt;/i&gt; to 993.&lt;/li&gt;
&lt;li&gt;Set both &lt;i&gt;IMAPDSSLSTART&lt;/i&gt; and &lt;i&gt;IMAPDSTARTTLS&lt;/i&gt; options to
&lt;i&gt;YES&lt;/i&gt; to allow both IMAP over SSL and TLS within IMAP (the latter
being a TLS session that's started from within the IMAP session while
the former is a plain IMAP session over an SSL tunnel).&lt;/li&gt;
&lt;li&gt;Set &lt;i&gt;IMAP_TLS_REQUIRED&lt;/i&gt; to 0 so that local connections from the
web mail server could make use of imap without having to do TLS on
the local (same system) connection.   I planned to still block the
standard IMAP port (143) in the firewall, so remote clients would not
be able to access their mail without SSL/TLS).&lt;/li&gt;
&lt;li&gt;Set &lt;i&gt;TLS_CERTFILE&lt;/i&gt; to point to the recently created &lt;i&gt;server.pem&lt;/i&gt;
file.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I edited the &lt;i&gt;/etc/courier/imapd&lt;/i&gt; file to make the following
changes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Added "AUTH=PLAIN" to the &lt;i&gt;IMAP_CAPABILITY&lt;/i&gt; setting so that
plain text authentication is allowed on non-tls connections to the imap
server.  This is necessary for the local connection from some web server
mail clients which don't come with support for CRAM-MD5 or other non-PLAIN
authentication mechanisms.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I edited the &lt;i&gt;/etc/courier/pop3d-ssl&lt;/i&gt; file to make the following
changes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Set &lt;i&gt;SSLPort&lt;/i&gt; to 995.&lt;/li&gt;
&lt;li&gt;Set both &lt;i&gt;POP3DSSLSTART&lt;/i&gt; and &lt;i&gt;POP3DSTARTTLS&lt;/i&gt; options to
&lt;i&gt;YES&lt;/i&gt; to allow both POP3 over SSL and TLS within POP3 (the latter
being a TLS session that's started from within the POP3 session while
the former is a plain POP3 session over an SSL tunnel).&lt;/li&gt;
&lt;li&gt;Set &lt;i&gt;POP3_TLS_REQUIRED&lt;/i&gt; to 0 so that local connections from the
web mail server could make use of imap without having to do TLS on
the local (same system) connection.   I planned to still block the
standard POP3 port (110) in the firewall, so remote clients would not
be able to access their mail without SSL/TLS). However, this would
enable my existing clients which ssh to the server and then use
non-TLS POP to still be able to get their email.&lt;/li&gt;
&lt;li&gt;Set &lt;i&gt;TLS_CERTFILE&lt;/i&gt; to point to the recently created &lt;i&gt;server.pem&lt;/i&gt;
file.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Restarted the courier related services:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;service courier-imap stop
service courier-imap-ssl stop
service courier-pop stop
service courier-pop-ssl stop
service courier-imap start
service courier-imap-ssl start
service courier-pop start
service courier-pop-ssl start&lt;/pre&gt;
&lt;/blockquote&gt;

&lt;p&gt;Yeah, I probably could have simply used the "restart" command on each of
them but I wanted to have them all stopped and then start them all so I was
sure that they call came up cleanly under the same configuration.&lt;/p&gt;
&lt;p&gt;Now it was time to test things.  First a quick telnet connection to
the local imap port (143):&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;
# &lt;font size="+1"&gt;&lt;b&gt;telnet server 143&lt;/b&gt;&lt;/font&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THRE
AD=REFERENCES AUTH=PLAIN SORT QUOTA IDLE ACL ACL2=UNION] Courier-IMAP ready. Cop
yright 1998-2005 Double Precision, Inc.  See COPYING for distribution informatio
n.
&lt;font size="+1"&gt;&lt;b&gt;01 LOGIN username password&lt;/b&gt;&lt;/font&gt;
01 OK LOGIN Ok.
&lt;font size="+1"&gt;&lt;b&gt;0000 logout&lt;/b&gt;&lt;/font&gt;
* BYE Courier-IMAP server shutting down
0000 OK LOGOUT completed
closed
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;So that worked.  I ran a similar test for POP3 which also worked.  Now
I was ready for some remote testing.  First step was to go back to my
&lt;a href="#Firewall"&gt;firewall&lt;/a&gt; and open ports 993 (IMAPS) and 995 (POP3S)
to allow incomming connections to the IMAP and POP services.&lt;/p&gt;
&lt;p&gt;Then I went to http://www.wormly.com/test_pop3_mail_server and ran
several tests with the POP3S implementation (with test accounts, of course)
which all worked fine.&lt;/p&gt;
&lt;p&gt;I didn't see a similar testing tool for IMAP, so I ran some tests from one
of my home computers using the following command: &lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;openssl s_client -crlf -connect mail.cahillfamily.com:993&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;Which worked like a charm (with some finagling with the /etc/hosts
file to override mail.cahillfamily.com's IP address).  This also
worked like a charm, so at this point I figured I had IMAP and POP
up and running.&lt;/p&gt;

&lt;h4 id="MailServer_Clients_smtp"&gt;Authenticated SMTP&lt;/h4&gt;
&lt;p&gt;When setting up an SMTP server, you have to be very careful that you don't
configure your server as an open relay (where it will send mail from
anyone to anyone). It seems that hackers, scammers and spammers are
forever looking for new open relays that they can use to send out spam and
shortly after opening an SMTP port on the internet you can usually find
attempts to make use of the server as a relay.&lt;/p&gt;
&lt;p&gt;For basic unauthenticated SMTP (e.g. where there's no local user
authentication within the SMTP session), I configured the server to only
accept incomming mail whose delivery address is within one of my managed
domains.  Any mail with a destination address outside of my domain is
rejected before we accept the mail message itself.&lt;/p&gt;
&lt;p&gt;However, that configuration wouldn't work very well for my users who
typically do want to send mail to people outside of my domain.  In the
past, my solution was simple: ssh tunnel to my host then sent mail via
SMTP on the local host interface where I could treat any local connections
as, by default, authenticated.&lt;/p&gt;
&lt;p&gt;While I am continuing to allow that configuration with the new server
setup, it wouldn't work for those users trying to use a mail client without
the ssh tunnel.   So I had to enable authenticated SMTP and I had to
configure it to require such sessions over SSL.&lt;/p&gt;
&lt;p&gt;The SMTP server is managed by Postfix itself.  So first step was to
modify the &lt;i&gt;/etc/postfix/main.cf&lt;/i&gt; configuration file to
only accept main with recipients in my networks:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;
#
# restrict smtp operations on unauthenticated (port 25) connections
#
smtpd_recipient_restrictions = permit_mynetworks,reject_unauth_destination
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;Then I modified the &lt;i&gt;/etc/postfix/master.cf&lt;/i&gt; configuration file
to enable both TLS within SMTP sessions and SMTP over SSL/TLS by including
the following directives:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;
submission inet n       -       -       -       -       smtpd
-o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
-o smtpd_recipient_restrictions=permit_sasl_authenticated,reject
smtps     inet  n       -       -       -       -       smtpd
-o smtpd_tls_wrappermode=yes
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
-o smtpd_recipient_restrictions=permit_sasl_authenticated,reject
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;These settings, along with the base configuration, should give me
server to server SMTP on port 25 and client to server user authenticated
SMTP over TLS/SSL on ports 465 and 587.&lt;/p&gt;
&lt;p&gt;Now that I have SMTP which allows for authentication, I had to install
and configure the sasl authentication daemon as follows:
&lt;/p&gt;&lt;ol&gt;
&lt;li&gt;I installed the package using:&lt;p&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;apt-get install libsasl2 sasl2-bin&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;I edited the &lt;i&gt;/etc/defaults/saslauthd&lt;/i&gt; to make the
following changes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Set &lt;i&gt;START=yes&lt;/i&gt; so the daemon will start.&lt;/li&gt;
&lt;li&gt;Configured saslauthd to place it's runtime information underneath the
postfix chroot environment by changing the OPTION parameter and
adding the following lines:
&lt;blockquote&gt;
&lt;pre&gt;PWDIR="/var/spool/postfix/var/run/saslauthd"
OPTIONS="-c -m ${PWDIR}"
PIDFILE="${PWDIR}/saslauthd.pid"&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;I created the saslauthd run directory using:

&lt;blockquote&gt;
&lt;pre&gt;mkdir -p /var/spool/postfix/var/run/saslauthd&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;/li&gt;
&lt;li&gt;Configured saslauthd to leave its files readable by postfix (so
postfix could communicate with the daemon) using the following command:

&lt;blockquote&gt;
&lt;pre&gt;dpkg-statoverride --force --update --add root sasl 755 \
              /var/spool/postfix/var/run/saslauthd &lt;/pre&gt;
&lt;/blockquote&gt;
&lt;/li&gt;
&lt;li&gt;Created &lt;i&gt;/etc/postfix/sasl/smtpd.conf&lt;/i&gt; file and added the
following lines:

&lt;blockquote&gt;
&lt;pre&gt;pwcheck_method: saslauthd
mech_list: plain login&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;/li&gt;
&lt;li&gt;Restarted both saslauthd and postfix&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Now I was ready to start testing, so I went back to my
&lt;a href="#Firewall"&gt;firewall&lt;/a&gt; and opened ports 25 (SMTP), 465 (SMTP over
SSL) and 587 (TLS within SMTP) so that I could start testing.&lt;/p&gt;
&lt;p&gt; To test all of this you could use a mail client, or if you're a bit
more adventurous (and want to see exactly what's going on) you can do
this manually within a telnet/openssl connection).   The following is
an example test session:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;
$ &lt;font size="+1"&gt;&lt;b&gt;telnet localhost 25&lt;/b&gt;&lt;/font&gt;
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 mail.cahillfamily.com ESMTP Postfix (Ubuntu)
&lt;font size="+1"&gt;&lt;b&gt;ehlo mail.cahillfamily.com&lt;/b&gt;&lt;/font&gt;
250-mail.cahillfamily.com
250-PIPELINING
250-SIZE 10240000
250-ETRN
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
&lt;font size="+1"&gt;&lt;b&gt;mail from: user@localhost&lt;/b&gt;&lt;/font&gt;
250 2.1.0 Ok
&lt;font size="+1"&gt;&lt;b&gt;rcpt to: someuser@someotherhost.com&lt;/b&gt;&lt;/font&gt;
250 2.1.5 Ok
&lt;font size="+1"&gt;&lt;b&gt;data&lt;/b&gt;&lt;/font&gt;
354 End data with &lt;cr&gt;&lt;lf&gt;.&lt;cr&gt;&lt;lf&gt;
&lt;font size="+1"&gt;&lt;b&gt;Subject: Test message

Sending yet another test... hope it gets there...

.&lt;/b&gt;&lt;/font&gt;
250 2.0.0 Ok: queued as B28C461A0A9
&lt;font size="+1"&gt;&lt;b&gt;quit&lt;/b&gt;&lt;/font&gt;
221 2.0.0 Bye
Connection closed by foreign host.
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;That's a standard, unauthenticated SMTP session.  I find using the
manual sesssion for testing makes it easier to identify what the problem
is when there is a problem.  For example, in the list of responses after
my "ehlo" command, you see "250=-STARTTLS" - this indicates that TLS is
enabled within the server).&lt;/p&gt;
&lt;p&gt;To test an authenticated SMTP session, you will need to enter a
command similar to the following (I usually do this right after the
"ehlo" command, though I'm not sure if it has to be exactly there):&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;&lt;font size="+1"&gt;&lt;b&gt;auth plain AHVzZXJpZABwYXNzd29yZA==&lt;/b&gt;&lt;/font&gt;
235 2.7.0 Authentication successful&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;The "AHVzZXJpZABwYXNzd29yZA==" parameter is a base64 encoding of a
plain text SASL authentication string.  You can generate one manually
using the following perl command: &lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;perl -MMIME::Base64 -e 'print encode_base64("\000userid\000password")'&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;Where userid = the test user's id and password = the test user's password
If you have a special character in either string (such as an @ in the
user id (e.g. user@host) you need to escape the character (e.g. "\@").&lt;/p&gt;
&lt;p&gt;So, now that I have all that, I ran the following tests:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Test local unauthenticated SMTP connection to send mail to remote
system (for my clients that ssh to server and send out from there)
&lt;blockquote&gt;
&lt;pre&gt;telnet localhost 25 &lt;/pre&gt;
&lt;/blockquote&gt;
and then run through SMTP session described above.
&lt;/li&gt;
&lt;li&gt;Test remote unauthenticated SMTP connection doesn't allow
sending mail to remote locations.  Go to a remote system and run:
&lt;blockquote&gt;
&lt;pre&gt;telnet mail.cahillfamily.com 25&lt;/pre&gt;
&lt;/blockquote&gt;
and try SMTP session above - should fail with either a) permission
denied or with relay access denied when you enter the "rcpt to" command.
&lt;/li&gt;
&lt;li&gt;Test remote unauthenticated SMTPS connection as follows:
&lt;blockquote&gt;
&lt;pre&gt;openssl s_client -starttls smtp -crlf -connect mail.cahillfamily.com:587&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;and try SMTP session above - should also fail, this time with permission
denied since we only setup authenticated SASL connections on this port.

&lt;/p&gt;&lt;/li&gt;&lt;li&gt;Test remote authenticated SMTPS connection using the following:

&lt;blockquote&gt;
&lt;pre&gt;openssl s_client -starttls smtp -crlf -connect mail.cahillfamily.com:587&lt;/pre&gt;
&lt;/blockquote&gt;
and this time include the "AUTH PLAIN" command at the start of the
session.  This should succeed.
&lt;/li&gt;
&lt;li&gt;Test remote authenticated SMTP over TLS connection as follows:

&lt;blockquote&gt;
&lt;pre&gt;openssl s_client -crlf -connect mail.cahillfamily.com:465&lt;/pre&gt;
&lt;/blockquote&gt;
and include the "AUTH PLAIN" command at the start of the
session.  This should succeed.
&lt;/li&gt;
&lt;/ul&gt;


&lt;h4 id="MailServer_Clients_web"&gt;Web Server Mail Client&lt;/h4&gt;
&lt;p&gt;For browser clients, there are a couple of obvious possibilities
that come to mind:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.courier-mta.org/sqwebmail/"&gt;SqWebMail&lt;/a&gt; -
a component of the Courier Mail Server which provides access to
mail files via direct access to the mailboxes.&lt;/li&gt;
&lt;li&gt;&lt;a href="http://squirrelmail.org/"&gt;Squirrel Mail&lt;/a&gt; - a web server
based mail client that gets lots of good recommendations as being one of
the best open source solutions.  This tool uses the IMAP interface to access
the user's mail files rather than direct manipulation.
&lt;p&gt;As a bonus, this tool also has an available Outlook-like plug-in that
gives users the look/feel of Outlook 2003.
&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;I took a look at the two tools and decided to go with Squirrel Mail
and, for now, just install the basep toolkit.  I'll explore the Outlook
model at some point in the future.  Ubuntu has SquirrelMail available
as a standard package so I installed it using the following command:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;apt-get install squirrelmail&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;I then modified the &lt;i&gt;/etc/apache2/sites-available/mail.cahillfamily.com&lt;/i&gt;
configuration file to use the squirrelmail application as the document
root, so my users go straight into the application when they visit
mail.cahillfamily.com in a browser. The modified file looks as follows:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;
NameVirtualHost *:443
&amp;lt;VirtualHost *:443%gt;
      ServerAdmin webmaster@localhost
      ServerName mail.cahillfamily.com

      DocumentRoot /usr/share/squirrelmail
      ErrorLog /var/log/apache2/error.log

      # Possible values include: debug, info, notice, warn, error, crit,
      # alert, emerg.
      LogLevel warn

      CustomLog /var/log/apache2/access.log combined
      ServerSignature On

      SSLEngine On
      SSLCertificateFile /etc/ssl/server.crt
      SSLCertificateKeyFile /etc/ssl/server.key

Include /etc/squirrelmail/apache.conf

&amp;lt;/VirtualHost%gt;
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;Used by browser to test it and everything seems kosher.&lt;/p&gt;


&lt;h3 id="MailServer_Spam"&gt;SPAM filtering&lt;/h3&gt;
&lt;p&gt;To filter or not to filter....   For many years I ran my server with
no server-side filtering and instead relied on client filtering.  However,
the abundance of crap that keeps on coming only seems to grow exponentially
every year and I finally convinced myself that not only was server side
filtering necessary, but it was mandatory.   This is especially evident when
you're trying to download mail after having been disconnected for a day or
so and find that you have hundreds of email messages, most of which are
clearly SPAM.&lt;/p&gt;
&lt;p&gt;I use spamassassin for spam filtering.  Looking around at most of the
how-to's/docs I see that most people recommend usiing spamassassin to just
flag spam, but then go ahead and deliver it to the user's mailbox.  This
is probably the best solution if you don't want to lose any potential
emails that have incorrectly been marked as SPAM.  However, that means
that my clients have to download hundreds of spam messages just to throw
them out when the got to the client.&lt;/p&gt;&lt;p&gt;For my system, I'd rather have Spamassassin get rid of at least some
spam and then let some of the questionalbe stuff through.   So, I've setup
things such that mail messages that get a Spamassassin grade of 10 or higher
get saved off into a directory on the server (one directory for each day
to ease management). For messages that have a grade between 5 and 10, the
subject gets re-written to include a SPAM indicator, but the message
is still delivered to the intended recipient. &lt;/p&gt;
&lt;p&gt;I've been doing it this way for the past 2 years.  We get on the order of
five thousand (yeah: 5,000) messages culled this way each day and I've yet
to find or get a report of any false positives.  Note that there's still
a bunch of email that gets through with grades between 5 and 10.&lt;/p&gt;
&lt;p&gt;Anyway, to set this up on the new server:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Install the latest version of spamassassin using:
&lt;blockquote&gt;
&lt;pre&gt;
apt-get update
apt-get install spamassassin spamd
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;/li&gt;
&lt;li&gt;Installed spamchk script (not sure where I originally got it, but I've been using it on my old mail server for several years now) in 
&lt;i&gt;/usr/local/bin/spamchk&lt;/i&gt;
&lt;/li&gt;
&lt;li&gt;
Created /var/spool/postfix/spam/save and /var/spool/postfix/spam/tmp
directories for processed messages
&lt;/li&gt;
&lt;li&gt;
      Edited the /etc/postfix/master.cf file to add an output filter for mail
      coming in the default smtp connection (we don't need it on the SSl
      connections since they are authenticated) and to add the spamck
      invocation.    Modified lines look as follows:
&lt;blockquote&gt;
&lt;pre&gt;
smtp      inet  n       -       -       -       -       smtpd
  -o content_filter=spamchk:dummy
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;P&gt;And at the end of the file, added:&lt;/P&gt;
&lt;blockquote&gt;
&lt;pre&gt;
#
# SpamAssassin check filter
#
spamchk   unix  -       n       n       -       10      pipe
  flags=Rq user=spamd argv=/usr/local/bin/spamchk -f ${sender} -- ${recipient}
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;/li&gt;
&lt;li&gt;
      By default, Spamassassin places a detailed spam report in any message
  that is flagged as spam (spam score &gt;= 5) and moves the original message
  to an attachement.   I find this cumbersome and so instead I like to
  flag the subject of the message with a "[SPAM]" flag and otherwise leave
  the message alone (you do still get the Spamassassin headers added to the
  message, but they are hidden from the default view in most mailers).
      &lt;p&gt;To achieve this, I edited the
      &lt;i&gt;/etc/mail/spamassassin/local.cf&lt;/i&gt; file and make the following
  changes:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;
*** local.cf.orig       2010-01-02 10:45:58.000000000 -0500
--- local.cf    2010-01-09 20:54:46.000000000 -0500
***************
*** 9,21 ****

#   Add *****SPAM***** to the Subject header of spam e-mails
#
! # rewrite_header Subject *****SPAM*****


#   Save spam messages as a message/rfc822 MIME attachment instead of
#   modifying the original message (0: off, 2: use text/plain instead)
#
! # report_safe 1


#   Set which networks or hosts are considered 'trusted' by your mail
--- 9,21 ----

#   Add *****SPAM***** to the Subject header of spam e-mails
#
! rewrite_header Subject [SPAM]


#   Save spam messages as a message/rfc822 MIME attachment instead of
#   modifying the original message (0: off, 2: use text/plain instead)
#
! report_safe 0


#   Set which networks or hosts are considered 'trusted' by your mail
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;/li&gt;
&lt;li&gt;Spamassassin likes to learn about its mistakes (both positive and
negative).  Since my users don't have local access to the system, I need
to add aliases which allow people to forward mail attachments that are
or are not spam so that Spamassassin can use that information in its
learnings.

&lt;p&gt;First step was to get the &lt;i&gt;sa-wrapper.pl&lt;/i&gt; script from
&lt;a href="http://www.localside.net/sal-wrapper/"&gt;Stefan Jakobs&lt;/a&gt;. This
script had a dependency on the perl modlue &lt;i&gt;MIME::Tools&lt;/i&gt; which I
used  the following comand to download and install it (as well as a
bunch of dependencies it had):&lt;/p&gt;
&lt;blockquote&gt;
cpan -i MIME::Tools
&lt;/blockquote&gt;
&lt;p&gt;Then I setup the aliases in /etc/aliases as follows:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;
# Spam training aliases
spam: "|/usr/local/bin/sal-wrapper.pl -L spam"
ham: "|/usr/local/bin/sal-wrapper.pl -L ham"
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;When I tested it, the script failed because it couldn't open/write to
the log file.   I manually created the log file and set it be writable
by the tool.&lt;/p&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;h4 id="MailServer_Switch"&gt;The Switchover&lt;/h4&gt;
&lt;p&gt;The switchover had to be handled carefully in an attempt to not loose
any mail as I moved things (or as little as possible).  The sequence I
worked out and used was as follows:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Stop mail services on &lt;b&gt;both&lt;/b&gt; the old and the new servers -- &lt;b&gt;ALL&lt;/b&gt;
mail services: SMTP, POP3, IMAP, etc.&lt;/li&gt;
&lt;li&gt;On the old server, tar up all of the existing user accounts and user
mailboxes and transfer them to the new server.&lt;/li&gt;
&lt;li&gt;Copy the &lt;i&gt;/etc/passwd&lt;/i&gt; and &lt;i&gt;/etc/shadow&lt;/i&gt; files to the new
server and copy out the user accounts that are moving and add them to the
existing &lt;i&gt;/etc/passwd&lt;/i&gt; and &lt;i&gt;/etc/shadow&lt;/i&gt; files on the new server.&lt;/li&gt;
&lt;li&gt;Copy the &lt;i&gt;/etc/postfix&lt;/i&gt; configuration files from the old server to
the new server and merge in any of the local settings from the old server.  In
particular the virtual domains information for all of the domains I host had
to be incorporated into the new setup.&lt;/li&gt;
&lt;li&gt; Copy the &lt;i&gt;/etc/aliases&lt;/i&gt; file from the old server to the new server
editing the file to remove any extraneous/old/useless entries.  Run
&lt;i&gt;newaliases&lt;/i&gt; to notify Postfix of the changes.&lt;/li&gt;
&lt;li&gt;Untar the user accounts in &lt;i&gt;/home&lt;/i&gt; on the new server and set the
owner/group ownership as necessary.&lt;/li&gt;
&lt;li&gt;Convert Mbox mailboxes to the new Maildir format on the new server.

&lt;p&gt;While I do alot of relaying of mail, there are a number of people who
actually get their mail off of my server and so I needed to move their
incomming mail to the new server and beccause we changed from mbox format
to Maildir format, I needed to split the mail up in to individual files.&lt;/p&gt;
&lt;p&gt;I found a perl script to do the conversion (&lt;b&gt;mb2md&lt;/b&gt;) which
I downloaded from
&lt;a href="http://batleth.sapienti-sat.org/projects/mb2md/"&gt;here&lt;/a&gt;.  Ran
a few tests and figured out that I would use the command as follows:&lt;/p&gt;
&lt;blockquote&gt;
mb2md -s "full path to mbox file" -d "full path to Maildir directory"
&lt;/blockquote&gt;
And, since I was doing this as root, I would need to:
&lt;blockquote&gt;
chown -R user.group "full path to Maildir directory"
&lt;/blockquote&gt;
so that the right user owned all the files.
&lt;/li&gt;
&lt;li&gt;Create Maildir structures for those users who didn't have mail in their
mailboxes.

&lt;p&gt;For those users who didn't have mail sitting in their mbox files on the old
system, I would need to create the correct heirarchy within their login
directory for Maildir delivery.   So I ran a script similar to the following
(I just did it from the command line, so I don't have an actual copy of the
script) in &lt;i&gt;/home&lt;/i&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;
for user in user_list
do
    mkdir $user/Maildir $user/Maildir/cur $user/Maildir/new $user/curdir/tmp
    chown -R $user $user/Maildir
done
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;/li&gt;
&lt;li&gt;On &lt;b&gt;both&lt;/b&gt; servers: Edit the DNS records to change the IP
address for mail.cahillfamily.com to be the new server and assign the name
oldmail.cahillfamily.com to the old server.  And, of course, pubish
these changes.&lt;/li&gt;
&lt;li&gt;Enable mail services on the new server (do not, for at least a day or
so, enable mail services on the old server in order to force any mail in
other SMTP queues to go to the new server).&lt;/li&gt;
&lt;li&gt;Test the setup by sending emails to various users in my hosted domains
from local clients, clients in my hame and from my work email account to
ensure that the changes had propogated out to the real world.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;Epilogue&lt;/h2&gt;
&lt;p&gt;That's about it...  At least what I remember.   I'm sure that there are
things I did during the move that I forgot to write down, but I did try to
record everything.   I'll update this if/when I figure out anything I did
wrong or forgot to note.&lt;/p&gt;
&lt;p&gt;I hope someone out there finds this useful.   I know I will the next time
I need to move the mail server to a new system.&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags :
 &lt;a href="http://technorati.com/tag/ubuntu" rel="tag"&gt;ubuntu&lt;/a&gt;
/ &lt;a href="http://technorati.com/tag/postfix" rel="tag"&gt;postfix&lt;/a&gt;
/ &lt;a href="http://technorati.com/tag/firewall" rel="tag"&gt;firewall&lt;/a&gt;
/ &lt;a href="http://technorati.com/tag/spamassassin" rel="tag"&gt;spamassassin&lt;/a&gt;
/ &lt;a href="http://technorati.com/tag/apache2" rel="tag"&gt;apache2&lt;/a&gt;
/ &lt;a href="http://technorati.com/tag/ssl" rel="tag"&gt;ssl&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-5571160892977337388?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/5571160892977337388/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=5571160892977337388' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/5571160892977337388'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/5571160892977337388'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2010/01/setting-up-new-ubuntu-server.html' title='Setting up a new ubuntu server'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-2640650028275403433</id><published>2009-03-03T08:40:00.000-08:00</published><updated>2009-03-03T12:09:35.026-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gadget'/><title type='text'>Cool gadget  #14</title><content type='html'>&lt;p&gt;I've always been an anti-multifunction office device kind of person.  If you got a good printer, it sucked at scanning or faxing.  If you got a good fax, it sucked at printing or scanning.  If you wanted to print a lot inexpensively, you used a monochrome laser printer.  If you wanted to print color, you used an ink jet type printer. None of the multifunction devices seemed to be good enough to replace multiple dedicated devices.&lt;/p&gt;
&lt;p&gt;In my home office, I've had a good monochrome laserjet printer (HP 4000TN), a good inkjet printer (HP 1200DN), excellent fax machine (Xerox something or other), a good copier (again a Xerox something or other) and a decent scanner.&lt;/p&gt;
&lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_SEiYV06qGYE/Sa2E2V4S6YI/AAAAAAAAECY/-oruqLmGq9M/s1600-h/IMG_1749.JPG"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 309px; height: 320px;" src="http://3.bp.blogspot.com/_SEiYV06qGYE/Sa2E2V4S6YI/AAAAAAAAECY/-oruqLmGq9M/s320/IMG_1749.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5309045604860750210" /&gt;&lt;/a&gt;Well, that has finally changed.  The quality of all-in-one devices has gotten good enough that I now find them acceptable for most office tasks.  Well, I guess I should clarify that I find the higher end devices satisfactory.  The low end devices still are missing or have brain dead implementations of many of the core features that I require.   The &lt;a href="http://h10010.www1.hp.com/wwpc/us/en/en/WF06b/18972-18972-238444-12004-3328086-3597338-3597361-3597470.html"&gt;HP Color Laserjet CM2320fxi Multifunction Printer&lt;/a&gt; is one such all-in-one printer.  The cost is a bit high for some home purchases (I paid a discounted $850), but the functionality gives me all the magic features I needed and does them all well enough that I can get rid of the existing multiple devices I have lying about which, together, accomplish some of the same tasks.&lt;/p&gt;
&lt;p&gt;This device does the following tasks very well:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Built-in network printing from any computer in the house.&lt;/li&gt;
&lt;li&gt;Black/white laser printing&lt;/li&gt;
&lt;li&gt;Color laser printing -- looks as good as anything I've gotten off inkjets&lt;/li&gt;
&lt;li&gt;Automatic duplex printing (printing both sides of the paper).&lt;/li&gt;
&lt;li&gt;Black/white copying (single or multi-page)&lt;/li&gt;
&lt;li&gt;Color copying (single or multi-page)&lt;/li&gt;
&lt;li&gt;Fax sending/receiving with auto document feed&lt;/li&gt;
&lt;li&gt;Automatic Scanning to email of multi-page documents (PDF)&lt;/li&gt;
&lt;li&gt;Print directly from camera memory cards&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;My only complaints are:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;it is somewhat more noisy than my old laserjet printer, though after a few weeks I've gotten used to it and don't notice it all that much&lt;/li&gt;
&lt;li&gt;it is &lt;span style="font-weight:bold;"&gt;tall&lt;/span&gt; (because of the scanner unit on top with space for paper outputs and with 2 input trays).  So tall that I haven't hooked up the 2nd input tray or the top would hit the cabinets above.   It would be nice if the scanner/control unit could be separated and placed to the side of the printer.  Yeah that would look like two devices, but it would make it easier for my kids to see the top buttons.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Those are relatively minor nits.  We are extremely happy with this printer and all of its features..&lt;/p&gt;
&lt;p&gt;That said, I do continue to own a desktop flatbed photo scanner and a dedicated film scanner.  I could probably do most of what I want to do with the flatbed scanner with the new device.  However, there's a lot of convenience to having it on my desk easily reachable when scanning many prints and I can take it with me when I go to the parents house to scan old pictures there.&lt;/p&gt;
&lt;p&gt;So while I have gotten rid of the fax machine, copier, laser printer and inkjet, I still have some specialized devices lying about.  And, BTW, I sold the old devices for $100 and sent back the inkjet printer to HP for an upgrade rebate of another $100, so the net cost to me was just $650.&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/printer" rel="tag"&gt;printer&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/hp" rel="tag"&gt;HP&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/multifunction" rel="tag"&gt;multifunction&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/cm2320fxi" rel="tag"&gt;CM2320fxi&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/all-in-one" rel="tag"&gt;all-in-one&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/gadget" rel="tag"&gt;gadget&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-2640650028275403433?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/2640650028275403433/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=2640650028275403433' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/2640650028275403433'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/2640650028275403433'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2009/03/cool-gadget-14.html' title='Cool gadget  #14'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_SEiYV06qGYE/Sa2E2V4S6YI/AAAAAAAAECY/-oruqLmGq9M/s72-c/IMG_1749.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-8555555179585053726</id><published>2009-02-27T20:19:00.000-08:00</published><updated>2009-02-27T20:34:15.920-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='travel'/><title type='text'>Exercising on the road</title><content type='html'>&lt;p&gt;I've spent the past week bouncing up and down the west coast between San Jose, CA and Portland, OR -- not spending even 48 hours in either location at any point.&lt;/p&gt;
&lt;p&gt;This threw a wrench into my exercise program because not only did I have to find the time to exercise, I also had to figure out what to do with my sweaty clothes when I checked out each day.&lt;/p&gt;
&lt;p&gt;At first glance, you might think that's easy -- just put the wet clothes in one of the plastic laundry bags and pack it.   That is what I typically do when I'm checking out on my way home.  However, since I wanted to use the clothes to exercise each day and I didn't feel like putting on wet clothes to go work out, I needed to dry them out.&lt;/p&gt;
&lt;p&gt;When I'm staying at the same place, I can just let them air dry and that works well enough.  However, since I had to change hotels 3 times this week, I needed something else to do.   I could have used the iron to heat up and steam them out, but it just felt like something was wrong with ironing sweat into my clothes.&lt;/p&gt;
&lt;p&gt;I ended up using the room blow dryer to just blow them dry.  Worked fine.  Clothes were dry each day and nothing appeared to be growing on them (plus the rest of my clothes stayed dry.&lt;/p&gt;
&lt;p&gt;In case you're wondering, I did an hour on the stationary bike each day.  Not too shabby for an old man, if I must say so myself.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/travel" rel="tag"&gt;travel&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/exercise" rel="tag"&gt;exercise&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-8555555179585053726?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/8555555179585053726/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=8555555179585053726' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/8555555179585053726'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/8555555179585053726'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2009/02/exercising-on-road.html' title='Exercising on the road'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-3956185561718924528</id><published>2009-02-20T18:45:00.000-08:00</published><updated>2009-02-20T18:45:58.327-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='digitizing life'/><title type='text'>Digitizing slides</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_SEiYV06qGYE/SZ9NdQlyGBI/AAAAAAAAEA0/oGqOVrR9Ono/s1600-h/Slide.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 168px;" src="http://1.bp.blogspot.com/_SEiYV06qGYE/SZ9NdQlyGBI/AAAAAAAAEA0/oGqOVrR9Ono/s200/Slide.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5305044051130718226" /&gt;&lt;/a&gt;In the days of film cameras, one of the ways to take a lot of pictures cheaply was to use slide film rather than standard film.   The film was around the same price, but when developing slides, you didn't get any prints, so rather than a $10 or $15 bill for the developing, the bill was just $3 or so (if I remember correctly -- in any case it was way cheaper).  Others also would claim that the slide film was better for pictures &amp; sharing since you could no project them to an audience (back in the days of 9 and 11 *inch* black and white TVs and *no* computers, there wasn't any other way to do it).&lt;/p&gt;
&lt;p&gt;So, I have thousands of slides that I have taken over the years(several hundred from my honeymoon alone) and my mother-in-law brought over a bunch of slides that Angie's father had taken over the years (going back to the late 50s).  I want to get all of these scanned into the computer so that we can share them and, if desired, print them.&lt;/p&gt;
&lt;p&gt;Before I get into the nitty gritty, I want to lay out some ground rules that I have for scanning large batches of slides/negatives.  These have grown out of my experience scanning film and your mileage may vary, but I think they are a good starting point for anybody thinking about a similar project.  They include:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;I want the process as automated as possible so that I can do real work while the scanning is going on.   Processes that require manual intervention every few minutes means that I have to dedicate larges amounts of spare time that I just don't have (like any of you do).&lt;/li&gt;
&lt;li&gt;I want "good enough" quality pictures to come out of the scan process so that I don't have to do any manual processing of the photos (other than rotating them).  When I first started scanning negatives, I would do a raw scan at high resolution and then spend 15 to 20 minutes per photo to get them to a state where I liked them.  This is clearly unacceptable for large amounts of photos.
&lt;p&gt;So my model is to get them good enough off the scanner so that I can enjoy/share/watch/etc. without any manual processing.&lt;/p&gt;
&lt;li&gt;I want to be able to easily figure out which slide/negative the photo came from after I'm done scanning in case there's a picture that I want to do more with (such as scanning at high resolution and lots of manual processing so we can print out an 8x10 or 16x20 photo).  This means that I need to be able to figure out which negative from without having to resort to a manual search of thousands of slides.&lt;/li&gt;
&lt;li&gt;I want to preserve the film in case someone wants to work with it years from now.&lt;/li&gt;
&lt;li&gt;Speed is not the driving factor.  Scanning thousands of slides/negatives will take time.  What is key is that the work can be done while I'm doing other stuff.  This leads to some choices on the scanning which actually make the scans take longer, but you get better quality scans and you get to keep working on the day job while you're doing the scanning.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;These ground rules led to a number of choices I made in setting up this process.  As I describe the process, I'll try to explain why and how I made these choices.&lt;/p&gt;
&lt;H2&gt;Choosing the scanner&lt;/H2&gt;
&lt;p&gt;The first issue to address is how am I going to scan slides themselves.  There are two basic options for scanning slides:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Using the slide adaptor that comes with most flatbed photo scanners (if you have a multi-function device (otherwise known as an all-in-one), you're probably out of luck as they don't seem to come with options for scanning slides).  These adapters typically require that you place some number of slides (typically 3 or 4) into the adapter, remove the typical white background for document scanning and then scan the slides).
&lt;p&gt;I find this process painful for many reasons, the biggest one being that it's very time consuming and manual in nature.  However, this isn't too bad if you don't have a bazillion slides to process.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;Using a film scanner designed to scan slides and negatives (film) rather than scanning documents/photos.   These typically do a much better job on film that the flatbed scanners and they usually also have substantial automation capabilities.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;It just so happens that I have both types of scanners and for me the clear choice was to use the film scanner.   My film scanner is a &lt;a href="http://www.imaging-resource.com/PRODS/LS4K/L40A.HTM"&gt;Nikon Super Coolscan 4000 ED&lt;/a&gt; (it's about 5 years old and has been superseded by the newer 5000ED).&lt;/p&gt;
&lt;H2&gt;Organizing for scanning&lt;/H2&gt;
&lt;p&gt;If you're like most people, your slides have not stayed in their little boxes that you get back from the developer and frequently they are intermingled (in some cases within one of those slide projector trays, in other cases in the little slide shoe box where you threw all the slides).&lt;/p&gt;
&lt;p&gt;One note about handling slides:  Most slides are raw film stored within a cardboard or plastic mount which just holds the film without providing any protection to the film itself.  You should use care when handling the slides to keep fingerprints, water, dust, etc. off the slides.  I recommend using low-cost lint free gloves available at most photo shops when handling the slides.&lt;/p&gt;
&lt;p&gt;You can choose to stay with the disorganization and just scan things, or you can put the slides back into their original sets.  I chose to do the latter because figuring out what's on slides and telling stories about them frequently his helped by the nearby slides on the same strip of film.  Getting the slides back into the set and then perusing them in order helps greatly.&lt;/p&gt;
&lt;p&gt;To get them back into sets, you need to look at each slide.  Most slides, even those printed many years ago, will have two pieces of information on each slide.  A slide number in one of the corners and a processing month/year stamp.  Sometimes this information is printed on the slide.  Sometimes it's embossed in the cardboard mount.  In many cases, the printing is hard to read and you have to use some sleuthing to figure out what set the slide belongs to and what slide number it is in that set.  In the slide below you can fairly clearly see the slide number (34), but the processing date (May 89) is embossed on the cardboard and a bit harder to see.&lt;/p&gt;
&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_SEiYV06qGYE/SZ9QyfwR5iI/AAAAAAAAEA8/JspsNOmlK_k/s1600-h/Slide-header.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 163px;" src="http://4.bp.blogspot.com/_SEiYV06qGYE/SZ9QyfwR5iI/AAAAAAAAEA8/JspsNOmlK_k/s400/Slide-header.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5305047714513413666" /&gt;&lt;/a&gt;
&lt;p&gt;Once I had them all grouped in sets &amp; ordered by slide number I simply rubber banded them and put them into my to-be-done box and then started cranking.&lt;/p&gt;
&lt;H2&gt;Scanning the slides&lt;/H2&gt;
&lt;H3&gt;Setting up the scanner&lt;/H3&gt;
&lt;p&gt;My 4000ED has an optional slide feeder (SF-200) which can feed up to 50 slides at a time for automated processing.  This is ideal for my project.  However, in many of the reviews of the product and in various support web sites, I found that there were many complaints about slides jamming in the machine -- which would really interfere with my automatic process requirement.  I came close to just blindly upgrading to the latest version of the feeder (SF-210) thinking that it had to be better than the one I already had.  However, from the reviews that didn't seem to be the case.&lt;/p&gt;
&lt;p&gt;I should note that after looking at the wide variety of slides that I had in my collection (especially when I added in the older slides from my mother-in-law) it isn't so surprising that this is an issue.  The slides vary greatly in materials (plastic, cardboard, even some metal) and they varied greatly in thickness.&lt;/p&gt;
&lt;p&gt;All that said, I found one suggestion in an Amazon review that recommended tilting the scanner about 10 degrees and instead of using the spring-loaded slide pusher, place a C battery into the tray (it would roll down with the slides adding just a small amount of continuous, even, pressure).  I gave that solution a whirl and across about 2K slides only had 6 or so jams -- two of which were caused by material defects in the slide mounting (the film had curved out of the mount and caught on the next slide causing the two to load simultaneously).  Not bad.&lt;/p&gt;
&lt;p&gt;To accomplish this I used two index card packs to raise the one side of the scanner and just placed the battery into the tray as you can see below:&lt;/p&gt;
&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_SEiYV06qGYE/SZ9T8NgBQHI/AAAAAAAAEBE/igijq1p-yBY/s1600-h/SlideScanner.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 274px; height: 320px;" src="http://3.bp.blogspot.com/_SEiYV06qGYE/SZ9T8NgBQHI/AAAAAAAAEBE/igijq1p-yBY/s320/SlideScanner.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5305051179946950770" /&gt;&lt;/a&gt;
&lt;h3&gt;Setting up the scanner software&lt;/h3&gt;
&lt;p&gt;Nikon Scan 4 is the software package that comes with the scanner.   I modified the default settings to enable the following features:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Enabled Digital ICE - which does a great job getting rid of dust and small scratches  -- it's not perfect, but it does work pretty well.&lt;/li&gt;
&lt;li&gt;Enabled Digital ROC and Digital GEM post processing - these do a level of fade &amp; color correction that makes many scans presentable that otherwise wouldn't be without a lot of manual processing.&lt;/li&gt;
&lt;li&gt;Enable multi-scanning 2x - each slide is scanned twice and the scanned data is averaged together -- this gets a better scanned picture on most slides.&lt;/li&gt;
&lt;li&gt;Set resolution to 2,000 pixels/inch (about 1/2 the full res quality of the scanner) at 100% scale.   Just to keep the pictures down to a reasonable size on disk and to make some of the post processing more efficient.  I can always come back later if I want a better quality scan on a particular slide.&lt;/li&gt;
&lt;li&gt;For each batch scan, I set the file name to a one up sequence starting with the year (so, for example, the slides I recently scanned had a base file name of si2009001 and a two digit sequential number of the slide within the slide set).  When I processed the next batch, I would increase the base file name by one (e.g. si2009002).  The net result is that I could tell which slide set and which slide within a slide set a digital file came from .  For example, a digital file with the name si200904523.jpg came from slide 23 in the 45th slide set scanned in 2009.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Loading the slides&lt;/h3&gt;
&lt;p&gt;&lt;b&gt;Emulsion side&lt;/b&gt; - Each slide has an emulsion side and a smooth side.  The emulsion slide is the side that the image is recorded and it recorded backwards (to view the slide correctly you view through the slide from the non-emulsion side.  This is important because most scanners will tell you that they want the emulsion side facing a particular way (either by directly mentioning the emulsion side, or by using pictures of a slide with an ABC on it (when ABC is backwards you are looking at the emulsion side).  On most slides that have some kind of printing, the side that indicates "this side toward screen" or something like that is the emulsion side and the slide number and date stamp are typically on the viewing (non-emulsion) side.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Up vs down&lt;/b&gt; - the orientation of the slides (which edge is up) seems to be somewhat random with respect to the printing on the slides.  In some cases they are both in sync (the slide correctly oriented when the number/time stamp are on the top.  In other cases it's the opposite (the number/date stamp needs to be upside down on the bottom in order for the slide to be oriented correctly).  I found I had to look at a few slides to figure out which way it worked with that set.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Landscape vs Portrait&lt;/b&gt; - while slides usually appear square, the film within the slide is not.  When you're holding the camera horizontally (the normal position) the image will be recorded in a landscape mode (where the width of the image is longer than the height of the image).  When you're holding the camera vertically (on its side) the image will be recorded in portrait mode (longer height, shorter width).  This is important in slides because in most scanners you should &lt;b&gt;not&lt;/b&gt; turn the slide to correctly orient the picture if it was taken in portrait mode.  Just scan the picture in landscape mode and later, in software, rotate it 90 degrees to get it into portrait mode.   The reason for this is that most scanners only scan the landscape portion of the slide and will miss some of the slide while recording some of the mount if you scan the slide in portrait mode.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Slide Numbers&lt;/b&gt; - most slide sets do not start with slide 1 (at least most of mine did not) and frequently that have slides missing (sometimes simply because the slide image was blank).  I wanted the actual slide numbers to match the file names so I would start the file numbers with the first slide number and I would ensure that all slides were sequentially in order, filling in missing slides with slides from the end.  When I had to do filling in, I would go back to the files after the set was scanned and manually renumber the fill-in slides to correctly represent their slide number.&lt;/p&gt;
&lt;h3&gt;Scanning the slides&lt;/h3&gt;
I would simply load a set into the feeder (correctly oriented, emulsion side to the right when looking at the scanner) indicate in the software that I was feeding X slides and set the starting number at Y.  Then I was off to do the real work while the scanner went along chugging through the slides in the feeder.&lt;/p&gt;
&lt;h2&gt;Slide Storage&lt;/h2&gt;
In order to be able to quickly locate slides, as well as to provide for archival storage of the slides, I chose to use &lt;a href="http://www.printfile.com/index.asp?PageAction=VIEWPROD&amp;ProdID=82"&gt;Print File Archival Slide Preserver&lt;/a&gt; sheets for the slides and placed a label on each sheet indicating the slide set (which was part of the digital file name) that the sheet contained:&lt;/p&gt;
&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_SEiYV06qGYE/SZ9inPILHEI/AAAAAAAAEBM/K4C8F3j0c40/s1600-h/PrintFileSheet.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 217px;" src="http://1.bp.blogspot.com/_SEiYV06qGYE/SZ9inPILHEI/AAAAAAAAEBM/K4C8F3j0c40/s320/PrintFileSheet.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5305067312280968258" /&gt;&lt;/a&gt;
&lt;p&gt;You can get these at many photography supply stores.  I purchased my at &lt;a href="http://www.archivalusa.com/"&gt;Archival USA&lt;/a&gt;.
&lt;p&gt;Once I had the slides stored in the sheets, I placed the slide preserver sheets into &lt;a href="http://www.centuryboxes.com"&gt;Century Box&lt;/a&gt; Archival Storage Albums (that I also purchased from Archival USA).  Another option would have been to buy the file hangers that Print File makes and simply hang the sheets in a file cabinet, but I preferred the storage box.  Anyway, I placed the slide pages into the boxes and placed labels onto the boxes indicating which slide set ranges were in the box.&lt;/p&gt;
&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_SEiYV06qGYE/SZ9k438srLI/AAAAAAAAEBc/kW0ZGLpJ-4k/s1600-h/SlideSheetsInBox.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 214px;" src="http://1.bp.blogspot.com/_SEiYV06qGYE/SZ9k438srLI/AAAAAAAAEBc/kW0ZGLpJ-4k/s320/SlideSheetsInBox.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5305069814319721650" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_SEiYV06qGYE/SZ9kv53ao6I/AAAAAAAAEBU/zgOcJv3rX64/s1600-h/SlideBoxesLabeled.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 243px;" src="http://3.bp.blogspot.com/_SEiYV06qGYE/SZ9kv53ao6I/AAAAAAAAEBU/zgOcJv3rX64/s320/SlideBoxesLabeled.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5305069660215616418" /&gt;&lt;/a&gt;
&lt;h2&gt;Miscellaneous Tidbits&lt;/h2&gt;
&lt;h3&gt;Use the magnifying glass, Luke&lt;/h3&gt;
I found having a magnifying glass quite useful in trying to determine the slide numbers and/or date stamps on slides as well as to try to determine the orientation of the slides on slides that had no markings.  It was just plain useful.  Get one and have it nearby when you're working on the slides.
&lt;h3&gt;Remounting Slides&lt;/h3&gt;
&lt;p&gt;In some cases, it might be worthwhile to remount slides.  For example if the mount is damaged, too thick, or otherwise interferes with being able to scan the image.  I had this with one particular set of slides that came from my mother-in-law.  It seems that in the late 1950s in Europe, slides were mounted in metal mounts that sandwiched the film between two pieces of glass. When they got to me, they were in pretty sad shape:&lt;/p&gt;
&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_SEiYV06qGYE/SZ9nnWCNaII/AAAAAAAAEBk/gpiOWWqQPLY/s1600-h/MetalSlide.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 267px;" src="http://4.bp.blogspot.com/_SEiYV06qGYE/SZ9nnWCNaII/AAAAAAAAEBk/gpiOWWqQPLY/s320/MetalSlide.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5305072811693140098" /&gt;&lt;/a&gt;
&lt;p&gt;So I ordered some slide mounts and peeled back the metal cover, separated out the film from the glass sandwich and mounted them into new slides which scanned much better than the originals had.&lt;/p&gt;
&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_SEiYV06qGYE/SZ9oFn5S3KI/AAAAAAAAEBs/fm4WGYeA8_c/s1600-h/MetalSlidePeeledBack.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 236px;" src="http://2.bp.blogspot.com/_SEiYV06qGYE/SZ9oFn5S3KI/AAAAAAAAEBs/fm4WGYeA8_c/s320/MetalSlidePeeledBack.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5305073331883662498" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_SEiYV06qGYE/SZ9oRum4hkI/AAAAAAAAEB0/x4rz8Y1RwK4/s1600-h/MetalSlideSeparated.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 167px;" src="http://4.bp.blogspot.com/_SEiYV06qGYE/SZ9oRum4hkI/AAAAAAAAEB0/x4rz8Y1RwK4/s320/MetalSlideSeparated.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5305073539843917378" /&gt;&lt;/a&gt;
&lt;h2&gt;Summary&lt;/h2&gt;
&lt;p&gt;This process seems long and arduous, but in reality the most time consuming part (other than the remounting of that one metal set) was the organizing the slides step because many of the slides were mixed together, some had no writing on them whatsoever, many had slide numbers and date stamps that were almost unreadable (magnifying glass helped there sometimes).&lt;/p&gt;
&lt;p&gt;Once the scanning got started, the process essentially amounted to about 5 to 7 minutes to swap slides and store the scanned slides every hour an a half or so (that's about how long it took to go through the average 30 or so slides per set with the settings I had used on the scanner software).&lt;/p&gt;
&lt;p&gt;I'm very happy with most of the pictures and for those that I'm not happy with, the slide itself usually left a lot to be desired -- almost always because of low exposure on the film.&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/scanning" rel="tag"&gt;scanning&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/photograph" rel="tag"&gt;photograph&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/slide" rel="tag"&gt;slide&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/35mm" rel="tag"&gt;35MM&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/digital+conversion" rel="tag"&gt;digital conversion&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/digitizing" rel="tag"&gt;digitizing&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-3956185561718924528?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/3956185561718924528/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=3956185561718924528' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3956185561718924528'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3956185561718924528'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2009/02/digitizing-slides.html' title='Digitizing slides'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_SEiYV06qGYE/SZ9NdQlyGBI/AAAAAAAAEA0/oGqOVrR9Ono/s72-c/Slide.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-7896486458505466727</id><published>2009-02-18T03:57:00.000-08:00</published><updated>2009-02-18T09:26:35.651-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='spam'/><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><title type='text'>Unsubscribing hell...</title><content type='html'>&lt;p&gt;For some unfathomable reason I decided today to try to unsubscribe to some of the various spam messages I get from reputable companies.  I would never try to unsubscribe to the umpteen million messages I get about body parts enlargement (some of which wouldn't look so hot on my if they were enlarged) or performance enhancement as the act of unsubscribing just confirms that they have a real person on the other end of the email line.&lt;/p&gt;
&lt;p&gt;So, for reputable companies in the US, they are required by the &lt;a href="http://en.wikipedia.org/wiki/CAN-SPAM_Act_of_2003"&gt;CAN-SPAM act of 2003&lt;/a&gt; to have an opt out method in each email.  From the &lt;a href="http://www.ftc.gov/bcp/edu/pubs/business/ecommerce/bus61.shtm"&gt;FTC's web site&lt;/a&gt;:
&lt;blockquote&gt;
It requires that your email give recipients an opt-out method. You must provide a return email address or another Internet-based response mechanism that allows a recipient to ask you not to send future email messages to that email address, and you must honor the requests. You may create a "menu" of choices to allow a recipient to opt out of certain types of messages, but you must include the option to end any commercial messages from the sender.
&lt;br&gt;&lt;br&gt;
Any opt-out mechanism you offer must be able to process opt-out requests for at least 30 days after you send your commercial email. When you receive an opt-out request, the law gives you 10 business days to stop sending email to the requestor's email address. You cannot help another entity send email to that address, or have another entity send email on your behalf to that address. Finally, it's illegal for you to sell or transfer the email addresses of people who choose not to receive your email, even in the form of a mailing list, unless you transfer the addresses so another entity can comply with the law.
&lt;/blockquote&gt;
&lt;p&gt;So, I took a look at several of my emails... The emails from &lt;a href="http://www.landsend.com"&gt;Lands End&lt;/a&gt;, &lt;a href="http://www.sears.com"&gt;Sears&lt;/a&gt;, &lt;a href="http://www.1800flowers.com"&gt;1-800-Flowers.com&lt;/a&gt;, &lt;a href="http://www.americanexpress.com"&gt;American Express&lt;/a&gt; and &lt;a href="http://www.apple.com"&gt;Apple&lt;/a&gt; all had links and they all worked as one would expect.  The either directly unsubscribed you or brought you to a page that gave you a few options (different kinds of emails, change email address, etc.) and one or two clicks and you were done.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.microsoft.com"&gt;Microsoft&lt;/a&gt;, on the other hand, was a true royal pain in the *ss.  I received an email from them that included the unsubscribe link at the top:&lt;/p&gt;
&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_SEiYV06qGYE/SZxA4dr6Y7I/AAAAAAAAD-Q/ZAsdHy-kZDo/s1600-h/MSEmailHeader.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 49px;" src="http://2.bp.blogspot.com/_SEiYV06qGYE/SZxA4dr6Y7I/AAAAAAAAD-Q/ZAsdHy-kZDo/s320/MSEmailHeader.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5304185799921263538" /&gt;&lt;/a&gt;
&lt;p&gt;And another at the bottom:&lt;/p&gt;
&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_SEiYV06qGYE/SZxBHO6LysI/AAAAAAAAD-Y/BDhW9JfH5nA/s1600-h/MSEmailFooter.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 22px;" src="http://2.bp.blogspot.com/_SEiYV06qGYE/SZxBHO6LysI/AAAAAAAAD-Y/BDhW9JfH5nA/s320/MSEmailFooter.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5304186053652630210" /&gt;&lt;/a&gt;
&lt;p&gt;So one would think that it's all kosher.  That clicking on the link would get you unsubscribed.   However, that wasn't to be the case.  What you got when you used that link was a page which said that I had to use my Windows Live ID to manage my settings and that if I didn't have one, I would have to create a Windows Live ID account in order to manage my subscriptions.&lt;/p&gt;
&lt;p&gt;So you can't just unsubscribe.  You have to create an account on some Microsoft server.&lt;/p&gt;
&lt;p&gt;Being the persistent one, I went ahead and did so.  That required that I provide an email address and also required out-of-band email validation (where they send you an email that has a link you have to click on to prove that you actually have that email address.&lt;/p&gt;
&lt;p&gt;Did that and got logged into Windows Live.  However, all the stuff about managing my subscription was gone and there were  no clear links on the page that would get me there.  So I went back to the email that started this and selected the unsubscribe link again.&lt;/p&gt;
&lt;p&gt;This brought me to the "Profile Center" where there was a link for manage subscriptions.  I thought I was getting close, but no, there was another roadblock that they threw up.  There was no email address in there (they didn't take the one I entered for my Windows Live ID account).  So I had to enter it again. And, of course, before I could manage it I had to go through the email validation again.&lt;/p&gt;
&lt;p&gt;Then back to the profile page and back to managing subscriptions where I could finally unsubscribe.   Now I'm stuck with a Windows Live ID account that I don't want but I don't see any easy way to get rid of it.&lt;/p&gt;
&lt;p&gt;I think this rigmarole they have set up is in clear violation of the spirit and intent of the CAN SPAM laws and should be fixed.  I should be able to unsubscribe easily without having to create an account.  I should be able to unsubscribe with a minimal of effort.&lt;/p&gt;
&lt;p&gt;Kudos to Apple, Sears, and all the rest who, IMHO, got it right.  Daggers to Microsoft who clearly got it totally and inexcusably wrong.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/spam" rel="tag"&gt;spam&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/microsoft" rel="tag"&gt;Microsoft&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/can-spam" rel="tag"&gt;can-spam&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/live+id" rel="tag"&gt;Live ID&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/email" rel="tag"&gt;email&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-7896486458505466727?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/7896486458505466727/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=7896486458505466727' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/7896486458505466727'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/7896486458505466727'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2009/02/unsubscribing-hell.html' title='Unsubscribing hell...'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_SEiYV06qGYE/SZxA4dr6Y7I/AAAAAAAAD-Q/ZAsdHy-kZDo/s72-c/MSEmailHeader.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-7880046968376613243</id><published>2009-02-16T04:11:00.001-08:00</published><updated>2009-02-16T04:45:48.038-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='digitizing life'/><title type='text'>Digitizing life</title><content type='html'>&lt;p&gt;Like many people today, I have a large collection of analog media containing family memories.  Much of it is my own, but a substantial portion belongs to either my or my wife's parents.   This includes film negatives, slides, prints, video film, video tapes, etc.&lt;/p&gt;
&lt;p&gt;The saddest part about this old stuff is that it deteriorates over time (even when aggressive archival storage methods are used).  In addition, it's very hard to share and usually gets dispersed as various interested parties (i.e. siblings) request to take one of them (sometimes promising to make a copy and return the original -- and I'm sure  some actually do that).&lt;/p&gt;
&lt;p&gt;I have piles and piles of pretty much all of that other than video film.  I have decided that it's about time to bring it all into the modern digital world and am digitizing all of it -- negatives from all the 35MM photos I took, prints from all of our kids class/sports photos or from those 4x6s that we don't have negatives for, thousands of slides (which, IMHO, were the old fashioned "digital" camera in that you just paid $3 to get the roll of film developed without any prints and then said you would print the photos you liked, but never got around to it :-)).&lt;/p&gt;
&lt;p&gt;When I'm done, I expect to be able to share my entire digital collection with my family either directly or when I post the more interesting photos on &lt;a href="http://www.facebook.com"&gt;Facebook&lt;/a&gt; :-).  I also expect that when my kids grow up and leave the house, they will each be able to take a copy of our entire collection with them to be able to peruse whenever they like. &lt;/p&gt;
&lt;p&gt;I'm going to write a series of blog entries describing what I've chosen to do for each type of media and how I proceeded.  Hopefully some out there will find it useful in one way or another.&lt;/p&gt;
&lt;p&gt;BTW - there are a number of services out there that will do this for you for a fee.   I've chosen to do it all myself rather than use a service because I want to organize things as I convert and I want to have sensible conversions (if you used the video camera to record your kids birthday and your friends kids' school performance you don't want them on the same DVD -- at least I don't).   I've also worked to automate the process as much as possible so I can do it while I'm doing other things.&lt;/p&gt;
&lt;p&gt;Finally, I've accepted that this will take a long time and not be done overnight and I will methodically work through the piles (and they are large piles).&lt;/p&gt;
&lt;p&gt;Wish me luck!&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/digitizing" rel="tag"&gt;digitizing&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/scanning" rel="tag"&gt;scanning&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/film" rel="tag"&gt;film&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/35mm" rel="tag"&gt;35mm&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/slides" rel="tag"&gt;slides&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-7880046968376613243?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/7880046968376613243/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=7880046968376613243' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/7880046968376613243'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/7880046968376613243'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2009/02/digitizing-life.html' title='Digitizing life'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-3822138334185365627</id><published>2009-01-18T11:32:00.000-08:00</published><updated>2009-01-18T11:43:13.750-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='travel'/><category scheme='http://www.blogger.com/atom/ns#' term='united'/><title type='text'>Another change in United's Mileage Plus Program</title><content type='html'>I've &lt;a href="http://conorcahill.blogspot.com/2008/11/paying-for-upgrades.html"&gt;written&lt;/a&gt; about some of the changes &lt;a href="http://www.united.com"&gt;United&lt;/a&gt; made to the &lt;a href="http://www.united.com/page/article/0,6722,52895,00.html?jumpLink=%2F2009prgchng"&gt;Mileage Plus program for 2009&lt;/a&gt; (most of which I don't like), but I just noticed one that hasn't been documented much of anywhere that I have found.  Kind of just snuck in there.
&lt;p&gt;In the past, when you qualified for one of the premier levels, that status was good through the end of February the following year (so, my 2008 1K status was good through the end of Feb 2009).  However, for my 2009 1K status my card is only good through the end of January 2010 -- a month shorter.&lt;/p&gt;
&lt;p&gt;This is probably because with all the electronic record keeping, they think they don't need the extra month to get all the records in order to determine status.&lt;/p&gt;
&lt;p&gt;This was not mentioned in the &lt;a href="http://www.united.com/page/article/0,6722,52895,00.html?jumpLink=%2F2009prgchng"&gt;2009 program changes page&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;We'll see if my &lt;a href="http://conorcahill.blogspot.com/2007/01/uniteds-global-services.html"&gt;Global Services&lt;/a&gt; card (which I haven't received yet, half way through the month) has the same timeframe or if it gets the extra month when my card, hopefully, shows up.&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/united" rel="tag"&gt;United&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/ual" rel="tag"&gt;ual&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/mileage+plus" rel="tag"&gt;Mileage Plus&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-3822138334185365627?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/3822138334185365627/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=3822138334185365627' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3822138334185365627'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3822138334185365627'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2009/01/another-change-in-uniteds-mileage-plus.html' title='Another change in United&apos;s Mileage Plus Program'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-8591559800263078842</id><published>2009-01-06T07:32:00.000-08:00</published><updated>2009-01-06T07:45:50.981-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='travel'/><category scheme='http://www.blogger.com/atom/ns#' term='united'/><title type='text'>United comes clean on Global Services status</title><content type='html'>&lt;p&gt;For years, &lt;a href="http://www.united.com"&gt;United&lt;/a&gt; has been very secretive about how one becomes a Global Services member.  My &lt;a href="http://conorcahill.blogspot.com/2007/01/uniteds-global-services.html"&gt;blog entry on Global Services&lt;/a&gt; is still the most popular page here, 2 years after it has been written -- accounting for more than 25% of my page hits. It's even the number one search result for &lt;a href="http://www.google.com/search?q=united+global+services"&gt;"United Global Services"&lt;/a&gt; on Google (yeah, I'm proud :-) ).&lt;/p&gt;
&lt;p&gt;When I logged into my united account today, I found the following published on the web site:&lt;/p&gt;
&lt;blockquote&gt;
&lt;b&gt;Ensure your Global Services status for 2009&lt;/b&gt;
Fly 50,000 miles on United® or United Express® in First (F, A, P), Business (C, D, Z), or full-fare United Economy® (Y or B) during 2008, and your Global ServicesSM membership will be renewed for the 2009 program year. 
&lt;br&gt;&lt;br&gt;
Track your progress by visiting &lt;a href="http://www.united.com/gstracking"&gt;united.com/gstracking&lt;/a&gt;.
&lt;/blockquote&gt;
&lt;p&gt;Of course, it's kind of late for the 2009 program year at this point.  But still it's now out in the open as to what you need to do to qualify.   They even have a web page that you can go to to check your earnings status.  Mine is still showing my 2008 earnings (since I know I have absolutely zero earnings in 2009).&lt;/p&gt;
&lt;p&gt;Of course, I'm not convinced that this is the &lt;b&gt;only&lt;/b&gt; way to get Global Services status.  I think that their marketing and business relationship department will use GS stats as a reward for important business partners who bring them substantial corporate business, even if they, themselves, don't fly a lot.  That's business as I would expect it to be.&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/ual" rel="tag"&gt;ual&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/united+airlines" rel="tag"&gt;United Airlines&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/global+services" rel="tag"&gt;Global Services&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/travel" rel="tag"&gt;travel&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/mileage+plus" rel="tag"&gt;Mileage Plus&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-8591559800263078842?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/8591559800263078842/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=8591559800263078842' title='10 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/8591559800263078842'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/8591559800263078842'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2009/01/united-comes-clean-on-global-services.html' title='United comes clean on Global Services status'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>10</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-7357736677362783136</id><published>2008-12-19T09:54:00.001-08:00</published><updated>2008-12-19T16:08:41.126-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='self defense'/><title type='text'>Situational Awareness</title><content type='html'>&lt;p&gt;One of the best defenses against phishing, scamming or pretty much any other type of social engineering attack is to be aware of your situation and what to expect to have happen as well as to know when it should happen.  The various attacks that come along should all raise red flags at several steps in the process.   In the real world, we get this through millions of years of survival training -- those who didn't sense trouble usually died out before they could reproduce.&lt;/p&gt;
&lt;p&gt;However, in the internet world, most of the visual and/or aural queues that raise your sense of awareness and caution are missing and we need to learn a new set of such protection mechanisms.&lt;/p&gt;
&lt;p&gt;To that end, I'm going to periodically talk through an attack and point out things that one might notice which should cause you to think twice about continuing (or at least do a much more detailed check of whats going on before you continue).&lt;/p&gt;
&lt;p&gt;Today, I received an interesting email reportedly from  "Classmates.com" (which, of course, we all know we can't trust as anyone can claim to be anyone else with current mailing technologies):
&lt;blockquote&gt;
Your Classmates Events: Reunion January 16th 2009

" With pride and joy we invite you to share a special day in our lives and join us for the Class Reunion on Friday, January 16th 2009. 
Bring the gang from Our High School back together again!
Great party - from start to finish! "

Proceed to view details:

http://video.classmates.completeserv.user-v5mn1ckah.newyearclassmates.com/messages.htm?/type/INVITATION=m5kibxmz390kynf



Your favorite people are already here, so use ClassmatesTM to bring them together.

With best regards, Carmine Hilton. Customer Service Department.
Copyright 1995-2008 Classmates Online, Inc. All Rights Reserved.
&lt;/blockquote&gt;
&lt;p&gt;At first glance this seemed somewhat legit because I am a member of &lt;a href="http://www.classmates.com"&gt;Classmates.com&lt;/a&gt; and so could reasonably expect to get emails from them.   I'm also in a graduating class that would have an interesting anniversary in 2009 so it does make sense that we would be scheduling a reunion.&lt;/p&gt;
&lt;p&gt;However, the email address to which the email was addressed is not the one that I have associated with classmates.com account - so clearly it wasn't classmates.com sending me the email.  The address that was used is one that I've had for ages  and typically gets close to 99.9% spam, so my internal "what's going on here" guard sprung up.&lt;/p&gt;
&lt;p&gt;In addition, the email didn't look like the typical Classmates.com email -- which is just stupid laziness on the part of the attacker as it's pretty easy to fake someone else's email style, so while the email looking right isn't a good sign, having it look wrong is a big red flag.&lt;/p&gt;
&lt;p&gt;Finally, the link in the email wasn't at the classmates.com domain (to find the actual domain you have to look at the third slash (/) in the URL and then work backwords -- the first two slashes should be right after the http: at the begining of the URL, so it's the next /).  In this case it was newyearclassmates.com which should be another big red flag since it clearly was made to look like the real classmates.com domain.&lt;/p&gt;
&lt;p&gt;If you did, somehow, follow the link, it brought up the following page:&lt;/p&gt;
&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_SEiYV06qGYE/SUviartMryI/AAAAAAAACKE/36fcHQlsTkc/s1600-h/ClassmatesHoax.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 196px;" src="http://4.bp.blogspot.com/_SEiYV06qGYE/SUviartMryI/AAAAAAAACKE/36fcHQlsTkc/s320/ClassmatesHoax.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5281563936058814242" /&gt;&lt;/a&gt;
&lt;p&gt;This, too, doesn't look like the Classmates.com site -- another red flag and has no real information about what's going on.  One would expect to at least have some text at this point with the name of the high school and other such information.&lt;/p&gt;
&lt;p&gt;Instead all you have is a thing that looks like a video player application but actually is just an image and if you click anywhere on the image (like the play button or, if you're thinking of a YouTube video, the center of the video image) or on the Adobe Get media player button, the site tries to download and run a native application (an EXE).  That should send big &lt;span style="font-weight:bold;"&gt;"DANGER WILL ROBINSON"&lt;/span&gt; shivers up your spine.  Any website that tries to download an exe directly to your platform has to be treated as the enemy until proven to be a friend (no innocent until proven guilty here -- good sites rarely download EXEs directly like that without at least having some interactions with the user).&lt;/p&gt;
&lt;p&gt;In this case the executable was Adobe_Player10.exe -- which I'm sure is a Trojan Horse which would do very nasty things to your computer at some point and it wasn't coming from Adobe's own web site, but rather from the newclassmates.com site itself -- another red flag (which, I hope, you never got because you didn't get to this stage).  If you did get here and you think everything's legit, you should stop, go to the adobe web site and check version numbers or at least download the application directly from Adobe -- never download/install software that you got to through an untrusted link or from an untrusted site.&lt;p&gt;
&lt;p&gt;UPDATE: I've gotten 7 more of these same invites.  All to different email addresses that route to me.  That's another really good sign that things aren't well in Kansas and you should stay away from the email.&lt;/p&gt;
&lt;p&gt;Moral of the story:  It's a jungle out there and you've gotta watch out for yourself as there's nobody else doing it for you.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/hacking" rel="tag"&gt;hacking&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/phishing" rel="tag"&gt;phishing&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/trojan+horse" rel="tag"&gt;Trojan Horse&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/internet+self+defense" rel="tag"&gt;Internet Self Defense&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-7357736677362783136?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/7357736677362783136/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=7357736677362783136' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/7357736677362783136'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/7357736677362783136'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2008/12/situational-awareness.html' title='Situational Awareness'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_SEiYV06qGYE/SUviartMryI/AAAAAAAACKE/36fcHQlsTkc/s72-c/ClassmatesHoax.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-3898653332959206902</id><published>2008-12-03T05:21:00.000-08:00</published><updated>2008-12-03T07:02:56.114-08:00</updated><title type='text'>Facebook vs DNS</title><content type='html'>&lt;p&gt;Sometime back, about a couple of weeks ago, my &lt;a href="http://www.facebook.com"&gt;Facebook&lt;/a&gt; page loads all of a sudden started getting very slow (like 20 seconds or so before the data started loading, but once it did start loading it was fast).   It was only happening at Facebook (&lt;a href="http://www.google.com"&gt;Google&lt;/a&gt;, &lt;a href="http://www.wheresgeorge.com"&gt;WheresGeorge&lt;/a&gt;, &lt;a href="http://www.blogger.com"&gt;Blogger&lt;/a&gt;, pretty much any other site) was working fine, so I thought the problem had to be at Facebook rather than on my side.&lt;/p&gt;
&lt;p&gt;However, after it kept up for a week, I started to get irritated enough to dig into it.   First I turned off my web proxy and went directly to the sites from my browser.  Things worked fine then, so clearly it was an issue in my proxy.  I run a &lt;a href="http://fedora.redhat.com"&gt;Fedora Linux&lt;/a&gt; server at home that serves as my web proxy using the &lt;a href="http://httpd.apache.org/"&gt;Apache HTTP daemon&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;This past weekend, I started digging into the problem and spent several hours debugging, testing, searching the web and while I still don't have a clear reason as to the why, I do understand the what and have put together a somewhat nasty hack around the problem.  Hopefully I will dig around and find or figure out what the problem is so that I can put in a good fix.&lt;/p&gt;
&lt;p&gt;My first look at the server didn't show anything amiss.  The httpd logs showed the accesses to Facebook with no errors.  That led me to consider DNS as this felt like what you get when your DNS is timing out.&lt;/p&gt;
&lt;p&gt;My &lt;a href="http://en.wikipedia.org/wiki/Resolv.conf"&gt;/etc/resolv.conf&lt;/a&gt; file was clean and correct.  Using the nslookup or &lt;a href="http://linux.die.net/man/1/dig"&gt;dig&lt;/a&gt; tools, I was able to look up the names without problems and quite quickly on both my own name server as well as the name servers provided by my ISP.  The system logs didn't show any problems in named or anything that looked like the firewall could be getting in the way.&lt;/p&gt;
&lt;p&gt;However, using any other tool (telnet, wget, httpd) the name look ups would go through several failures before succeeding -- causing a substantial delay in accessing the site.  This &lt;span style="font-weight:bold;"&gt;only&lt;/span&gt; happened with Facebook related sites (www.facebook.com and apps.facebook.com to mention two of them).  The same tools, accessing any other site that I tried, had no problems and no delays.&lt;/p&gt;
&lt;p&gt;Using strace, I could see that the first pass at the name service look ups were failing and each timing out after so many seconds before trying the next.  Eventually, the tools go back and try again and the second time, the response comes back almost immediately and the tool continues.  For example, "wget http://www.facebook.com" returned the following:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;
01     0.000106 socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 3
02     0.000068 connect(3, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("127.0.0.1")}, 28) = 0
03     0.000076 fcntl64(3, F_GETFL)       = 0x2 (flags O_RDWR)
04     0.000054 fcntl64(3, F_SETFL, O_RDWR|O_NONBLOCK) = 0
05     0.000042 gettimeofday({1227974358, 62163}, NULL) = 0
06     0.000048 poll([{fd=3, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
07     0.000059 send(3, "\0079\1\0\0\1\0\0\0\0\0\0\3www\10facebook\3com\0\0\34"..., 34, MSG_NOSIGNAL) = 34
08     0.000861 poll([{fd=3, events=POLLIN}], 1, 5000) = 0
09     4.998266 socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 4
10     0.000065 connect(4, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("66.36.226.50")}, 28) = 0
11     0.000071 fcntl64(4, F_GETFL)       = 0x2 (flags O_RDWR)
12     0.000046 fcntl64(4, F_SETFL, O_RDWR|O_NONBLOCK) = 0
13     0.000041 gettimeofday({1227974363, 61621}, NULL) = 0
14     0.000046 poll([{fd=4, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
15     0.000053 send(4, "\0079\1\0\0\1\0\0\0\0\0\0\3www\10facebook\3com\0\0\34"..., 34, MSG_NOSIGNAL) = 34
16     0.000098 poll([{fd=4, events=POLLIN}], 1, 3000) = 0
17     2.998500 socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 5
18     0.000070 connect(5, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("207.228.225.50")}, 28) = 0
19     0.000073 fcntl64(5, F_GETFL)       = 0x2 (flags O_RDWR)
20     0.000045 fcntl64(5, F_SETFL, O_RDWR|O_NONBLOCK) = 0
21     0.000043 gettimeofday({1227974366, 60548}, NULL) = 0
22     0.000045 poll([{fd=5, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
23     0.000052 send(5, "\0079\1\0\0\1\0\0\0\0\0\0\3www\10facebook\3com\0\0\34"..., 34, MSG_NOSIGNAL) = 34
24     0.000118 poll([{fd=5, events=POLLIN}], 1, 6000) = 0
25     5.997342 gettimeofday({1227974372, 58108}, NULL) = 0
26     0.000050 poll([{fd=3, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
27     0.000054 send(3, "\0079\1\0\0\1\0\0\0\0\0\0\3www\10facebook\3com\0\0\34"..., 34, MSG_NOSIGNAL) = 34
28     0.000416 poll([{fd=3, events=POLLIN}], 1, 5000) = 0
29     4.997778 gettimeofday({1227974377, 56418}, NULL) = 0
30     0.000063 poll([{fd=4, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
31     0.000055 send(4, "\0079\1\0\0\1\0\0\0\0\0\0\3www\10facebook\3com\0\0\34"..., 34, MSG_NOSIGNAL) = 34
32     0.000106 poll([{fd=4, events=POLLIN, revents=POLLIN}], 1, 3000) = 1
33     0.001235 ioctl(4, FIONREAD, [34])  = 0
34     0.000065 recvfrom(4, "\0079\201\202\0\1\0\0\0\0\0\0\3www\10facebook\3com\0\0\34"..., 1024, 0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("66.36.226.50")}, [16]) = 34
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;As you can see, the delays come waiting for a response from the nameserver and it's not until the second try on the second name server (lines 31-34 before we get a response.  You might think that this has something to do with my name server on 127.0.0.1, but that wasn't originally in my /etc/resolv.conf file until I started the debugging and the problem still occurs when I remove it.&lt;/p&gt;
&lt;p&gt;A similar trace of the dig command shows that the first name server (whether it be 127.0.0.1 or my ISPs) resolves the name almost immediately (though dig uses a different communications method (sendmsg vs send) and different networking libraries.&lt;/p&gt;
&lt;p&gt;Traces for wget with other host names return successfully on the first lookup.&lt;/p&gt;
&lt;p&gt;I haven't (yet) figured out what exactly is causing this.  But I have figured out two workarounds (neither of which are all that nice):&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Set one of Facebook's name servers as the first name server in my resolv.conf file (so my applications use that name server to resolve &lt;span style="font-weight:bold;"&gt;all&lt;/span&gt; host names.   
&lt;p&gt;This does work (name resolutions worked first try and in very reasonable times).  However, name servers are core trusted parties in your network access and I really don't like setting things up so that I totally trust Facebook's server for all of my outgoing name service look ups.  Call me paranoid, but this one just isn't right for me.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;Add www.facebook.com and apps.facebook.com host entries to my /etc/hosts file (which is checked before name service look ups.
&lt;p&gt;This definitely works, though it does remove the usefulness of DNS from my access to Facebook (like if they change their IP address I won't know).  However, it is the lesser evil of the two solutions I have found so far and so this is what I've done for now.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I'll post an update if I figure out exactly what's wrong (which I'm very unhappy about not being able to figure out so far -- I like being able to understand things and spent several hours after I had workarounds trying to figure it out to no avail).&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/facebook" rel="tag"&gt;facebook&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/dns" rel="tag"&gt;dns&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/name+server" rel="tag"&gt;name server&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-3898653332959206902?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/3898653332959206902/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=3898653332959206902' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3898653332959206902'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3898653332959206902'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2008/12/facebook-vs-dns.html' title='Facebook vs DNS'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-3941709290229270915</id><published>2008-12-03T03:32:00.000-08:00</published><updated>2008-12-03T03:59:54.532-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><title type='text'>Paul can't be wrong all the time</title><content type='html'>&lt;p&gt;I have to say that, for once, I totally agree with &lt;a href="http://connectid.blogspot.com"&gt;Paul&lt;/a&gt;. In &lt;a href="http://connectid.blogspot.com/2008/12/i-dont-follow.html"&gt;responding&lt;/a&gt; to a &lt;a href="http://www.links.org/?p=425"&gt;post&lt;/a&gt; by Ben Laurie, Paul disagrees with Ben's opinions of passwords and phishing.&lt;/p&gt;
&lt;p&gt;Ben had said (and I'm showing a bit more here than Paul did in his response):&lt;/p&gt;
&lt;blockquote&gt;
Well, no. If your password is unphishable, then it is obviously the case that it can be the same everywhere. Or it wouldn’t be unphishable. The only reason you need a password for each site is because we’re too lame to fix the real problem. Passwords scale just fine. If it wasn’t for those pesky users (that we trained to do the wrong thing), that is.
&lt;/blockquote&gt;
&lt;p&gt;First off the phishability and reusability of passwords are distinct and separate issues.  They have pretty much nothing to do with each other.&lt;/p&gt;
&lt;p&gt;The primary reason one should not use the same password everywhere is that once that password is discovered at one location, then it can be reused at other locations.  So, if, for example, you use the same password at Amazon, eBay, PayPal and Facebook, all one needs to do is find out your password on Facebook and then they will be able to sell things in your name on eBay, buy things in your name using PayPal and ship lots of things in your name at Amazon).&lt;/p&gt;
&lt;p&gt;As Paul mentioned, there are many attacks to finding your password -- an administrator at Facebook could look it up in the password database, you could have a weak password that the hacker could attack via brute force (and if you're using the same password everywhere, they could use multiple sites to break the password making all/most of the anti-brute force rate limiting capabilities at a given site pretty moot).  Just to name a few.&lt;/p&gt;
&lt;p&gt;All of that said, Ben did have several good points in his post.  Yes, we, as an industry, have done a terrible job in the usability of passwords.  The typical user has been prompted for passwords so often and in so many places that they have no feel for when it should or shouldn't happen (one of the best personal defenses against phishing).&lt;/p&gt;
&lt;p&gt;Personally, I think the utopia for online identity comes in with strong authentication to a small number of identity providers which assert my identity through SSO and Federation out to a large number of relying parties.   Ben's point about the attacks around issuance/re-issuance of such strong credentials is very valid -- they can't be based on much weaker socially engineerable factors.  The credentials will end up having to be issued with strong levels of assurance.&lt;/p&gt;
&lt;p&gt;I also look forward to being able to login once at the start of my day and maintain that state in a reasonably secure fashion for the entire day without having to re-authenticate every few minutes or deal with "your session has been terminated for your security" when I've been sitting at the computer the entire time.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/authentication" rel="tag"&gt;authentication&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/assurance" rel="tag"&gt;assurance&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/federation" rel="tag"&gt;federation&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/sso" rel="tag"&gt;SSO&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/password" rel="tag"&gt;password&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/phishing" rel="tag"&gt;phishing&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-3941709290229270915?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/3941709290229270915/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=3941709290229270915' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3941709290229270915'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3941709290229270915'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2008/12/paul-cant-be-wrong-all-time.html' title='Paul can&apos;t be wrong all the time'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-5076824539431888405</id><published>2008-11-18T12:29:00.000-08:00</published><updated>2008-11-18T12:37:45.876-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='identity theft'/><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><category scheme='http://www.blogger.com/atom/ns#' term='security'/><title type='text'>Is Sir Bonar one of Paul's aliases?</title><content type='html'>&lt;p&gt;I just have to say that the &lt;a href="http://www.idealgovernment.com/index.php/blog/security_and_contactpoint_perception_is_all/"&gt;article on ContactPoint written by Sir Bonar&lt;/a&gt; and &lt;a href="http://www.identityblog.com/?p=1029"&gt;quoted by Kim&lt;/a&gt; just feels like it was written by our one and only &lt;a href="http://connectid.blogspot.com"&gt;Paul&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Either Paul is writing under an alias, someone is working hard to emulate his ironic style, or somebody is writing seriously and just doesn't have an f***ing clue.&lt;/p&gt;
&lt;p&gt;Interesting, very interesting....&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/identity+theft" rel="tag"&gt;identity theft&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/security" rel="tag"&gt;security&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-5076824539431888405?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/5076824539431888405/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=5076824539431888405' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/5076824539431888405'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/5076824539431888405'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2008/11/is-sir-bonar-one-of-pauls-aliases.html' title='Is Sir Bonar one of Paul&apos;s aliases?'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-6280825980830558515</id><published>2008-11-13T12:44:00.000-08:00</published><updated>2008-11-13T13:17:52.915-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='travel'/><category scheme='http://www.blogger.com/atom/ns#' term='united'/><title type='text'>Delayed Upgrades</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_SEiYV06qGYE/SRyYtvbqg1I/AAAAAAAACIE/5-3Ap5w9w5Q/s1600-h/united_logo.JPG"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 80px; height: 71px;" src="http://3.bp.blogspot.com/_SEiYV06qGYE/SRyYtvbqg1I/AAAAAAAACIE/5-3Ap5w9w5Q/s200/united_logo.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5268253575710671698" /&gt;&lt;/a&gt;
&lt;p&gt;One of the benefits one gets for being an elite member of &lt;a href="http://www.united.com"&gt;United&lt;/a&gt;'s &lt;a href="http://www.united.com/page/middlepage/0,8680,1153,00.html?navSource=Dropdown07&amp;linkTitle=aboutmileageplus"&gt;Mileage Plus&lt;/a&gt; program is the ability to upgrade into the next class of service on select fares (most domestic fares qualify and some international fares qualify).  Theoretically, there's also a benefit to being at a higher level in the program as your upgrades should clear sooner:&lt;/p&gt;
&lt;blockquote&gt;
&lt;table border="4"&gt;
&lt;tr&gt;&lt;th&gt;&lt;center&gt;Status&lt;/center&gt;&lt;/th&gt;&lt;th&gt;&lt;center&gt;Clears at&lt;/center&gt;&lt;/th&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;General Member&lt;/td&gt;&lt;td&gt;24 hours before flight&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Premier Associate&lt;/td&gt;&lt;td&gt;36 hours before flight&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Premier&lt;/td&gt;&lt;td&gt;48 hours before flight&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Premier Executive&lt;/td&gt;&lt;td&gt;72 hours before flight&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Premier 1K&lt;/td&gt;&lt;td&gt;100 hours before flight&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Global Services&lt;/td&gt;&lt;td&gt;120 hours before flight&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;/blockquote&gt;
&lt;p&gt;This used to work pretty much dependably until there were very limited seats left (the last one or two seats usually were left until boarding time).&lt;/p&gt;
&lt;p&gt;However, this fall I've noticed that United has not been clearing upgrades, even when there are a multitude of seats available.  For example, I'm on a flight tomorrow (in less than 24 hours) that has 8 of 12 seats still available for purchase but my (and presumably several other's) upgrade still hasn't cleared.  &lt;/p&gt;
&lt;p&gt;This has been pretty consistent on the last 8 or 10 flights I've been on, both domestic and international.   It seems that the guys in "inventory control" (the part of United that makes the seats available for upgrade) has decided to not release any seats for upgrade until 10-12 hours before the flight.&lt;/p&gt;
&lt;p&gt;This kind of makes the cool table of when things clear pretty useless and, to some extent, a bit of misleading marketing if not an outright lie.&lt;/p&gt;
&lt;p&gt;Here's to hoping it's just a temporary glitch in their systems and things will get back to normal soon.&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/united" rel="tag"&gt;United&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/ual" rel="tag"&gt;ual&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/mileage+plus" rel="tag"&gt;Mileage Plus&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/upgrade" rel="tag"&gt;upgrade&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-6280825980830558515?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/6280825980830558515/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=6280825980830558515' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/6280825980830558515'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/6280825980830558515'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2008/11/delayed-upgrades.html' title='Delayed Upgrades'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_SEiYV06qGYE/SRyYtvbqg1I/AAAAAAAACIE/5-3Ap5w9w5Q/s72-c/united_logo.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-1215089892504969327</id><published>2008-11-07T07:08:00.000-08:00</published><updated>2008-11-07T07:25:09.838-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='travel'/><category scheme='http://www.blogger.com/atom/ns#' term='united'/><title type='text'>Paying for upgrades</title><content type='html'>&lt;p&gt;&lt;a href="http://www.ual.com"&gt;United Airlines&lt;/a&gt; has announced a &lt;a href="http://www.united.com/2009prgchng"&gt;host of changes for their Mileage Plus program for 2009&lt;/a&gt;.  Many of the changes involved increased mileage for award travel (other than domestic economy travel).&lt;/p&gt;
&lt;p&gt;However, the worst change, IMHO, is that like &lt;a href="http://www.aa.com"&gt;American Airlines&lt;/a&gt;, United is now going to charge $$ (in addition to mileage) for mileage based upgrades from anything other than full fare economy tickets.&lt;/p&gt;
&lt;p&gt;To me, a long term, very loyal 1K, million mile flyer, this really sucks.  This was the one real benefit (upgrades without $$) that would drive business travelers to want to fly on the same airline.  Now our business trips are going to cost as much as $1,000 if we want to upgrade both directions on an international flight. &lt;/p&gt;
&lt;p&gt;United, I suggest you reconsider this change or, a bit selfishly, make an exception for your most loyal customers (1Ks/GSs) like you do for most other fees.  Otherwise, I suggest that those of you who are flying in 2009 or early 2010 make your upgrade requests prior to July 1, 2009 (the effective date for the upgrade charges).&lt;/p&gt;
&lt;p&gt;I also suggest that if this change bothers you, you take the time to let United know so.   Recently, negative feedback about moving to pay for meals on international flights cause United to change their minds and maintain their current meal program on such flights.  Perhaps we can do the same with upgrade charges.&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/travel" rel="tag"&gt;travel&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/ual" rel="tag"&gt;ual&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-1215089892504969327?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/1215089892504969327/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=1215089892504969327' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/1215089892504969327'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/1215089892504969327'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2008/11/paying-for-upgrades.html' title='Paying for upgrades'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-2931650456499432278</id><published>2008-10-02T08:49:00.000-07:00</published><updated>2008-10-02T09:06:19.988-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><category scheme='http://www.blogger.com/atom/ns#' term='privacy'/><title type='text'>Data Privacy Day</title><content type='html'>&lt;p&gt;Please join the US, Canada (yeah, it's not just a blue state), and 27 European countries in celebrating second annual Data Privacy Day on January 28, 2009.&lt;/p&gt;
&lt;blockquote&gt;
Designed to raise awareness and generate discussion about data privacy practices and rights, Data Privacy Day activities in the United States have included privacy professionals, corporations, government officials, and representatives, academics, and students across the country.
&lt;br&gt;&lt;br&gt;
One of the primary goals of Data Privacy Day is to promote privacy awareness and education among teens across the United States. Data Privacy Day also serves the important purpose of furthering international collaboration and cooperation around privacy issues.
&lt;/blockquote&gt;
&lt;p&gt;You can get more information, presentations, event information, etc from the &lt;a href="http://www.intel.com/policy/dataprivacy.htm"&gt;Data Privacy Day web site&lt;/a&gt;.
&lt;p&gt;Join the &lt;a href="http://www.new.facebook.com/group.php?gid=28893372868"&gt;Facebook Data Privacy Day 2009 Group&lt;/a&gt; to hang with other participants and follow along with the developments.&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/privacy" rel="tag"&gt;privacy&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-2931650456499432278?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/2931650456499432278/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=2931650456499432278' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/2931650456499432278'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/2931650456499432278'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2008/10/data-privacy-day.html' title='Data Privacy Day'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-2225404949188152780</id><published>2008-10-01T05:15:00.000-07:00</published><updated>2008-10-01T08:47:56.777-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='travel'/><category scheme='http://www.blogger.com/atom/ns#' term='united'/><title type='text'>Changing Planes</title><content type='html'>&lt;p&gt;It happens to me a lot more than I would like.  I'm booked on an &lt;a href="http://www.airbus.com/en/aircraftfamilies/a320/a320/"&gt;Airbus A320&lt;/a&gt; only to have United change it to an &lt;a href="http://www.airbus.com/en/aircraftfamilies/a320/a319/"&gt;Airbus 319&lt;/a&gt; causing my exit row seat in row 11 to be a standard economy seat (not even an economy plus seat) -- that's why I'm not too keen on booking exit row seats nowadays -- though booking exit row seats is one of the primo perks of a &lt;a href="http://www.united.com/page/middlepage/0,6823,1164,00.html"&gt;United Mileage Plus Premier Executive&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;However, it seems to be a much worse change when you've got a seat booked in &lt;a href="http://www.united.com"&gt;United&lt;/a&gt;'s new &lt;a href="http://www.suitedreams.united.com/"&gt;Premium International Class&lt;/a&gt; only to have United change the plane at the last moment and replace it with a standard configuration plane.  This happened to me 3 out of 4 flights this summer between Dulles and Frankfurt. &lt;/p&gt;
&lt;p&gt;I mean would you rather have this (the old confirguration):&lt;/p&gt;
&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_SEiYV06qGYE/SONjEbIkugI/AAAAAAAAATs/K5a6KN8HCkQ/s1600-h/UALBusinessSeat.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_SEiYV06qGYE/SONjEbIkugI/AAAAAAAAATs/K5a6KN8HCkQ/s320/UALBusinessSeat.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5252150518098475522" /&gt;&lt;/a&gt;
&lt;p&gt;Or this (the new configuration):&lt;/p&gt;
&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_SEiYV06qGYE/SONkBl5Hy6I/AAAAAAAAAT0/QyqQG9kaE3I/s1600-h/UALNewBusinessClassSeat.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_SEiYV06qGYE/SONkBl5Hy6I/AAAAAAAAAT0/QyqQG9kaE3I/s320/UALNewBusinessClassSeat.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5252151568958475170" /&gt;&lt;/a&gt;
&lt;p&gt;It felt like a big bait-and-switch to me.  Show me the cool fancy new seats that are a world of difference better than the standard seats (the premium seats lie flat, have 15" screens with 100s of video on demand shows/movies, have cushy cushions, etc., etc.) and then stick me in a standard configuration without telling me till I get on the plane.  No notice before hand.  No chance to change to a different flight.   No compensation whatsoever.  Not even an "I'm sorry."&lt;/p&gt;
&lt;p&gt;I could understand this if it happens once in a while, but 3 out of 4 flights doesn't sound like once in a while.  I could also understand it more if there wasn't such a big financial benefit to United in using the standard configuration plane (they get to sell a whole lot more business and first class seats in the old configuration than in the new configuration).  How do I know that United isn't simply saying "well, we've oversold business by 20%, so let's use the standard configuration plan so that we can scoop all that revenue." ?  There's also the fact that United started publicly announcing that they were using the new configuration planes on Asian international routes around that time, so perhaps they moved the planes from the europ&lt;/p&gt;
&lt;p&gt;Perhaps I should take the advice I received from my friend &lt;a href="http://practicalid.blogspot.com/"&gt;George&lt;/a&gt; (who was on
the last such change with me):  Just go with the flow and be happy with what life brings you.   That would certainly be better for my blood pressure, but I just don't think that's me.   I think United should offer some form of compensation to those who chose to fly on the plane because of the premium seating that United is heavily advertising.&lt;/p&gt;
&lt;p&gt;I guess the only thing to learn from this experience is to not depend upon the new configuration planes until United has completed its roll out of the upgrades.  Originally the conversion was to be complete in 2009, but now they are predicting 2010.  So far, as of Sept 2008, they have only converted 13% of their international planes (7 of 21 767s, 5 of 24 of 747s and 0 of 46 777s).&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/united+airlines" rel="tag"&gt;United Airlines&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/ual" rel="tag"&gt;ual&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/travel" rel="tag"&gt;travel&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/dulles" rel="tag"&gt;Dulles&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/airbus" rel="tag"&gt;Airbus&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/a320" rel="tag"&gt;A320&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/a319" rel="tag"&gt;A319&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-2225404949188152780?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/2225404949188152780/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=2225404949188152780' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/2225404949188152780'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/2225404949188152780'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2008/09/changing-planes.html' title='Changing Planes'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_SEiYV06qGYE/SONjEbIkugI/AAAAAAAAATs/K5a6KN8HCkQ/s72-c/UALBusinessSeat.jpg' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-3743944665662442591</id><published>2008-09-30T11:16:00.000-07:00</published><updated>2008-09-30T11:29:14.279-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='security'/><title type='text'>Smart Card hackery</title><content type='html'>&lt;p&gt;This is an old video (from May of '08) and probably accomplished using an older technology smart card (theoretically easier to break), but it's still quite interesting to watch how one can peel back the layers of a smart card in order to snoop the communications going on within the components.&lt;/p&gt;
&lt;p&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/tnY7UVyaFiQ&amp;hl=en&amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/tnY7UVyaFiQ&amp;hl=en&amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;
&lt;p&gt;The &lt;a href="http://www.wired.com/politics/security/news/2008/05/tarnovsky?currentPage=all"&gt;related story on Wired.com&lt;/a&gt; gives a lot of interesting details to the ongoing cold-ware between satellite TV operators and hackers attempting to get free TV.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/smart+card" rel="tag"&gt;smart card&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/hacking" rel="tag"&gt;hacking&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-3743944665662442591?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/3743944665662442591/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=3743944665662442591' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3743944665662442591'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3743944665662442591'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2008/09/smart-card-hackery.html' title='Smart Card hackery'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-7315582436852930890</id><published>2008-09-25T03:57:00.000-07:00</published><updated>2008-09-25T07:43:20.453-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='liberty'/><title type='text'>Cardspace, Liberty, &amp; Intel's ICP</title><content type='html'>&lt;p&gt;A couple of weeks back at &lt;a href="http://public.cxo.com/conferences/index.html?conferenceID=24"&gt;DIDW 2008&lt;/a&gt;, I reported on a proof-of-concept that we put together at &lt;a href="http://www.intel.com"&gt;Intel&lt;/a&gt; where we combined &lt;a href="http://netfx3.com/content/WindowsCardspaceHome.aspx"&gt;Cardspace&lt;/a&gt; with our Identity Capable Platform (ICP) to show how ICP could extend/strengthen a cardspace deployment.  While we used Cardspace in this demonstration, the code should work with any Identity Selector conforming to the Identity Selector Interoperability Profile.&lt;/p&gt;
&lt;p&gt;For those of you who don't know, ICP is a &lt;span style="font-weight:bold;"&gt;research project&lt;/span&gt; we have been working on at Intel exploring how identity capabilities could be added to a platform to enhance online transactions.  Our contributions to the &lt;a href="http://www.projectliberty.org"&gt;Liberty Alliance&lt;/a&gt;'s &lt;a href="http://www.projectliberty.org/resource_center/specifications/liberty_alliance_id_wsf_advanced_client_1_0_specifications"&gt;Advanced Client Technologies&lt;/a&gt; are part of that work.&lt;/p&gt;
&lt;p&gt;In this proof-of-concept, we showed how a mythical bank (ACME Bank, of course) could provision an identity agent to the platform which was then subsequently used as the identity source for Cardspace when the user initiated a session at the bank.  To Cardspace, the identity agent was a full fledged STS and had a managed card that has been provisioned into Cardspace (so, essentially, this was an off-the-shelf Cardspace deployment).&lt;/p&gt;
&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_SEiYV06qGYE/SNt6md50waI/AAAAAAAAATc/qR94ax4caiA/s1600-h/ICP-Cardspace-Use.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_SEiYV06qGYE/SNt6md50waI/AAAAAAAAATc/qR94ax4caiA/s320/ICP-Cardspace-Use.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5249924591911223714" /&gt;&lt;/a&gt;
&lt;p&gt;The provisioning process made extensive use of the Liberty Advanced Client Technologies protocols to securely provision the identity agent to the platform.
&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_SEiYV06qGYE/SNt6tnAQsiI/AAAAAAAAATk/lDB7VsvP6-s/s1600-h/ICP-Cardspace-Prov.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_SEiYV06qGYE/SNt6tnAQsiI/AAAAAAAAATk/lDB7VsvP6-s/s320/ICP-Cardspace-Prov.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5249924714613223970" /&gt;&lt;/a&gt;
&lt;p&gt;One might ask what exactly is an identity agent.   I use the term very loosely to define any identity related agent software.  In this particular case, the identity agent exposes &lt;a href="http://docs.oasis-open.org/ws-sx/ws-trust/200512/ws-trust-1.3-os.html"&gt;WS-Trust&lt;/a&gt; and ID-WSF Provisioned Module interfaces as well as containing a SAML token generator and an ID-WSF IdP Service client (to be able to get minting assertions).&lt;/p&gt;
&lt;p&gt;If you want to take a look at the presentation it's &lt;a href="http://projectliberty.org/liberty/content/download/4443/30422/file/080918-ICP-Cardspace-DIDW-Cahill_Mellempudi.pdf"&gt;here&lt;/a&gt;.   However, I have to warn you I write my presentations as something that needs speaking to and not as standalone documents.&lt;/p&gt;
&lt;p&gt;Even better, there's going to be an encore presentation as a Liberty webcast on November 18th.  I'll post the details once I get them.&lt;/p&gt;
&lt;p&gt;UPDATE:  Britta found it for me:  &lt;a href="http://www.projectliberty.org/news_events/events/webcast_liberty_alliance_using_an_identity_capable_platform_to_enhance_cardspace_interactions"&gt;Info/Registration for Webcast
&lt;/a&gt;.   Where would we be without Britta!&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/intel" rel="tag"&gt;Intel&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/liberty" rel="tag"&gt;Liberty&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/cardspace" rel="tag"&gt;Cardspace&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/ws-trust" rel="tag"&gt;WS-Trust&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/saml" rel="tag"&gt;SAML&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/identity+selector" rel="tag"&gt;Identity Selector&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/didw" rel="tag"&gt;DIDW&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-7315582436852930890?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/7315582436852930890/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=7315582436852930890' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/7315582436852930890'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/7315582436852930890'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2008/09/cardspace-liberty-intels-icp.html' title='Cardspace, Liberty, &amp; Intel&apos;s ICP'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_SEiYV06qGYE/SNt6md50waI/AAAAAAAAATc/qR94ax4caiA/s72-c/ICP-Cardspace-Use.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-2802718177086097032</id><published>2008-09-22T12:01:00.000-07:00</published><updated>2008-09-22T12:23:51.557-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='voting'/><title type='text'>Absentee Ballots</title><content type='html'>&lt;p&gt;At last week's &lt;a href="http://www.projectliberty.org"&gt;Liberty&lt;/a&gt; TEG F2F in Boston, &lt;a href="http://blogs.sun.com/hubertsblog/"&gt;Hubert&lt;/a&gt; (the guy living in French alps who just recently became a US Citizen) pointed out to the rest of us that the fall Liberty Alliance Sponsor's meeting in Tokyo is taking place the week of our presidential elections here in the US.&lt;/p&gt;
&lt;p&gt;So, those many of you who will be attending the meeting in person should head on down to your local registrar (or however you would do it within your state/county) and register for an absentee ballot.&lt;/p&gt;
&lt;p&gt;In Virginia, they only allow absentee voting for a limited set of reasons, none of which include "I'm more comfortable voting from home" or "I don't want to have to deal with the long lines at the local precinct."   I think that they should allow anybody to use an absentee ballot, regardless of reason (even if they just feel like it).  I mean, that's the point, isn't it:  Get the person's vote counted.&lt;/p&gt;
&lt;p&gt;I also don't like the fact that some/many/all places that use absentee ballots, only count them when they can make a material difference in the outcome (e.g. if the election's difference in votes is less than the total number of absentee ballots).  I think that sucks.   I would rather they just always count them (and perhaps start with those numbers first.   Just makes sense to always count a vote.  Imagine if they chose to not count a state's votes if the state's population couldn't make the difference in the outcome of a race.&lt;/p&gt;
&lt;p&gt;In any case, if you're going to the meeting, be sure to get your ballot.  This is sure to be an interesting election (though I wouldn't mind an &lt;a href="http://www.barackobama.com/"&gt;Obama&lt;/a&gt; landslide -- even if that meant that they didn't count my absentee ballot).&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/voting" rel="tag"&gt;voting&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/liberty+alliance" rel="tag"&gt;Liberty Alliance&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/absentee" rel="tag"&gt;absentee&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/absentee+ballot" rel="tag"&gt;absentee ballot&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/obama" rel="tag"&gt;Obama&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-2802718177086097032?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/2802718177086097032/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=2802718177086097032' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/2802718177086097032'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/2802718177086097032'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2008/09/absentee-ballots.html' title='Absentee Ballots'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-2041853615145226863</id><published>2008-09-17T08:47:00.000-07:00</published><updated>2008-09-17T11:26:33.197-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='liberty'/><title type='text'>What ID-TBD means to me....</title><content type='html'>&lt;p&gt;For those that don't know what &lt;a href="http://groups.google.com/group/idtbd"&gt;ID-TBD&lt;/a&gt; is, it's an effort underway trying to tie the umpteen different identity efforts together into an uber identity organization.  TBD as in To Be Determined (as in, we don't want to argue over the name till we get agreement on the organization and organizational structure).&lt;/p&gt;
&lt;p&gt;My main goal here is to get out of the Liberty Alliance and away from it's exotic meeting locations like Singapore, Paris, Stockholm, Tokyo, Madrid, Sydney, Rome, etc..  I have become an active member in the Liberty 50 (those of us who have put on an extra 50 pounds or more since starting to participate in the organization).  I'm probably at the head of the line and perhaps hit my peak at around 60lbs (30 or so kilos for the rest of you guys outside the US).&lt;/p&gt;
&lt;p&gt;Yes, I blame Liberty for this (not my lack of good eating habits, my desire to have hamburgers and fries for every mean -- even breakfast -- my lack of exercise, etc., etc.).  It's clearly Liberty's fault. You can see it in the pictures below:&lt;/p&gt;
&lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_SEiYV06qGYE/SNFIjFKkYxI/AAAAAAAAAS8/AeJS6qHqqJk/s1600-h/Conor-2000.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_SEiYV06qGYE/SNFIjFKkYxI/AAAAAAAAAS8/AeJS6qHqqJk/s320/Conor-2000.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5247054808382464786" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;That's me in 2001, shortly before I joined Liberty.   And now, after 7 years participating in Liberty:&lt;/p&gt;
&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_SEiYV06qGYE/SNFI-meBuII/AAAAAAAAATE/JFlQwUF3Dh4/s1600-h/Conor-2007.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_SEiYV06qGYE/SNFI-meBuII/AAAAAAAAATE/JFlQwUF3Dh4/s320/Conor-2007.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5247055281178916994" /&gt;&lt;/a&gt;
&lt;p&gt;So by exiting Liberty and joining ID-TBD, I hope/expect to be able to loose my Liberty 50 and go back to my 2001 self.   Even with just the announcement of the potential organization, I've made some progress in that direction:&lt;/p&gt;
&lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_SEiYV06qGYE/SNFKW-iB94I/AAAAAAAAATM/iHPVk5hTpPE/s1600-h/Conor-2008.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_SEiYV06qGYE/SNFKW-iB94I/AAAAAAAAATM/iHPVk5hTpPE/s320/Conor-2008.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5247056799466649474" /&gt;&lt;/a&gt;
&lt;p&gt;This is why I am sooo supportive of the new organization. It has nothing to do with messaging convergence, coordination, consolidation or any other such mom and apple pie reason for me.  I just want to get out of the Liberty 50 group!&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/liberty" rel="tag"&gt;liberty&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/id-tbd" rel="tag"&gt;ID-TBD&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-2041853615145226863?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/2041853615145226863/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=2041853615145226863' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/2041853615145226863'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/2041853615145226863'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2008/09/what-id-tbd-means-to-me.html' title='What ID-TBD means to me....'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_SEiYV06qGYE/SNFIjFKkYxI/AAAAAAAAAS8/AeJS6qHqqJk/s72-c/Conor-2000.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-59226389206440928</id><published>2008-09-16T05:44:00.000-07:00</published><updated>2008-09-16T05:46:45.618-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='travel'/><title type='text'>Let me count the ways</title><content type='html'>&lt;p&gt;&lt;a href="http://www.metwashairports.com/Dulles/"&gt;Washington Dulles airport&lt;/a&gt; now has 4 separate security checkpoints for non-employees.  These include:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span style="font-weight:bold;"&gt;Regular security checkpoint&lt;/span&gt;.  This is the old tried and true security queue on the check-in level of the airport.  These are intended for use by the average traveler and frequently, especially around 4PM, has long, slow moving lines.&lt;/li&gt;
&lt;li&gt;&lt;span style="font-weight:bold;"&gt;Premium security checkpoint&lt;/span&gt;.  This checkpoint is co-located with the regular security checkpoint but it has its own dedicated queue.   This queue is restricted to premium travelers (those in first/business class or those traveling on a flight where they have premium status -- such as &lt;a href="http://www.united.com/page/middlepage/0,6823,1136,00.html?navSource=Dropdown07&amp;linkTitle=mileageplus"&gt;United's Mileage Plus&lt;/a&gt; Premier members).  This queue is typically much shorter and sometimes moves faster than the regular security queue.  Dulles added premium security lines a couple of years ago.&lt;/li&gt;
&lt;li&gt;&lt;span style="font-weight:bold;"&gt;Registered Traveler (Clear) security checkpoint&lt;/span&gt;.  This checkpoint is restricted to people who have paid the annual $120 fee and subjected themselves to a background check.  The registered traveler checkpoint at Dulles is managed by &lt;a href="http://www.flyclear.com/"&gt;Clear&lt;/a&gt;.  This checkpoint is down on the arrivals level near baggage claim 8 and is shared with the Employee checkpoint.   Very short lines, quick processing (other than the time the x-ray scanner got a bag stuck in it with mine in there as well).&lt;/li&gt;
&lt;li&gt;&lt;span style="font-weight:bold;"&gt;Dulles Diamond security checkpoint&lt;/span&gt;.  This is a new checkpoint that just recently opened on the arrivals level near baggage claim 7.   The signs for this checkpoint say it is only for expert travelers (2 trips/month) traveling alone, with only one carry on item and all their liquids already in bags.  Theoretically these frequent travelers know what they are doing and the line can move along at a good clip.   I tried this checkpoint on my trip up to Boston yesterday.  There was no verification that I was a frequent traveler (though if they've read my blog, they will know).  I think any single traveler could walk in there. I also verified that you can go through with a carry-on bag and computer bag (the sign says only 1 carry on item so I thought they might be restricting those of us who also bring along computer bags).   So it would seem that anyone traveling alone could use this queue (and it was totally empty when I came through mid-day).  Perhaps they will have tighter checks when the queue backs up once people notice it is here.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/travel" rel="tag"&gt;travel&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/dulles" rel="tag"&gt;Dulles&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/united+airlines" rel="tag"&gt;United Airlines&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/registered+traveler" rel="tag"&gt;Registered Traveler&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-59226389206440928?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/59226389206440928/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=59226389206440928' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/59226389206440928'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/59226389206440928'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2008/09/let-me-count-ways.html' title='Let me count the ways'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-5457322231539191878</id><published>2008-09-15T13:27:00.000-07:00</published><updated>2008-09-15T13:44:23.439-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='saml'/><title type='text'>Slamming SAML..... NOT!</title><content type='html'>&lt;p&gt;&lt;a href="http://idlogger.wordpress.com/2008/09/15/living-dangerously/"&gt;Jeff responds&lt;/a&gt; to &lt;a href="http://conorcahill.blogspot.com/2008/09/pseudonymity-would-help.html"&gt;my note&lt;/a&gt; earlier suggesting that using psudonymous identifiers adds security depth:&lt;/p&gt;
&lt;blockquote&gt;
This is a very dangerous suggest as it implies that SAML is not secure enough without pseudonymous identifiers, the use of which makes SAML deployment a lot more complicated. Pseudonymous IDs are for privacy not security. If your system requires them to be secure, you have done something wrong. Period.
&lt;/blockquote&gt;
&lt;p&gt;I was in no way suggesting that SAML was not secure enough.  However, I am of the opinion that any SSO system (including SAML) is weaker, from a security and a privacy point of view, without pseudonyms than the same system would be if it was using pseudonyms.   That doesn't say or imply that it isn't secure without them, just that it would be better with them.&lt;/p&gt;
&lt;p&gt;And I stand by my statement that had Google used good pseudonyms across relying parties, the impact of their lack of the audience restriction would have been minimal.  That isn't saying that I think a system should rely on pseudonyms as their primary security model, just that the effect would have severely reduced the impact of the error.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/saml" rel="tag"&gt;SAML&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-5457322231539191878?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/5457322231539191878/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=5457322231539191878' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/5457322231539191878'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/5457322231539191878'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2008/09/slamming-saml-not.html' title='Slamming SAML..... NOT!'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-4477872933659650082</id><published>2008-09-15T03:00:00.000-07:00</published><updated>2008-09-15T04:06:26.102-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='saml'/><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><category scheme='http://www.blogger.com/atom/ns#' term='liberty'/><title type='text'>Pseudonymity would help</title><content type='html'>&lt;p&gt;&lt;a href="http://www.identityblog.com/"&gt;Kim Cameron&lt;/a&gt; writes of &lt;a href="http://www.identityblog.com/?p=1011"&gt;Google's failing to scope SAML assertions&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;
But according to the research done by the paper’s authors, the Google engineers “simplified” the protocol, perhaps hoping to make it “more efficient”?  So they dropped the whole ID and scope “thing” out of the assertion.  All that was signed was the client’s identity.
&lt;br&gt;&lt;br&gt;The result was that the relying party had no idea if the assertion was minted for it or for some other relying party.  It was one-for-all and all-for-one at Google.
&lt;/blockquote&gt;
&lt;p&gt;While I agree totally that the intended recipient should have been identified within an &amp;lt;AudienceRestriction&amp;gt; in the SAML assertion (how &lt;a href="http://saml.xml.org/"&gt;SAML&lt;/a&gt; shows the intended scope of the assertion) the problem would have been moot if &lt;a href="http://www.google.com"&gt;Google&lt;/a&gt; used good pseudonymous identifiers for its users.&lt;/p&gt;
&lt;p&gt;Pseudonymous identifiers are random identifiers that change for each relying party (so my identity at relying party A might be 123 while my identity at relying party B might be 345).  Good pseudonymous identifiers are large random values (so that they are unpredictable) and are &lt;span style="font-weight:bold;"&gt;not&lt;/span&gt; reused across multiple users (so the same identifier is never used at different relying parties for the same or different users).&lt;/p&gt;
&lt;p&gt;The primary impetus behind pseudonymous identifiers is to prevent the use of the identifier as a correlation factor across multiple relying parties -- in contrast, a globally unique identifier would allow relying party A to ask relying party B about what user 123 did yesterday, whether or not the user was around.   However, pseudonymous identifiers also provide the following benefits:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;added security depth - an unknown user identifier adds another layer of security on the SSO system (which, in this case, would have protected the user accounts from attack since even if the assertion went to a different relying party, there would be no user account with that specific identifier, so it wouldn't be useful).&lt;/li&gt;
&lt;li&gt;easier integration of new partners - when integrating new partners, the identity systems of the partners may have different data structures for user identity (at it's most simplest case a new relying party may store user identifiers in 32 bit integer values, while the IdP typically uses 128 bit random values -- a system that supports good pseudonymous identifiers and the assumption that identifiers are different on each system will easily be able to handle this.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;One might be concerned about how relying party A could invoke a service of relying party B when they are all using different identifiers (such as a google relying party using Google Checkout).  This is pretty simple.  Typically, any such service invocation requires relying party A to get  a security token for the user at relying party B.  When that token is obtained, the issuer does the identity translation.   SAML provides for the protection of the identifier in the assertion using encryption since relying party A should never know what the user's identifier is at relying party B and the assertion is given to relying party A. 
&lt;p&gt;&lt;a href="http://www.projectliberty.org/resource_center/specifications/liberty_alliance_id_wsf_2_0_specifications_including_errata_v1_0_updates"&gt;Liberty ID-WSF&lt;/a&gt; provides several entities that provide this translation services depending upon the topography of the deployment.  The most common such service is the ID-WSF Discovery Service.&lt;/p&gt;
&lt;p&gt;Similarly, in WS-*, the &lt;a href="http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wsfed"&gt;WS-Federation&lt;/a&gt; Pseudonym service is called out to perform the same translation service (and it is possible for a deployment of a WS-Trust STS to perform this translation internally during token generation).&lt;/p&gt; 
&lt;p&gt;I strongly recommend that any deployment of SSO, even within a single enterprise, make use of pseudonymous identifiers.  They only strengthen the identity infrastructure.&lt;/p&gt;


&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/liberty" rel="tag"&gt;Liberty&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/id-wsf" rel="tag"&gt;ID-WSF&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/ws-federation" rel="tag"&gt;ws-federation&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/google" rel="tag"&gt;google&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/saml" rel="tag"&gt;SAML&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/pseudonymous+identifier" rel="tag"&gt;pseudonymous identifier&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-4477872933659650082?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/4477872933659650082/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=4477872933659650082' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/4477872933659650082'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/4477872933659650082'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2008/09/pseudonymity-would-help.html' title='Pseudonymity would help'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-6608800931810502612</id><published>2008-09-12T07:52:00.000-07:00</published><updated>2008-09-12T08:07:52.417-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='travel'/><category scheme='http://www.blogger.com/atom/ns#' term='liberty'/><title type='text'>Paul, Paul, Paul....</title><content type='html'>&lt;p&gt;&lt;a href="http://connectid.blogspot.com/2008/09/2nd-annual-liberty-alliance-tokyo-cup.html"&gt;Paul writes&lt;/a&gt; about an upcoming &lt;a href="http://www.projectliberty.org"&gt;Liberty Alliance&lt;/a&gt; &lt;a href="http://en.wikipedia.org/wiki/Futsal"&gt;futsal&lt;/a&gt; match in Tokyo and includes:&lt;/p&gt;
&lt;blockquote&gt;
Conor "One-Sock" Cahill, when asked whether he would be participating, responded 'Only if I can get an upgrade to First. Currently, I'm booked in business on a Triple 7 in from SFO, but I'm trying to switch that because I'm in seat 4A and I hate that seat because the power plug is about 2 inches too high and I have to unbuckle my seatbelt to reach it. I generally like 3F but the window shade was broken last time and the sun woke me up, even though I had taken my Ambien.'
&lt;/blockquote&gt;
&lt;p&gt;Paul, everyone knows that there's no 4A on a &lt;a href="http://www.ual.com"&gt;United Airlines&lt;/a&gt; &lt;a href="http://www.boeing.com/commercial/777family/"&gt;Boeing 777&lt;/a&gt;.  First class stops at row 3 and business class starts at row 8.   3F isn't a window seat (3A and 3J are, though 3A is frequently reserved as a pilot rest seat, but not on the long haul triple 7 that United uses for IAD-&gt;NRT flights).&lt;/p&gt;
&lt;p&gt;My preferred seat is, of course, 3A since they would have to pick the best, quietest seat for pilot rest, followed by it's opposite window seat 3J.&lt;/p&gt;
&lt;p&gt;And finally Paul, you *know* that I don't sleep on the way to Tokyo.  My rule for flying west is to stay awake till arrival at the hotel.  In fact, I remember you telling me that you had tried doing the same and it worked for you as well.&lt;/p&gt;
&lt;p&gt;Please try to get your facts somewhat correct when generating a fake Conor "Mr. Travel" Cahill quote.  And stop ragging on me about the sock.   I was in the middle of putting my shoes on when the called us together to take the picture.&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/futsal" rel="tag"&gt;futsal&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/liberty" rel="tag"&gt;Liberty&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/united" rel="tag"&gt;United&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/ual" rel="tag"&gt;UAL&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/boeing" rel="tag"&gt;Boeing&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/777" rel="tag"&gt;777&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-6608800931810502612?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/6608800931810502612/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=6608800931810502612' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/6608800931810502612'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/6608800931810502612'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2008/09/paul-paul-paul.html' title='Paul, Paul, Paul....'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-1366895027472498423</id><published>2008-09-11T18:15:00.000-07:00</published><updated>2008-09-11T18:33:52.213-07:00</updated><title type='text'>Lipstick &amp; Pigs</title><content type='html'>&lt;p&gt;Just to be clear about &lt;a href="http://connectid.blogspot.com/2008/09/lipstick-on-pig.html"&gt;lipstick and pigs&lt;/a&gt;, I want to point out that during my &lt;a href="http://public.cxo.com/conferences/index.html?conferenceID=24"&gt;DIDW&lt;/a&gt; presentation -- &lt;span style="font-weight:bold;"&gt;before anybody questioned it&lt;/span&gt; -- I pointed out that our &lt;span style="font-weight:bold;"&gt;proof-of-concept&lt;/span&gt; demo showed a strong authentication credential being issued based solely on a username and password.  I also explained that in a real-world situation, the bank would have only issued the credential under some higher level of authentication and went on to describe several options the bank would use.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://connectid.blogspot.com"&gt;Paul&lt;/a&gt; "claims" he had picked up on that issue before I mentioned it.  With him sitting next to the very distracting &lt;a href="http://eternaloptimist.wordpress.com/"&gt;Pamela&lt;/a&gt; during the session, I'm not sure we should believe him.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-1366895027472498423?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/1366895027472498423/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=1366895027472498423' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/1366895027472498423'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/1366895027472498423'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2008/09/lipstick-pigs.html' title='Lipstick &amp; Pigs'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-3138510731397351332</id><published>2008-09-11T15:17:00.000-07:00</published><updated>2008-09-11T15:36:14.934-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='relationships'/><category scheme='http://www.blogger.com/atom/ns#' term='social networks'/><title type='text'>Close Friends</title><content type='html'>&lt;p&gt;I've recently become active on &lt;a href="http://www.facebook.com"&gt;Facebook&lt;/a&gt;, reaching out to a number of people with home I have worked/played/lived or otherwise come across over the past few years.  I know it shocks &lt;a href="http://connectid.blogspot.com"&gt;Paul&lt;/a&gt; that I actually seem to have some people whom have confirmed that I am their friend (including Paul himself).&lt;/p&gt;
&lt;p&gt;Facebook allows me to define access to portions of my profile depending upon a users status:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Friend - someone with whom I have a direct relationship (they're in my list of friends)&lt;/li&gt;
&lt;li&gt;Friend of friend - someone who has a relationship with someone that I have a relationship with&lt;/li&gt;
&lt;li&gt;Network - A group of people that is organized based upon geographic locations, work, etc.  I belong to both the &lt;a href="http://www.intel.com"&gt;Intel&lt;/a&gt; and Washington DC networks.&lt;/li&gt;
&lt;li&gt;Public - everyone else&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This seems to be a simplistic picture of the world of relationships.  I can see how I would like to be able to classify some people as acquaintances, some as friends, and some as close friends (giving them different access to my profile information).  Just like I bring friends and close friends to my house, but not usually acquaintances.&lt;/p&gt;
&lt;p&gt;This came up when, out of the blue, I received an friendship request from someone who I didn't know at all, but they were interested in one of the groups I'm interested in (solar energy) and it probably didn't hurt that they happen to be a fairly nice looking example of a female member of the human race.  I wouldn't mind allowing them in as an acquaintance, but I really don't consider them a friend, nor do I want them to be able to see some of the portions of my profile that I make visible to friends.  Also, as a responsible friend of my friends, I wouldn't want her to get access to the information exposed by my friends to friends of their friends (Paul, if you can't follow that, I can draw you a ven diagram of it later).&lt;/p&gt;
&lt;p&gt;So I'd like to see some extended attributes around relationships added to social networking.  Not just at Facebook, but also at other sites like &lt;a href="http://www.linkedin.com/"&gt;Linked-In&lt;/a&gt;.


&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/facebook" rel="tag"&gt;Facebook&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/intel" rel="tag"&gt;Intel&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/relationships" rel="tag"&gt;relationships&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/social+networking" rel="tag"&gt;social networking&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/linked+in" rel="tag"&gt;Linked In&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-3138510731397351332?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/3138510731397351332/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=3138510731397351332' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3138510731397351332'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3138510731397351332'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2008/09/close-friends.html' title='Close Friends'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-467340231254657981</id><published>2008-09-09T05:49:00.000-07:00</published><updated>2008-09-09T06:15:16.545-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='travel'/><category scheme='http://www.blogger.com/atom/ns#' term='identity theft'/><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><title type='text'>Identity Leakage</title><content type='html'>&lt;p&gt;It's interesting to see how much information you can learn about people just sitting around at the airport.&lt;/p&gt;
&lt;p&gt;This past Sunday, I flew out of Dulles airport and running a bit late I arrived just 45 minutes before my flight (so I wasn't sitting around there all that long).  What I noticed while I was there:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;I was able to observe the full name and address for 3 people as they had luggage tags on their carry on luggage which had their name/address visible to all.  This doesn't count the other people who had tags, but they happened to be face down, so I don't know what information was on the tag.  My recommendation is to either a) use a tag that covers the information, place the information inside of one of the exterior pockets (I put my business card into the top external pocket) or just don't put anything on carry on luggage as you don't need to.&lt;/li&gt;
&lt;li&gt;I was able to observe the name, airline status and account number on several people as I stood in line for the flight.   While this isn't as much information as your complete address, I could easily wreak havoc with your travel plans calling the airline to cancel or rearrange flights or otherwise do interesting things with your airline points.   What should you do:  Remember that this information is on the boarding pass and don't show it off to everybody standing in line next to you.  I keep my boarding pass in my shirt pocket printed side facing in or I keep it inside of the carrier until I'm up in front of the line.   Note also that this information is printed on the portion of the pass they let you keep.  Don't leave them lying about.  Trash them like you would trash any other receipt.&lt;/li&gt;
&lt;li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_SEiYV06qGYE/SMZ2kV_--bI/AAAAAAAAAS0/STqSsvpuG7g/s1600-h/TravelDocHolder.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_SEiYV06qGYE/SMZ2kV_--bI/AAAAAAAAAS0/STqSsvpuG7g/s320/TravelDocHolder.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5244009182872402354" /&gt;&lt;/a&gt;Several people had those travel document/ID holders thinking that they are doing what frequent travelers do (which, of course, you &lt;span style="font-weight:bold;"&gt;never&lt;/span&gt; see a frequent traveler use).  Problem is that they leak information like crazy.  Most people that use them keep their driver's license in the clear holder.  So all the way through the security line and while they are sitting around at the airport, anybody who wants to (and has good eyesight) can read all the information there (name, address, dob at least).  Putting the passport in there just brags to the world that your a citizen of whatever country (yeah, for some of us that may be obvious, but there's no reason to confirm it for people who don't need to know it).   I strongly recommend against using one of these things.  If you just have to have such a holder, I would face all the documents in so that you control who gets to see them.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Moral of the story:  Be aware of all the places that you leak information and minimize them just as you would want providers to minimize the amount of data they collected about you.  Leaking such information opens you to potential stalking, identity theft or other non-fun activities.&lt;/p&gt;


&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/travel" rel="tag"&gt;travel&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/identity+theft" rel="tag"&gt;identity theft&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-467340231254657981?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/467340231254657981/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=467340231254657981' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/467340231254657981'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/467340231254657981'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2008/09/identity-leakage.html' title='Identity Leakage'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_SEiYV06qGYE/SMZ2kV_--bI/AAAAAAAAAS0/STqSsvpuG7g/s72-c/TravelDocHolder.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-7647347528111830840</id><published>2008-09-06T05:19:00.000-07:00</published><updated>2008-09-06T07:40:21.925-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='security'/><title type='text'>Scripts, Browsers and Security</title><content type='html'>&lt;p&gt;We all know that many of the common security exploits with browsers is accomplished through the use of the enhanced scripting/programming capabilities such as JavaScript or flash. &lt;/p&gt;
&lt;p&gt;These usually aren't attacks on the browser itself, but rather are attacks where the scripting capability of the browser is used to take advantage of an existing session in another window.   For example, one attack which was launched via email that included a link to a page which had javascript which opened a hidden window that went to a financial site and tried to make some stock trades.  If the user happened to be logged into that institution in a different browser window, the script succeeded in selling/buying some stocks (as part of a &lt;a href="http://en.wikipedia.org/wiki/Pump_and_dump"&gt;pump/dump scheme&lt;/a&gt;).   Sure, many people did not have that particular financial institution open at the time, but with enough spam, enough people (who should have known better) clicking on links in the email, the fraudster could generate enough successful traffic to enable their scheme.&lt;/p&gt;
&lt;p&gt;How does one protect themselves against such attacks?&lt;/p&gt;
&lt;p&gt;Turning off such capabilities will render many, if not most, web sites unusable.  Turning on and off as necessary will make your browsing unusable for even the most patient user.&lt;/p&gt;
&lt;p&gt;If you're running Firefox, there's an add-on you can get called &lt;a href="http://noscript.net/"&gt;NoScript&lt;/a&gt; which makes it pretty easy to manage which sites are allowed to run scripts and which sites are not.  I've been using this for a few weeks now and while it was a little tedious at first (each time I went to a new site that used such scripts they would start out blocked and I would have to enable them with a simple click on the notice bar).   I could choose to enable all scripts on the page (if I was lazy) or just certain scripts from certain parties that I trusted.  I could enable the scripts permanently for sites I visited often, or only enable them temporarily for a site that I was just visiting as the result of some search.&lt;/p&gt;
&lt;p&gt;This model makes it much less likely that I'll be surprised by some hidden script on a page that I pull up as the result of a Google search.&lt;/p&gt;
&lt;p&gt;A very positive side effect is that those flash adds that I hate so much, are also blocked!  Yeah!&lt;/p&gt;
&lt;p&gt;I definitely recommend NoScript and what's really cool is that it's free as well.&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/firefox" rel="tag"&gt;Firefox&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/noscript" rel="tag"&gt;NoScript&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/security" rel="tag"&gt;security&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-7647347528111830840?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/7647347528111830840/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=7647347528111830840' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/7647347528111830840'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/7647347528111830840'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2008/09/scripts-browsers-and-security.html' title='Scripts, Browsers and Security'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-788420691754612301</id><published>2008-06-22T04:27:00.000-07:00</published><updated>2008-06-22T04:57:54.471-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='security'/><category scheme='http://www.blogger.com/atom/ns#' term='browser'/><title type='text'>Firefox 3.0</title><content type='html'>&lt;p&gt;I've been using the new &lt;a href="http://www.mozilla.com/firefox/"&gt;Firefox 3.0&lt;/a&gt; browser for several days now and I have to say that I am very impressed with it.&lt;/p&gt;
&lt;p&gt;The browser certainly feels substantially faster at loading the same pages that I frequently visited before with Firefox 2 and with Internet Explorer 7 -- though I have to admit that this is very subjective and that server and ISP performance come into play.&lt;/p&gt;
&lt;p&gt;I was a bit concerned that the browser address bar no longer indicates the SSL status of the site I'm visiting.  This was a conscious decision by Firefox developers and there are &lt;a href="http://lifehacker.com/396582/turn-firefox-3s-location-bar-yellow-at-https-urls"&gt;work-arounds for getting it back&lt;/a&gt;.  I'm not sure I agree with the arguments either way yet, but I was a bit surprised when I first went to a site and the SSL status was no longer indicated in the address bar -- I had to go checking a bit to make sure I was where I thought I was.&lt;/p&gt;
&lt;p&gt;The problem that drove this change was the fact that they are now indicating site status with the background around the site icon that shows to the left of the location bar and the colors for the three states (unsecure, ssl and ev) did not match the colors of the address background.   The ultimate decision was to leave the address bar uncolored and solely rely on the icon background.   While I agree that if there are colors on the background that they must be the same, I think I disagree with not also reflecting the colors on the address background as well.  You can read more about this change and the &lt;a href="https://bugzilla.mozilla.org/show_bug.cgi?id=417844"&gt;logic/discussion behind it here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The only problem I've observed so far is that the ordering process at the &lt;a href="http://www.att.com"&gt;AT&amp;T wireless site&lt;/a&gt; does not work (my son lost his phone and I had to order a replacement for him).  I can't explain clearly what the problem is as the site just behaved incorrectly -- asking me for the same information multiple times or doing other strange things like showing nothing in the cart after I selected a phone, clicked on add-to-cart and the popup that resulted from that operation would show that no phone was put into the cart).   I tried logging out and logging back in and restarting the browser -- all to no avail.  I ended up having to use &lt;a href="http://www.microsoft.com/windows/products/winfamily/ie/default.mspx"&gt;Internet Explorer&lt;/a&gt; to make the order.&lt;/p&gt;
&lt;p&gt;Overall, I'm very satisfied with the new version of Firefox and recommend that others using earlier versions of upgrade -- you will like the speed improvements.  Congrats Firefox team on a great upgrade!&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/firefox" rel="tag"&gt;firefox&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/browsers" rel="tag"&gt;browsers&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/ATT" rel="tag"&gt;AT&amp;amp;T&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/Internet+Explorer" rel="tag"&gt;Internet Explorer&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/ssl" rel="tag"&gt;ssl&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-788420691754612301?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/788420691754612301/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=788420691754612301' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/788420691754612301'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/788420691754612301'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2008/06/firefox-30.html' title='Firefox 3.0'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-4251075683172423702</id><published>2008-05-12T05:34:00.000-07:00</published><updated>2008-05-12T05:54:06.325-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gadget'/><category scheme='http://www.blogger.com/atom/ns#' term='privacy'/><title type='text'>Back-to-myMac brings the Mac Back</title><content type='html'>&lt;p&gt;An &lt;a href="http://www.lohud.com/apps/pbcs.dll/article?AID=2008805090392"&gt;interesting story&lt;/a&gt; coming out of White Plans, NY talks of a woman who's apartment was burglarized with close to $5,000 of electronics stolen including a couple of &lt;a href="http://www.apple.com"&gt;Apple&lt;/a&gt; laptops and how she was able to help catch the culprits as well as get her stuff back.&lt;/p&gt;
&lt;p&gt;The thief apparently was using the computer and one of the victim's friends (who knew her laptop was stolen) noticed a few days later that she was logged in (presumably on some instant messenger) and called her.&lt;/p&gt;
&lt;p&gt;The woman was able to use Apple's "&lt;a href="http://www.apple.com/dotmac/backtomymac.html"&gt;Back To My Mac&lt;/a&gt;" application on another computer to get control of her stolen laptop and activated the camera in the laptop, taking pictures of the thief.   A quick review with her friends and they figured out that the guy was a friend of a friend of one of her roommates who had been at the apartment a few weeks before.&lt;/p&gt;
&lt;p&gt;A quick call to the police and they arrested the thiefs as well as getting back most of the stolen electronics.&lt;/p&gt;
&lt;p&gt;I'm guessing that she's happy she wasn't one of those self conscious users who tape over the camera to keep something like this from happening and I'm not at all worried about the thief's privacy violation.  Of course, the chances of other thiefs really being this stupid to make use of a stolen computer without wiping it clean are probably pretty low, so I'm not sure how often this kind of think can happen (but you know they still do give out the annual &lt;a href="http://www.darwinawards.com/"&gt;Darwin awards&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/apple" rel="tag"&gt;apple&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/mac" rel="tag"&gt;mac&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/back+to+my+mac" rel="tag"&gt;back to my mac&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/privacy" rel="tag"&gt;privacy&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/darwin" rel="tag"&gt;darwin&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-4251075683172423702?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/4251075683172423702/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=4251075683172423702' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/4251075683172423702'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/4251075683172423702'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2008/05/back-to-mymac-brings-mac-back.html' title='Back-to-myMac brings the Mac Back'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-3190947152608014440</id><published>2008-05-01T07:37:00.000-07:00</published><updated>2008-11-18T21:55:19.909-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='travel'/><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><category scheme='http://www.blogger.com/atom/ns#' term='dulles'/><title type='text'>I've been cleared</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_SEiYV06qGYE/SBnar9J3ojI/AAAAAAAAARw/flr577klRFs/s1600-h/Cleared.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_SEiYV06qGYE/SBnar9J3ojI/AAAAAAAAARw/flr577klRFs/s320/Cleared.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5195424093833765426" /&gt;&lt;/a&gt;
I've joined the &lt;a href="http://www.tsa.gov/approach/rt/index.shtm"&gt;US's Registered Traveler Program&lt;/a&gt;.  &lt;a href="http://www.flyclear.com"&gt;Clear&lt;/a&gt; (a subsidiary of Verified Identity Pass Inc.) operates the local facility here at Dulles, so I joined their network.&lt;/p&gt;
&lt;p&gt;In exchange for submitting to (and paying for) a background investigation and biometric authentication (fingerprint in my case, though they also had iris scanners there it wouldn't work on me) you get to have a very short security line -- though you still go through the same "take-off-your-shoes" security process.   They seem to be working on getting some form of scanner approved for scanning shoes while they are still on your feet, but recently they did not pass the TSA testing that was done.&lt;/p&gt;
&lt;p&gt;The cost of the program from Clear is $128 (at least for the first year -- they weren't clear on what subsequent years will cost).   $28 of that goes to the TSA for the background investigation and the rest to Clear (of which, I'm sure, a portion goes to the airport).  You can extend that by a year when you use a discount code (and the party who gave you the discount code also gets a year -- so there's something in it for everyone.  My discount code, if you're interested in getting a free month added to your subscription is: DSCAM1142273 - use it to your hearts content.&lt;/p&gt;
&lt;p&gt;One might ask why I would join the program given that I was already a &lt;a href="http://www.ual.com"&gt;United &lt;/a&gt;1K member and able to use the &lt;a href="http://conorcahill.blogspot.com/2007/02/dulles-premium-passenger-security-lines.html"&gt;premium passenger lines&lt;/a&gt; at &lt;a href="http://www.metwashairports.com/dulles"&gt;Dulles&lt;/a&gt;.  There were several reasons including:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The premium lines are only available when the flight you a premium member on the flight you are leaving Dulles on.  I have seen the staff turn away United premium members when they were booked on some other airline where they did not have status.&lt;/li&gt;
&lt;li&gt;Even with the premium lines, you can still get stuck in a slow line (I have waited as long as a half hour in the line) and if I'm tight for a flight, that can be too long.&lt;/li&gt;
&lt;li&gt;The program is available at other airports (though I'm not sure if I'm only able to use it at Clear supported airports or any registered traveler airport) and in particular, San Jose Airport -- which has &lt;span style="font-weight:bold;"&gt;no&lt;/span&gt; premium lines &lt;span style="font-weight:bold;"&gt;and&lt;/span&gt; where the line for early morning flights can be crazy long -- is one of the Clear supported airports.&lt;/li&gt;
&lt;li&gt;I travel often enough that the time savings, even if small, is worth it (in my opinion).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Of course, about 2 weeks after signing up (and paying), I received an email from &lt;a href="http://www.marriott.com/"&gt;Marriott&lt;/a&gt; (where I am a Platinum member, of course) with the following offer:&lt;/p&gt;
&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_SEiYV06qGYE/SBnd_NJ3okI/AAAAAAAAAR4/53uoncc9V-g/s1600-h/PlatinumOffer.bmp"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_SEiYV06qGYE/SBnd_NJ3okI/AAAAAAAAAR4/53uoncc9V-g/s320/PlatinumOffer.bmp" border="0" alt=""id="BLOGGER_PHOTO_ID_5195427723081130562" /&gt;&lt;/a&gt;
&lt;p&gt;So, after I signed up I found out I could have gotten it for free.   I called them  expecting to get the "Gosh, I'm sorry, but it's too late now" and was pleasantly surprised to hear "No problem sir, we'll just extend you another year".  Good deal!&lt;/p&gt;
&lt;p&gt;You might be wondering what I think now that I'm a member.   I've used it on 5 of my last 8 flights (&lt;a href="http://www.flypdx.com"&gt;Portland International Airport&lt;/a&gt; does not yet participate in the Registered Traveler program), nor is it available at foreign airports.   In Dulles it's down with the employee security line it workes great -- in fact, the people from Clear are almost too helpful (trying to help gather things ready to go through security).  I've timed it with another person who was going through the premium security line and I was about 10 minutes faster then them at a time when the lines were short.  In San Francisco the clear area opens at the front end of the regular security line, emptying directly into the xray scanners (so, essentially, you jump to the front of the line).&lt;/p&gt;
&lt;p&gt;One thing on the negative side, if you're traveling with people, you can't bring them with you, so either you have to go through the regular lines, or you have to split up.   That already happened to me when I was traveling with &lt;a href="http://practicalid.blogspot.com/"&gt;George&lt;/a&gt; on our way to the &lt;a href="http://www.kuppingercole.com/events/eic2008"&gt;European Identity Conference&lt;/a&gt; in Munich -- that's how I figured out that there was a 10 minute difference (it was an experiment!).   Not sure what I'm going to do when I am traveling with my family to England &amp; Ireland this summer -- I don't think my wife will be as easy going about it as George was :-).&lt;/p&gt;
&lt;p&gt;All-in-all, I'm a happy customer..... And remember, if you want to sign up, use the discount code "DSCAM1142273" so we both can get a free month :-).&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/travel" rel="tag"&gt;travel&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/dulles" rel="tag"&gt;dulles&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-3190947152608014440?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/3190947152608014440/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=3190947152608014440' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3190947152608014440'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3190947152608014440'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2008/05/ive-been-cleared.html' title='I&apos;ve been cleared'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_SEiYV06qGYE/SBnar9J3ojI/AAAAAAAAARw/flr577klRFs/s72-c/Cleared.jpg' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-8611265245838868475</id><published>2008-02-18T15:24:00.000-08:00</published><updated>2008-02-18T15:48:03.017-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='liberty'/><title type='text'>Updated Liberty Open Source</title><content type='html'>&lt;p&gt;I've updated my &lt;a href="http://www.cahillfamily.com/OpenSource/"&gt;Liberty ID-WSF Open Source Toolkits&lt;/a&gt; again.  This time to reflect the minor changes made in the &lt;a href="http://www.projectliberty.org/resource_center/specifications/liberty_alliance_id_wsf_advanced_client_1_0_specifications"&gt;Advanced Client specifications&lt;/a&gt; as they were finalized within the Alliance.&lt;/p&gt;
&lt;p&gt;For those of you who aren't familiar with this code, I have two toolkits available -- a C++ client and an Axis1/Java Server -- which implement the Liberty ID-WSF protocols (both the basic framework and substantial portions of several services).&lt;/p&gt;
&lt;p&gt;This new release of the toolkit does not add new functionality -- it only brings
the code up to match the final specifications.&lt;/p&gt;
&lt;p&gt;Have fun!&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/liberty" rel="tag"&gt;liberty&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/liberty+alliance" rel="tag"&gt;Liberty Alliance&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/open+source" rel="tag"&gt;Open Source&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/id-wsf" rel="tag"&gt;ID-WSF&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/provisioning" rel="tag"&gt;Provisioning&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/advanced+client" rel="tag"&gt;Advanced Client&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-8611265245838868475?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/8611265245838868475/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=8611265245838868475' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/8611265245838868475'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/8611265245838868475'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2008/02/updated-liberty-open-source.html' title='Updated Liberty Open Source'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-2092903162820231378</id><published>2008-02-16T17:21:00.001-08:00</published><updated>2008-11-18T21:55:20.085-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='identiy'/><title type='text'>What's wrong with this picture?</title><content type='html'>&lt;p&gt;I went to login to my discover card account to review my account activity (something I try to do on a regular basis).  Using a bookmark (to make sure I don't accidentally enter a typo that gets me to a hackers site -- plus I'm lazy and a single click is easier than typing in the URL), I get to the web site and I notice something that isn't right (in my opinion).  Take a look at the picture below and tell me if you see it before reading past it.&lt;/p&gt;
&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_SEiYV06qGYE/R7eMtrLqfYI/AAAAAAAAARg/j-0SiyqDMng/s1600-h/DiscoverLogin.bmp"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_SEiYV06qGYE/R7eMtrLqfYI/AAAAAAAAARg/j-0SiyqDMng/s320/DiscoverLogin.bmp" border="0" alt=""id="BLOGGER_PHOTO_ID_5167753813744582018" /&gt;&lt;/a&gt;
&lt;p&gt;Look at the URL.  It's non-SSL (http: vs https:).  When I noticed that, I figured that somehow my bookmark was messed up, but looking at the bookmark, it does specify https:.  What happens is that Discover is redirecting you from the SSL endpoint to the non-SSL endpoint.  This happens with IE and with Mozilla whether directly connected or through a proxy server, so it's clearly something done on the server and not a side effect of the client. &lt;/p&gt;
&lt;p&gt;That wouldn't be all that bad if Discover just had a link on the home page directing me to a login page that was SSL protected.  That isn't the case.  The home page prompts for the user's credentials.   Now the technical people out there might say that the data from the login form is probably submitted via an SSL endpoint so the data is protected.  However, without looking at the source code, the user can't know that.&lt;/p&gt;
&lt;p&gt;In addition, since the URL itself isn't protected, the user (me in this case) doesn't have any way to know that they are actually talking to Discover.  This could be a MITM phishing site.&lt;/p&gt;
&lt;p&gt;So, if you do go to Discover's site to view your account, I suggest that you select the login link in the upper right corner before you enter your credentials.  This will bring you to an SSL protected page where you can verify that the host you are talking to is discovercard.com and not some MITM.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/id+theft" rel="tag"&gt;id theft&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/ssl" rel="tag"&gt;ssl&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-2092903162820231378?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/2092903162820231378/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=2092903162820231378' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/2092903162820231378'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/2092903162820231378'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2008/02/whats-wrong-with-this-picture.html' title='What&apos;s wrong with this picture?'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_SEiYV06qGYE/R7eMtrLqfYI/AAAAAAAAARg/j-0SiyqDMng/s72-c/DiscoverLogin.bmp' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-3477564464701199785</id><published>2007-11-19T04:12:00.000-08:00</published><updated>2007-11-19T04:18:03.082-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fun'/><title type='text'>Time Machine</title><content type='html'>&lt;p&gt;One of the current "joke" emails flooding the internet is an email showing pictures from a 1977 JC Penny catalog.   Given that the email referred to "blog fodder" I decided to search around and I've found the original post.  Definitely worthy of a read. &lt;/p&gt;
&lt;p&gt;&lt;a href="http://15minutelunch.blogspot.com/2007/10/strap-in-shut-up-and-hold-on-were-going.html"&gt;Strap In, Shut up and hold on -- we're going back.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If you remember this stuff... If you wore this stuff... I'd suggest that you not share those identity attributes -- unless you don't mind being the butt end of many jokes for the rest of your life.&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/time+machine" rel="tag"&gt;time machine&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-3477564464701199785?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/3477564464701199785/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=3477564464701199785' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3477564464701199785'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3477564464701199785'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/11/time-machine.html' title='Time Machine'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-7849432274339676939</id><published>2007-11-15T05:18:00.000-08:00</published><updated>2007-11-15T05:38:05.945-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='family'/><title type='text'>Anti-gulllibility training</title><content type='html'>&lt;p&gt;I've always felt that one of the most important tasks for a parent is to teach their kids to &lt;span style="font-weight:bold;"&gt;not &lt;/span&gt;be gullible.   I routinely work on such training with my kids.  In fact the other day, I was way into the story about how Los Angeles schools, while not getting many snow days, do get closed for bad hair days.  Unfortunately, while my daughter was well into the "realy?" stage, my wife piped up with "They do not!" cutting me off at the knees.&lt;/p&gt;
&lt;p&gt;Nothing is a better example of the importance of such training than the comment in response to &lt;a href="http://connectid.blogspot.com"&gt;Paul&lt;/a&gt;'s revealing post about &lt;a href="http://connectid.blogspot.com/2007/11/redmond-trains-monkeys-as-identity.html"&gt;Microsoft's Identity Assistants&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;So parents, take this as a warning.  Train your kids in anti-gullibility before they make a fool of themselves publicly.&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/microsoft" rel="tag"&gt;Microsoft&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/gullibility" rel="tag"&gt;Microsoft&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-7849432274339676939?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/7849432274339676939/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=7849432274339676939' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/7849432274339676939'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/7849432274339676939'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/11/anti-gulllibility-training.html' title='Anti-gulllibility training'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-5287703347220553472</id><published>2007-11-07T10:38:00.000-08:00</published><updated>2007-11-07T10:56:35.109-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><category scheme='http://www.blogger.com/atom/ns#' term='attributes'/><title type='text'>Madsen's Lemmas (or is it Lemmi)</title><content type='html'>&lt;p&gt;&lt;a href="http://connectid.blogspot.com/2007/11/madsens-lemma-of-dubious-attributes.html"&gt;Paul writes&lt;/a&gt; about attributes and how they won't be trusted for self assertion when the value of the attributes is used to distinguish levels of service.&lt;/p&gt;
&lt;blockquote&gt;
&lt;span style="font-style:italic;"&gt;In the context of any given application, a Relying Party will be unwilling to accept a self-asserted identity attribute without verification if there exists the possibility of differentiated advantage to the user in claiming one value for that attribute over another.&lt;/span&gt;
&lt;/blockquote&gt;
And follows with the corollary:
&lt;blockquote&gt;
&lt;span style="font-style:italic;"&gt;For any given identity attribute, there exists an application context in which there can be differentiated advantage to the user in claiming one value for that attribute over another.&lt;/span&gt;
&lt;/blockquote&gt;
&lt;p&gt;Combining the two would make one think that Paul is arguing that self asserted identity attributes will never be accepted, but I'm pretty sure he didn't mean that.&lt;/p&gt;
&lt;p&gt;In any case, I think there's another side to this puzzle in that the self asserted attributes can be accepted and used when the result makes it useless for the user to lie about them.  If I order something with Paul's credit card, name, address and phone number, it generally will be accepted, the transaction will complete, and the vendor will ship the product -- it will just end up at Paul's house rather than mine, so I won't benefit from it (but I bet Paul was surprised when those enlargement pills showed up :-)).&lt;/p&gt;
&lt;p&gt;So I would write the lemma more along the lines of:&lt;/p&gt;
&lt;blockquote&gt;
&lt;span style="font-style:italic;"&gt;There exist some set of cases where a Relying Party provides such differentiated levels of service that they will require third party attestation and/or confirmation of attributes in order to enable access to such differentiated levels of service.&lt;/span&gt;
&lt;/blockquote&gt;
&lt;p&gt;PS.   Paul, if you need to fake your IP address to make it look like you're coming from the US, let me know... I can give you access to my proxy server (without, of course, any guarantees as to snooping on the traffic :-)).&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/attributes" rel="tag"&gt;attributes&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/self-asserted" rel="tag"&gt;self-asserted&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-5287703347220553472?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/5287703347220553472/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=5287703347220553472' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/5287703347220553472'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/5287703347220553472'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/11/madsens-lemmas-or-is-it-lemmi.html' title='Madsen&apos;s Lemmas (or is it Lemmi)'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-5905184207460899084</id><published>2007-11-02T05:50:00.000-07:00</published><updated>2007-11-02T06:22:06.639-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='development'/><category scheme='http://www.blogger.com/atom/ns#' term='accessiblity'/><title type='text'>Living without flash....</title><content type='html'>&lt;p&gt;Back in March, I &lt;a href="http://conorcahill.blogspot.com/2007/03/ad-blocking.html"&gt;wrote&lt;/a&gt; about finally succumbing to the need for add blocking when flash adds on several sites were measurably impacting the performance of my system.  When I &lt;a href="http://conorcahill.blogspot.com/2007/10/painful-vista.html"&gt;reloaded my system&lt;/a&gt; I decided to forgo installing the flash player as my solution as the add blocking software was still kind of a pain.&lt;/p&gt;
&lt;p&gt;Well, after a month or so of living without a flash plugin it seems I have to reverse my decision.  Too many sites out there are totally unusable without flash.  Many use it as an integral component in their site navigation (try researching &lt;a href="http://www.dishnetwork.com"&gt;Dish Network&lt;/a&gt;'s offerings or look at &lt;a href="http://www.scifi.com"&gt;SciFi's channel&lt;/a&gt; info (2/3rds of the home page is blank with "this section requires flash")... Others use it for processing particular functions (I can't us &lt;a href="http://www.discovercard.com"&gt;discover's&lt;/a&gt; secure credit card number generator because it only works with flash, I couldn't order my daughter's school yearbook from &lt;a href="http://www.jostensyearbooks.com"&gt;Jostens&lt;/a&gt; because the required personalization step requires flash with no alternative).  &lt;/p&gt;
&lt;p&gt;While all this glitz is nice for the marketing guys, I think that this is a bad thing.  Especially when you consider that flash doesn't work all that well for accessibility (just imagine the blind person trying to make sense of the glitzy flash driven site navigation system).  The &lt;a href="http://www.webaim.com"&gt;Web Accessibility in Mind&lt;/a&gt; folks have a good &lt;a href="http://www.webaim.org/techniques/flash/"&gt;article on accessibility programming with flash&lt;/a&gt; but they note that it's hard to do well.&lt;/p&gt;
&lt;p&gt;My suggestions:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Never use flash for site nagivation.  Javascript works well enough.&lt;/li&gt;
&lt;li&gt;If you do use flash, provide reasonable alternative, keyboard based, means to obtain information from your site.&lt;/li&gt;
&lt;li&gt;Evaluate the accessibility of the information and make use of the suggestions provided by WebAIM.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Ideally what I would like to see is an option in Firefox to manually enable flash processing on a site by site basis -- those sites that abuse the privilege by writing CPU intensive flash apps would be blocked, while the more typical mundane implementations could be allowed.&lt;/p&gt;
&lt;p&gt;BTW - Given that no browser includes flash out-of-the-box (it's always an add-in plugin as far as I'm aware) I now have some good ammunition to use when I run up against those that resist authentication models requiring software on the client.&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/flash" rel="tag"&gt;flash&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/macromedia" rel="tag"&gt;Macromedia&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/adobe" rel="tag"&gt;Adobe&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/webaim" rel="tag"&gt;WebAIM&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/dish+network" rel="tag"&gt;Dish Network&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/discover" rel="tag"&gt;Discover&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/jostens" rel="tag"&gt;Jostens&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/scifi" rel="tag"&gt;SciFi&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/firefox" rel="tag"&gt;Firefox&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-5905184207460899084?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/5905184207460899084/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=5905184207460899084' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/5905184207460899084'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/5905184207460899084'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/11/living-without-flash.html' title='Living without flash....'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-6774087839114365513</id><published>2007-10-22T13:40:00.000-07:00</published><updated>2008-11-18T21:55:20.510-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gadget'/><title type='text'>New Gadget #13</title><content type='html'>&lt;p&gt;My latest gadget is an update on a &lt;a href="http://conorcahill.blogspot.com/2006/10/new-gadget-of-week.html"&gt;previously reported gadget&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;This week I bought the latest and greatest &lt;a href="http://www.westerndigital.com/en/products/Products.asp?DriveID=317"&gt;Western Digital Passport&lt;/a&gt; external hard drive.  A drive with a honking 250GB of space on it in the same packaging that my older 120GB and later 160GB drive used.  In fact side by side with my prior 160GB drive you can't tell which is which:&lt;/p&gt;
&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_SEiYV06qGYE/RxwVY321MjI/AAAAAAAAAPM/reE3yAr7tag/s1600-h/WDPassport250G.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_SEiYV06qGYE/RxwVY321MjI/AAAAAAAAAPM/reE3yAr7tag/s320/WDPassport250G.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5123993993095754290" /&gt;&lt;/a&gt;
&lt;p&gt;Interestingly, they came out with this quick enough that they are still using the 160GB retail packaging with just a sticker over the 16GB on the front of the package.  When I first looked at the back of the package (which listed only 120GB and 160GB) I was worried about a bait/switch from the retailer.  However, that wasn't the case, it was a real deal.&lt;/p&gt;
&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_SEiYV06qGYE/RxwYkX21MkI/AAAAAAAAAPU/IeJ0XuOLIAY/s1600-h/WDPassportPackage.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_SEiYV06qGYE/RxwYkX21MkI/AAAAAAAAAPU/IeJ0XuOLIAY/s320/WDPassportPackage.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5123997489199133250" /&gt;&lt;/a&gt;
&lt;p&gt;The drive comes formatted with a FAT filesystem and has software for doing automated backups and synchronization with your primary hard drive.  I immediately reformatted it for NTFS so I could use encryption and such on the drive.  I don't need the backup or synchronization stuff as I use this drive as an extended primary drive rather than a backup drive.  I use rsync to backup my system (including the WD drive) to my server regardless of my location (remote or at home).&lt;/p&gt;
&lt;p&gt;Some who have used this device have complained about the fact that it sometimes won't work in their USB port.  WD does document that it requires a full power USB port (though I can't find any documentation on exactly what is a full power USB port and how do you know you have one).   I have had problems when I plug this device into some ports and found that on my laptop only one of the ports works reliably.  Even the ports on my external powered hub are not sufficient to power the device alone.  So when at home using the hub, I use a Y cable that grabs power from a second USB port to power the WD drive.  I'm not sure where I got the cable, it was lying about in my USB cables collection, but WD does sell one.&lt;/p&gt;
&lt;p&gt;The only other thing is that I suggest you buy the slipcase sold by WD to protect the drive when on the road.  I had one lying about from my 160GB drive, so I just used that one. &lt;/p&gt;


&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/disk" rel="tag"&gt;disk&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/western+digital" rel="tag"&gt;Western Digital&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/passport" rel="tag"&gt;passport&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/external+hard+drive" rel="tag"&gt;external hard drive&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/gadget" rel="tag"&gt;gadget&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-6774087839114365513?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/6774087839114365513/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=6774087839114365513' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/6774087839114365513'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/6774087839114365513'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/10/new-gadget-13.html' title='New Gadget #13'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_SEiYV06qGYE/RxwVY321MjI/AAAAAAAAAPM/reE3yAr7tag/s72-c/WDPassport250G.jpg' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-6326331097110820346</id><published>2007-10-21T17:59:00.000-07:00</published><updated>2007-10-21T19:34:11.298-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='how-to'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Subversion end-of-line style</title><content type='html'>&lt;p&gt;In my work with the &lt;a href="http://www.projectliberty.org"&gt;Liberty Alliance&lt;/a&gt;, I'm the editor for several documents in the upcoming &lt;a href="http://www.projectliberty.org/resource_center/specifications/liberty_alliance_id_wsf_advanced_client_1_0_specifications_draft_release_2"&gt;Advanced Client specification set&lt;/a&gt;.  We use &lt;a href="http://subversion.tigris.org/"&gt;subversion&lt;/a&gt; as our source code revision control system.&lt;/p&gt;
&lt;p&gt;Recently, when I was working on a new draft of the specs and committing a set of files that included a number of &lt;a href="http://office.microsoft.com/visio"&gt;Visio&lt;/a&gt; drawings and the equivalent Encapsulated Postscript file images, I ran into problems.  After all the files were uploaded during the commit, which failed with the error message:&lt;/p&gt;
&lt;blockquote&gt;
svn: File "xxx.vsd" has inconsistent newlines
svn: Inconsistent line ending style
&lt;/blockquote&gt;
&lt;p&gt;A quick look at the file and I saw that the files had the typical windows line terminator CRLF rather than the UNIX typical LF.  So I hand edited the file removing the CRs and tried the commit again.  The same thing happened just with the next file in the list.  So clearly this was going to go on for each file.   So I did what any other UNIX weenie would do -- entered a one line shell script for loop on the command line using tr to delete the CRs in each file.&lt;/p&gt;
&lt;p&gt;This got me past the problem and the commit succeeded.  However, I was not totally satisfied as I wasn't sure that if they could be edited in Visio with these changes.  So I dug a bit deeper into the problem looking into Subversion.&lt;/p&gt;
&lt;p&gt;It turned out that subversion has attributes on files, one of which is "svn:eol-style".  In this case, the files I was working with had gotten this attribute set to "native" which on the UNIX system I was on would be "LF".  Not good for a file from Visio.   I thought about changing the svn:eol-style to CRLF which would get around my specific problem at this time (until Visio changed their file format), but the better solution ended up being to just delete this attribute on the file with the following command:
&lt;blockquote&gt;
svn propdel svn:eol-style *.vsd *.eps
&lt;/blockquote&gt;
&lt;p&gt;Then I copied in the files from my Windows partition (where they still had the CRLFs) and committed the files without a problem.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/subversion" rel="tag"&gt;subversion&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/visio" rel="tag"&gt;visio&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-6326331097110820346?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/6326331097110820346/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=6326331097110820346' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/6326331097110820346'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/6326331097110820346'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/10/subversion-end-of-line-style.html' title='Subversion end-of-line style'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-3200620909232976676</id><published>2007-10-16T23:54:00.000-07:00</published><updated>2007-10-21T17:46:12.451-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='travel'/><title type='text'>Checking in too early</title><content type='html'>&lt;p&gt;Like most airlines, &lt;a href="http://www.ual.com"&gt;United&lt;/a&gt; has, and strongly encourages the use of, an online check-in tool so that passengers can check-in for their flight before leaving home.  This is seen as a win-win situation for everyone.  United gets the user to do the manual labor of checking in and paying for the paper stock for printing the boarding pass while the user gets to avoid check-in lines at the airport.&lt;/p&gt;
&lt;p&gt;I am a big fan of using this and typically check in near the limit of 24 hours before departure.  I check in this early in part so that I don't forget to check-in in the mad rush out of the house on the day of my flight and in part so I can check to see if there's a better seat available at check-in.&lt;/p&gt;
&lt;p&gt;However, this has led to one problem.   On several recent flights, I was upgraded sometime between my early check-in and my departure for the airport.   Because I was already checked-in in coach, I was unable to select a seat in the first class section.  Theoretically I should be able to un-check-in and then re-check-in, or I should be able to get the customer service people to do the same for me, but neither worked and I had to wait till I got to the airport and the gate agent opened the flight at the gate (even the Red Carpet Club agents were unable to help me).&lt;/p&gt;
&lt;p&gt;Moral of the story:  If you're on the upgrade list, don't check in till you're close to leaving for the airport.&lt;/p&gt;
&lt;p&gt;Update (10/21/07): Not learning from my own mistakes, I checked in around 11:30 PM the night before a flight to Tokyo as it appeared that there was no chance that it would clear before leaving for the airport in  the morning (it was a 12:41PM departure).  Of course, I was wrong and the upgrade cleared at 5:03 AM.  But, since I was already checked in, I couldn't select seats in business class.  Checking the site (by the usual trick of trying to purchase a business class ticket) showed that there were still 4 seats open including a coveted aisle seat (8D).  By the time I got to the airport and checked in, the only seat left was 13E (a middle seat).  Hopefully you'll learn from my mistakes better than I do.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/united" rel="tag"&gt;United&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/ual" rel="tag"&gt;UAL&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/easy+checkin" rel="tag"&gt;Easy Checkin&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/travel" rel="tag"&gt;travel&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-3200620909232976676?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/3200620909232976676/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=3200620909232976676' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3200620909232976676'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3200620909232976676'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/10/checking-in-too-early.html' title='Checking in too early'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-5600605686532386850</id><published>2007-10-14T06:52:00.000-07:00</published><updated>2008-11-18T21:55:20.794-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='appliance'/><title type='text'>A broken Washer</title><content type='html'>&lt;p&gt;This is a long story, feel free to just cut to the end.&lt;/p&gt;
&lt;p&gt;A little over a year ago, we bought one of &lt;a href="http://www.sears.com"&gt;Sears&lt;/a&gt; top-of-the-line washing machines (the &lt;a href="http://www.sears.com/shc/s/p_10153_12605_02627087000P?filter=Brand%7CKenmore+Elite%5EWasher+Type%7CTop+loader%5EInterior+Size+%28Washer%29%7C4.5+cu.+ft.%5EColor+Family%7CBlue&amp;vName=Appliances&amp;cName=Washers+%26+Dryers&amp;sName=All+Washers&amp;sLevel=3"&gt;Kenmore Elite Oasis Canyon&lt;/a&gt;) for several reasons including that it was &lt;a href="http://www.energystar.gov/"&gt;EnergyStar&lt;/a&gt; compliant while also being very large (so we could do our laundry in less loads while saving energy).&lt;/p&gt;
&lt;p&gt;We really like the washer.  It does a great job on our clothes, does it quickly, and does lots and lots of clothes at the same time, while also being very efficient at doing small loads.&lt;/p&gt;
&lt;p&gt;However, we didn't like the fact that the thing just up and died mid-load with no sign of life in it.  None of the lights were lit, none of the buttons did anything. On top of that, the lid was locked  and there was nothing I could do to unlock it, so our clothes were stuck in there. Power cycling it did nothing (though I was able to use a meter to verify that it was not only getting power, but also consuming some small amount of wattage).  Just in case you're wondering, no, the there was no surge on the line as the weather was clear (we're in the middle of a drought) and I have UPSs all over the house which beep like crazy for any power line problems -- none of that happened, so I'm pretty convinced it was not a surge.&lt;/p&gt;
&lt;p&gt;Of course, the warranty was over (1 year) and, given that it was a top-of-the-line system I thought it wouldn't be necessary to buy the extended warranty (especially since they almost always are a waste of money).  So the repair was going to be on us.&lt;/p&gt;
&lt;p&gt;We called Sears Home Repair and they couldn't schedule someone to come out and fix the washer for 2 weeks.  When he did get here, he determined that the electronics module behind the console was bad, ordered a replacement and scheduled someone to come out and install it (&lt;span style="font-weight:bold;"&gt;another 2 weeks later&lt;/span&gt;). This at a cost of $346.77.&lt;/p&gt;
&lt;p&gt;The part came in a few days and since I didn't want to wait another week to get a working washer (we had already been to the public laundromat once) I tried to install it (something not all that unexpected if you read my blog).  However, the cover over the board was screwed down with 3 screws and had 2 locking tabs.  I was unable to get the locking tabs to release no matter what I did.  I gave up and decided to wait for the repair guy to show up.&lt;/p&gt;
&lt;p&gt;This past Thursday he shows and he had the same problem with the tabs and ended up cutting them off.  After installing the board, the washer was still dead.  He then said that the problem was most likely the main electronics unit (motherboard to the rest of us) and ordered one with "Emergency" delivery and scheduled a return visit the following week.  He also noted that the replacement board was a different part and therefore they probably had fixed something in there. This at an additional cost of just under $300, bringing the total to $625.25.  Needless to say I was &lt;span style="font-weight:bold;"&gt;NOT&lt;/span&gt; happy.&lt;/p&gt;
&lt;p&gt;I poked around on the web and on Sears own site, found several people who had complained about this same exact failure just after the warranty expired.  It seems like this was more of a general problem than a unique failure.&lt;/p&gt;
&lt;p&gt;Armed with all of this information, I called customer relations and after about 40 minutes on the phone I was asked if they could call me back.  I was hesitant because I was afraid of not getting a call and having to start over, but I went along with them.  About an hour later, she called back and said that she had found that the electronics were covered by a 2 year warranty and the repair would cost us nothing (and she arranged for a refund of the initial charge on the first visit).&lt;/p&gt;
&lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_SEiYV06qGYE/RxIlBdQ0-eI/AAAAAAAAAPE/slrLV9I-u78/s1600-h/WasherElectronics.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_SEiYV06qGYE/RxIlBdQ0-eI/AAAAAAAAAPE/slrLV9I-u78/s200/WasherElectronics.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5121196433238981090" /&gt;&lt;/a&gt;The part came in on Friday and since I didn't want to wait another week for a working washer, I decided to install it myself.  This was a bit more complicated than the first board as it had many wires running about, but I took a few pictures so I could verify where all the wires should be and off I went.  After about 15 minutes, the module was in, the washer was all back together and magic, I had a working washing machine.  Of course, I was again proud of myself for doing the repair (though it was much easier than when I replaced the LCD on my camera).&lt;/p&gt;
&lt;p&gt;One thing I did note once I had the washer working again:  when I do a load a bleach load of whites on hot, steam comes out around the lid of the washer.  Some of this steam could leak into the area with the electronics if the seals aren't tight enough.  It was a similar load/settings on the washer when it died.&lt;/p&gt;
&lt;H2&gt;Things to learn from this&lt;/H2&gt;
&lt;ul&gt;
&lt;li&gt;The squeaky wheel definitely gets the oil.  It was only after calling and talking to 3 people at customer relations did I get to someone who magically said "oh, that should be covered by warranty".  I do have to admit that I can't find any such warranty statement with the documents for my washer, but I'm happy to get the part fixed.&lt;/li&gt;
&lt;li&gt;I was amazed about how little trouble-shooting was done on the phone prior to rolling a truck.   Dell is a pretty good example for how to do this right, they will work quite well over the phone to figure out the exact problem to save a truck roll if possible.  A little diagnosis over the phone and they would have known that the problem was with the electronics and could have sent the parts so that the unit would have been fixed the first time (note that Dell will even let you install the parts if you feel comfortable doing so -- which I've done several times for keyboards and such stuff).&lt;/li&gt;
&lt;li&gt;Sears definitely has a problem with the electronics module for this unit.  When something like that happens to a car, they do a recall, or they do a proactive warranty extension to keep their customers happy.  Sears doesn't appear to be doing this and that's problematic given that they risk loosing a customer who is buying their top-of-the-line (probably widest margin) goods.&lt;/li&gt;
&lt;li&gt;The lid-lock should release when power is removed from the machine.  Having it stay locked like that meant that we were unable to remove our clothes from it until the repair guy came and took the machine apart (and the lid was still locked when he was done, but we did get our clothes out).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="font-weight:bold;"&gt;Update (10/21/07)&lt;/span&gt; - apparently things were not as well worked out as they appeared.   The service guy still tried to come out to my house for the installation of the part even after I had twice called to tell them that I had installed the part and they had said something to the effect of "Cool, then no need for us to come out.  I'll cancel the service call".   The service guy said he still had to come out to collect payment.  I told him that customer relations had said that this was a warranty repair as the electronics were warrantied for 2 years.  He went off the check on this and called me back about a half our later saying that that was a parts-only warranty and that since I had installed it myself that voided the warranty and that I would have to pay both for the service call and the parts.  I told them to give it a shot, but that there was no way in hell I was going to pay for this work.  We'll see how this works out.&lt;/p&gt;
&lt;p&gt;What I can't understand is how Sears is showing that they have no interest whatsoever in smoothing things over with a customer who has routinely purchased their top-of-the-line appliances.  Ruining a relatitonship like that over $65 or so just doesn't make sense to me, but that's what they appear to want to do.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/sears" rel="tag"&gt;sears&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/repair" rel="tag"&gt;repair&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/energystar" rel="tag"&gt;EnergyStar&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/appliance" rel="tag"&gt;appliance&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/dell" rel="tag"&gt;Dell&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-5600605686532386850?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/5600605686532386850/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=5600605686532386850' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/5600605686532386850'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/5600605686532386850'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/10/broken-washer.html' title='A broken Washer'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_SEiYV06qGYE/RxIlBdQ0-eI/AAAAAAAAAPE/slrLV9I-u78/s72-c/WasherElectronics.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-203495379907640298</id><published>2007-10-06T12:07:00.000-07:00</published><updated>2007-10-06T12:09:34.380-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><category scheme='http://www.blogger.com/atom/ns#' term='federation'/><title type='text'>The Case for Federation and SSO</title><content type='html'>&lt;p&gt;To date, the vast majority of real-world federation roll-outs have been internal or enterprise type deployments.   Things like an enterprise authenticating its users out to an outsourced provider (such as a Fidelity 401K, or AOL's Radio Service).  Yes there are many exceptions to this general statement (you can see many of them on &lt;a href="http://www.projectliberty.org/liberty/adoption"&gt;Liberty's Adoption Page&lt;/a&gt;), but that is the general view of the industry and I certainly don't knowingly use federation in any cross-provider operations.&lt;/p&gt;
&lt;p&gt;The time has come for federation and Single-Sign-On to be adopted in a more general fashion.  I say this for many reasons and hope that the various vendors and providers out there will not be stubborn and/or resistant about it.  I think this is valuable to parties that will wish to assert identity.  I think this is valuable to the people who will accept identity federations and I think this is valuable to the users themselves.&lt;/p&gt;
&lt;p&gt;When I say it is valuable to the user, I don't mean the often quoted "that way you can reduce the number of passwords you need to remember" -- though I still think that is a reasonable benefit.  The real value for the user is that they will be able to share their data across multiple providers without the need to give their credentials to the other party.&lt;/p&gt;
&lt;p&gt;Examples that already exist today include:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;On &lt;a href="http://www.linkedin.com"&gt;LinkedIn&lt;/a&gt;, if I want them to pull my contact information from my contact book in several mail services (e.g. &lt;a href="http://mail.google.com"&gt;GoogleMail&lt;/a&gt;, &lt;a href="http://www.hotmail.com"&gt;HotMa
il&lt;/a&gt;, etc.) I have to provide LinkedIn with my username and password on the mail service.  LinkedIn logs in as me (either through their web interface and does screen scraping, or directly via an exposed web service) and extracts my contacts.  Since I gave them my login information, I'm hoping that they don't do anything wrong with the data (like expose it), and that they don't mis-use the access to my account (e.g. sending spam in my name).&lt;/li&gt;
&lt;li&gt;On &lt;a href="http://www.etrade.com"&gt;Etrade&lt;/a&gt;, when I want to setup a new bank account for transferring funds from my Etrade account, one of the options provided is for ETrade to be provided with my username and password for online access to my bank account so that they can verify that I have control of the account and that it is in my name.  Like LinkedIn, I'm hoping that they don't do anything wrong with the credentials while they have them (and in the case of ETrade, hoping that they do not store them like they claim they won't do).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I could go on with this list, but you get the idea.   The user is already federating their data together across different providers.  It's just in a very broken way that can lead to cascading security failures as any security failure at one site can lead to security failures at other sites.&lt;/p&gt;
&lt;p&gt;With federation, I wouldn't need to give my credentials to LinkedIn.  My mail provider could also differentiate the access provided (letting LinkedIn see the set of contacts that I chose to share with LinkedIn without being able to send mail in my name or being able to change contacts).  LinkedIn could maintain that federation so that they could periodically check for updates.  A break-in at LinkedIn would mean that someone could perform the same operations that I've already OK'd for LinkedIn -- get the data that LinkedIn already has -- so no additional exposure.&lt;/p&gt;
&lt;p&gt;Why would GMail, HotMail, or even my bank, want to do this? First off, they are already doing it in an insecure way (I can always give my login credentials to the other party) and with the expanded access at their service.  This would be a much better solution from a security and least priviledge point of view.&lt;/p&gt;
&lt;p&gt;Another issue that might be raised with regards to the service providers is why would they want to expose a web service with this data.  In many cases that's a new thing for them to do.  But I think it's worth it becuase today, when they don't expose such an interface, theh other parties just walk though their standard user web interface and do screen scraping of the data -- I'm sure that data via a web page is more costly than exposing it through a programmatic web service.&lt;/p&gt;
&lt;p&gt;Of course, LinkedIn would want to do this as they already do, but within the restricted capabilities of today that open them to some liability as well (should my data be misued at their site).&lt;/p&gt;
&lt;p&gt;While I spoke heavily about LinkedIn in this post, this clearly applies to any and all cases where I want to do things across sites -- this is becomming more and more important in the Web2.0 world more interesting applications join togetether information from various parties.  I can see how &lt;a href="http://www.dopplr.com"&gt;Dopplr&lt;/a&gt; would want to access my LinkedIn account to get my list of friends to pre-populate my traveling buddies rather than me having to establish new connections.  I can also see how Dopplr would want to get access to my &lt;a href="http://www.ual.com"&gt;United Airlines&lt;/a&gt; itineraries so that they could auto-populate my trips.&lt;/p&gt;
&lt;p&gt;The list goes on and on and it's a win-win-win for everyone, users and providers.&lt;/p&gt;
&lt;p&gt;You might then have the decision as to what token format one should use for the federation and what web services structure one should use for the service access.   I, of course, would recommend &lt;a href="http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=security#samlv20"&gt;SAML&lt;/a&gt; and &lt;a href="http://www.projectliberty.org"&gt;Liberty's&lt;/a&gt; &lt;a href="http://www.projectliberty.org/resource_center/specifications/liberty_alliance_id_wsf_2_0_specifications_including_errata_v1_0_updates"&gt;Identity based Web Services Framework (ID-WSF)&lt;/a&gt;, respectively, but that isn't as much the issue as is getting this up and running for the users.&lt;/p&gt;
&lt;p&gt;You might notice that in this case, I haven't been advocating a large Circle of trust with centralized IdPs.  Most of the examples I gave were point to point  federations where, essentially, the relying parties and the IdPs were the same entity.  The advantage with this model is that you have no need for extended business agreements so it's much easier to roll out.  I do think that as more and more people start adopting and using this, it will be a natural evolution to environments where there are separated IdPs and Relying Parties, but we don't need to start there.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags :
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/federation" rel="tag"&gt;federation&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/linked-in" rel="tag"&gt;linked-in&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/etrade" rel="tag"&gt;ETrade&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/ual" rel="tag"&gt;UAL&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/united+airlines" rel="tag"&gt;United Airlines&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/saml" rel="tag"&gt;SAML&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/liberty" rel="tag"&gt;Liberty&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/liberty+alliance" rel="tag"&gt;Liberty Alliance&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/id-wsf" rel="tag"&gt;ID-WSF&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-203495379907640298?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/203495379907640298/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=203495379907640298' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/203495379907640298'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/203495379907640298'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/10/case-for-federation-and-sso.html' title='The Case for Federation and SSO'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-7266681226870861732</id><published>2007-10-03T14:14:00.000-07:00</published><updated>2007-10-03T14:28:46.826-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vista'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><title type='text'>A painful Vista</title><content type='html'>&lt;p&gt;My &lt;a href="http://www.dell.com/content/products/productdetails.aspx/latit_d830?c=us&amp;cs=555&amp;l=en&amp;s=biz"&gt;Dell Latitude D830&lt;/a&gt; came with &lt;a href="http://www.microsoft.com/windows/products/windowsvista/"&gt;Microsoft Vista&lt;/a&gt; which, for the most part, has seemed like a prettied up XP without a lot of added useful functionality nor a substantial increase in stability.  At the time I upgraded, &lt;a href="http://conorcahill.blogspot.com/2007/06/gadget-of-week-12.html"&gt;I wrote&lt;/a&gt; that I was like so close to buying a &lt;a href="http://www.apple.com/macbookpro/"&gt;Macbook Pro&lt;/a&gt;.  I am sorry to say that I regret that decision even more today.&lt;/p&gt;
&lt;p&gt;What got me to that stage?   Well, it's a long painful path and to be honest, I'm not at the stage (yet) that I'm ready to just give in and replace my fairly new laptop.&lt;/p&gt;
&lt;p&gt;The problems all started about 2 months after receiving the laptop.   On July 14th, the day before I left for a trip to Shanghai, my email program (Thunderbird) locked up.  When I restarted it, it still had problems and wouldn't pull mail from nfthe server, so I shutdown and restarted the computer.&lt;/p&gt;
&lt;p&gt;During the reboot, the OS decided a chkdsk of the NTFS filesystem was necessary and it found and fixed many problems.  When I got back to the running OS, all of the files that were actively open at the time I cleanly shutdown the system were gone.  Totally gone.  Not in the found.* directories (the NTFS equivalent of the UNIX lost+found directory).&lt;/p&gt;
&lt;p&gt;Luckily I had the data backed up earlier that day as well as an offline backup on an external drive from a week before that.  Since I was taking off for Shanghai, I copied both backups onto my system so I could pick the files (as I wasn't sure if the backup earlier that day wasn't corrupt as well).&lt;/p&gt;
&lt;p&gt;I was able to get up and running again on my way to Shanghai without a problem and things were working fine.  I assumed it was just some freak accident.&lt;/p&gt;
&lt;p&gt;About a month later (mid-August) the same thing happened.  This time I dug into it further and found that there had been a series of events in my event log (both then and back in July).  It seems the problem starts with an NTFS event (which is flagged as an "Error" rather than a "Critical" event) with the event code of 137.  The message from the event was extremely helpful... NOT!:&lt;/p&gt;
&lt;blockquote&gt;
The default transaction resource manager on volume D: encountered a non-retryable error and could not start.  The data contains the error code.
&lt;/blockquote&gt;
&lt;p&gt;Microsoft's online help for the event was no help:&lt;/p&gt;
&lt;blockquote&gt;
Results for: Microsoft product: Windows Operating System; Version: 6.0.6000.16386; ID: 137; Event Source: Ntfs;&lt;br&gt;
&lt;br&gt;
No results were found for your query. Please see Search Help for suggestions.
&lt;/blockquote&gt;
&lt;p&gt;Googling on "Default transaction resouce manager" found little results as well, but there was at least a possible link to another's problem.  Apparently some had discovered that &lt;a href="http://www.acronis.com/"&gt;Acronis&lt;/a&gt; True Image had led to similar problems.  I had installed Acronis Disk Director to reorganize my disk partitions, so I uninstalled it to see if that would alleviate the problem.  And, of course, I did the same restoration process to get back all the lost files.&lt;/p&gt;
&lt;p&gt;I did find &lt;a href="http://www.codeproject.com/vista/VistaKTM.asp"&gt;one interesting discussion&lt;/a&gt; on resource managers in Vista, but that didn't provide any information that would help solve my problem.&lt;/p&gt;
&lt;p&gt;Given that the error message just showed up in the event log (and in both cases, was close to 24 hours before the system crashed -- allowing me to open/use many files that disappeared), I added an event alert task which would send a message to the console should this error occur again.  This is really important so that you can catch the problem as it starts, minimizing the potential damages.&lt;/p&gt;
&lt;p&gt;Things went well for about another month and then it happened again in Mid-September, so it clearly wasn't the Acronis product.  I was busy getting some heavy work done, so i didn't have the time to explore the problem other than to restore the files again.&lt;/p&gt;
&lt;p&gt;About a week later, it happened again.  This time it started going into an almost daily problem, sometimes happening again just after I had fixed things and ran chkdsk to fix the problems.&lt;/p&gt;
&lt;p&gt;The pain had passed the threshold and I decided to do a total reinstall of the system.  Prior to doing that, I did a complete backup.  I copied my data files to a portable drive.  I ran the extensive system diagnostics including the full suite of hard disk diagnostics to see if there was some form of a hardware problem.  All diagnostics passed.&lt;/p&gt;
&lt;p&gt;So, this past weekend, I reinstalled vista.  I've been installing each of my former tools (there are many of them) and so far, so good.  Given that this didn't turn up until I had had the computer for about 60 days the first time, I guess I won't know for sure if I've gotten around the problem till early Dec.&lt;/p&gt;
&lt;p&gt;And, of course, I went and added the event task to generate a message should this occur again.&lt;/p&gt;
&lt;p&gt;Wish me luck!&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/vista" rel="tag"&gt;vista&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/microsoft" rel="tag"&gt;Microsoft&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/ntfs" rel="tag"&gt;NTFS&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/dell" rel="tag"&gt;Dell&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/latitude" rel="tag"&gt;Latitude&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/accronis" rel="tag"&gt;Acronis&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/macbook+pro" rel="tag"&gt;Mackbook Pro&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-7266681226870861732?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/7266681226870861732/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=7266681226870861732' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/7266681226870861732'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/7266681226870861732'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/10/painful-vista.html' title='A painful Vista'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-5698950466446918135</id><published>2007-09-10T11:55:00.000-07:00</published><updated>2007-09-10T12:24:12.539-07:00</updated><title type='text'>Mistaken Identity</title><content type='html'>&lt;p&gt;In a case of mistaken identity (of a place rather than a person) my &lt;a href="http://www.ual.com"&gt;United&lt;/a&gt; flight to Portland last night was delayed and had to re-connect the jetway and switch passengers.
&lt;p&gt;As we were getting ready to push back, one of the passengers got up and talked to the flight attendant in the front of the plane. They talked, she talked to the pilot, they talked some more. All I could here was "I'm really sorry" coming from the passenger. &lt;/p&gt;
&lt;p&gt;The jetway re-connected and the guy got off the plane (while another passenger, who had been denied boarding because the plane was oversold, got on -- lucky him).&lt;p&gt;
&lt;p&gt;Apparently, the departing passenger had booked the tickets, checked in, and boarded the plan without realizing that he hat ticketed himself to go to Portland, OR, rather than Portland ME.  I would have thought that the 5 hour flight time would have given him a hint, but perhaps the fact that the 3 hour time difference made the apparent time difference (if you didn't pay attention to timezones) appear to be just 2 hours.&lt;/p&gt;
&lt;p&gt;Anyway, luckily we hadn't gone far and he didn't have any checked baggage (nor, from what I could see, much carry-on luggage -- just a small laptop case).  So after the quick switch we were on our way.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/travel" rel="tag"&gt;travel&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/ual" rel="tag"&gt;ual&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-5698950466446918135?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/5698950466446918135/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=5698950466446918135' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/5698950466446918135'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/5698950466446918135'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/09/mistaken-identity.html' title='Mistaken Identity'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-7072686547541635194</id><published>2007-09-05T07:47:00.000-07:00</published><updated>2007-09-05T10:00:58.293-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><category scheme='http://www.blogger.com/atom/ns#' term='liberty'/><title type='text'>Advanced Client Take 2</title><content type='html'>&lt;p&gt;The second draft of the &lt;a href="http://www.projectliberty.org/resource_center/specifications/liberty_alliance_id_wsf_advanced_client_1_0_specifications_draft_release_2"&gt;Liberty Advanced Client Technologies&lt;/a&gt; set of specifications has been published on the Liberty Alliance web site.&lt;/p&gt;
&lt;p&gt;For those who aren't aware, the Advanced Client Technologies work is the 3rd generation of client technologies coming out of Liberty.  The first generation was work that enabled a Liberty-aware client and/or proxy to participate in the SSO transactions (similar to what Cardspace does today).  The second generation enabled active clients to act as WSC's in identity transactions (such as a radio or mail client authenticating with an IdP, discovering and accessing a service provider).&lt;/p&gt;
&lt;p&gt;This third generation enables clients acting as an extension of network providers such as an IdP, and addresses the issues related to hosting full-fledged service providers (such as my own IdP, or my own Contact Book Service) on my personal client.
&lt;p&gt;So, this is your chance to nail me to the wall and point out how many stupid things I've done in there (though I'm not the only contributor, I'm sure that if something stupid is in there it is my doing).  Please take a look-see and let us know of any interesting things you find in there (even pointing out the many, I'm sure, English mistakes would be helpful).&lt;/p&gt;
&lt;p&gt;Go for it!&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/liberty" rel="tag"&gt;Liberty&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/liberty+alliance" rel="tag"&gt;Liberty Alliance&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/advanced+client" rel="tag"&gt;Advanced Client&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-7072686547541635194?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/7072686547541635194/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=7072686547541635194' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/7072686547541635194'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/7072686547541635194'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/09/advanced-client-take-2.html' title='Advanced Client Take 2'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-5000904730720814154</id><published>2007-09-04T08:07:00.000-07:00</published><updated>2007-09-04T08:39:30.170-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='portals'/><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><category scheme='http://www.blogger.com/atom/ns#' term='federation'/><title type='text'>Portals and IdP Discovery</title><content type='html'>&lt;p&gt;I recently received a comment on my &lt;a href="http://conorcahill.blogspot.com/2007/06/saml-bashing.html"&gt;SAML Bashing&lt;/a&gt; blog entry.  "Jeremy" (not sure which Jeremy as he was otherwise anonymous in his comment -- I wonder if it's really &lt;a href="http://duckdown.blogspot.com/"&gt;James&lt;/a&gt; in disguise -- this seems the kind of comment James would leave, but James is usually quite blatant about it, not hiding behind an identity pseudonym) asked:&lt;/p&gt;
&lt;blockquote&gt;
Kim stated "The question of how the relying party knows which identity provider URL to use is open ended. In a portal scenario, the address might be hard wired, pointing to the portal’s identity provider. ". What are your thoughts on that?
&lt;/blockquote&gt;
&lt;p&gt;In the early days of Liberty ID-FF, we paid a good amount of attention to what solutions would fit into the various portal solutions.  Must of this has to do with the configuration and structure of the portal.  We saw different portals using different solutions including:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Push SSO&lt;/b&gt;&lt;br&gt;&lt;br&gt;
&lt;p&gt;In "push SSO" the portal, when creating links to the various components that make up the portal, generate redirection links that send the user directly to the IdP with some additional information causing the IdP to initiate an SSO to the third party.&lt;/p&gt;
&lt;p&gt;This is a common solution used in enterprise portals when the user selects a link provided by an outsourced third party (such as &lt;a href="http://www.fidelity.com"&gt;Fidelity&lt;/a&gt; providing 401K or stock purchase account management for employees).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Well-known IdP&lt;/b&gt;&lt;br&gt;&lt;br&gt;
&lt;p&gt;This is the solution mentioned in your quote of Kim.  The members of the portal know which entity provides IdP services for the portal and can send the user to the IdP to get them authenticated.  This is how most portals work today (e.g. &lt;a href="http://www.yahoo.com"&gt;Yahoo&lt;/a&gt;'s IdP is known as the IdP for all Yahoo services at the Yahoo portal, so when I go to Yahoo Games, I get authenticated by the Yahoo IdP).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Affiliations&lt;/b&gt;&lt;br&gt;&lt;br&gt;
&lt;p&gt;Affiliations are a technical structure used to represent provider membership in a group (such as a portal, but can also be other business groups).  When the user "federates" to an affiliation, the members of the affiliation are able to treat the user a a common user providing synchronized services and precluding a multitude of consents and idp interactions.&lt;/p&gt;
&lt;p&gt;The concept of Affiliations was introduced in the ID-FF specifications and was incorporated into SAML 2.0 during the convergence of SAML 1, ID-FF and Shibboleth.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/idp+discovery" rel="tag"&gt;IdP Discovery&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/liberty" rel="tag"&gt;Liberty&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/liberty+alliance" rel="tag"&gt;Liberty Alliance&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/affiliations" rel="tag"&gt;affiliations&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/SAML" rel="tag"&gt;SAML&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/yahoo" rel="tag"&gt;Yahoo&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/fidelity" rel="tag"&gt;Fidelity&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-5000904730720814154?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/5000904730720814154/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=5000904730720814154' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/5000904730720814154'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/5000904730720814154'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/09/portals-and-idp-discovery.html' title='Portals and IdP Discovery'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-1430358858150883338</id><published>2007-08-24T06:16:00.000-07:00</published><updated>2007-08-24T06:40:19.037-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><category scheme='http://www.blogger.com/atom/ns#' term='liberty'/><title type='text'>Relatinships and authorization</title><content type='html'>&lt;p&gt;&lt;a href="http://duckdown.blogspot.com/2007/08/links-for-2007-08-24.html"&gt;James McGovern writes&lt;/a&gt; about how relationships must include authorization:&lt;/p&gt;
&lt;blockquote&gt;
Anyway, the notion of relationship is something that belongs to the identity provider and entities such as the Liberty Alliance are defining standards around it. Check out their notion of the people service. The key though is that relationships sometimes require authorization. For example, just because my son can order an insurance card from Amica doesn't mean he is also allowed to cancel the policy for the entire family. Relationship needs authorization especially in domains having to do with medical interactions.
&lt;/blockquote&gt;
&lt;p&gt;While I like his good words about the &lt;a href="http://www.projectliberty.org"&gt;Liberty Alliance&lt;/a&gt;, I take exception with some of his conclusions.&lt;/p&gt;
&lt;p&gt;First off, I don't think that relationships should or must belong to the Identity Provider.  This is especially important in a world where my relationships cross the boundaries to many different Identity Providers.  Within &lt;a href="http://www.projectliberty.org/liberty/resource_center/faq/people_service__1"&gt;Liberty's People Service&lt;/a&gt;, we took great pains to ensure that the protocols support both a) the People Service be able to be provided by a party other than an IdP (just as &lt;a href="http://www.linkedin.com/"&gt;LinkedIn&lt;/a&gt; provides this type of service to their customers) and b) the relationships contained within a user's People Service must be able to cross identity domains while still protecting the privacy of the users.  The latter requirement lead to some rather complex protocol sequence requirements when establishing a connection.&lt;/p&gt;
&lt;p&gt;Secondly, I look at authorization as being associated with the object being accessed (where the input parameters may include individuals and/or group memberships) and not with the relationship itself.   So in the example provided by James, James would introduce his son to Amica (using the People Service) and then set the associated rights at Amica, not within the People Service.  The primary driver for this is that only Amica understands the objects available to Jim and the associated access permissions that may be possible for those objects.&lt;/p&gt;
&lt;p&gt;The one place where I see the People Service (and/or any other relationship tracking service) getting involved in authorization is where the user controls what another may do with his relationship (e.g. I can allow &lt;a href="http://connectid.blogspot.com"&gt;Paul&lt;/a&gt; to see my relationships (and the fact that I long ago had a coolness link to the ever-cool &lt;a href="http://www.facebook.com/profile.php?id=519796414"&gt;Joni&lt;/a&gt;)).&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/authorization" rel="tag"&gt;authorization&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/liberty" rel="tag"&gt;Liberty&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/liberty+alliance" rel="tag"&gt;Liberty Alliance&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/linkedin" rel="tag"&gt;Linkedin&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/people+service" rel="tag"&gt;People Service&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/relationships" rel="tag"&gt;Relationships&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-1430358858150883338?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/1430358858150883338/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=1430358858150883338' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/1430358858150883338'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/1430358858150883338'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/08/relatinships-and-authorization.html' title='Relatinships and authorization'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-7424881804187322527</id><published>2007-08-03T17:28:00.000-07:00</published><updated>2007-08-03T17:43:08.916-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><title type='text'>Sniffing Cookies</title><content type='html'>&lt;p&gt;In &lt;a href="http://www.idcorner.org/?p=158"&gt;Tools to sniff and clone cookies&lt;/a&gt; Stephan Brands writes about a scene at a recent Black Hat Security conference where a presenter was able to steal live sessions by sniffing cookies on open internet connections and concludes:&lt;/p&gt;
&lt;blockquote&gt;
The message for those working on digital identity solutions, in particular “lightweight” identity solutions and plain-vanilla browser identity federation a la ID-FF, should be clear: unless asymmetric cryptographic protection is made an integral part of a solution, users are highly vulnerable to theft of IdP login credentials as well as of identity claims that are issued to them.
&lt;/blockquote&gt;
&lt;p&gt;First off, to be very clear, there was absolutely *NO* stealing of login credentials.  What was actually stolen in that particular case was a session cookie that would enable the hacker to use an existing session for the length of the session.  The stolen cookie could not be used to establish new login sessions (as login credentials would allow).&lt;/p&gt;
&lt;p&gt;Secondly, in a Liberty ID-FF and/or SAML  scenario the authentication protocols are required to take place within an SSL session and we strongly encourage that SSL be used to protect the authenticated session afterwards.&lt;/p&gt;
&lt;p&gt;The real example that was shown is that services that do not use SSL to protect communications from the browser to the server are liable to be monitored, recorded, and even hijacked -- regardless of how well the user was authenticated.&lt;/p&gt;
&lt;p&gt;Moral of the story:  Use SSL to protect communications of sensitive information.&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/cookie" rel="tag"&gt;cookie&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/liberty" rel="tag"&gt;Liberty&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/id-ff" rel="tag"&gt;ID-FF&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/saml" rel="tag"&gt;SAML&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/ssl" rel="tag"&gt;SSL&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-7424881804187322527?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/7424881804187322527/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=7424881804187322527' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/7424881804187322527'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/7424881804187322527'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/08/sniffing-cookies.html' title='Sniffing Cookies'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-6525208059492288322</id><published>2007-07-23T00:35:00.000-07:00</published><updated>2008-11-18T21:55:21.325-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='travel'/><title type='text'>United announces new Business Class Seats</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_SEiYV06qGYE/RqRdqoTkajI/AAAAAAAAAN8/D5g-Hi_S__I/s1600-h/28964-hi-bed_mode.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_SEiYV06qGYE/RqRdqoTkajI/AAAAAAAAAN8/D5g-Hi_S__I/s200/28964-hi-bed_mode.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5090296465790888498" /&gt;&lt;/a&gt;Today, &lt;a href="http://www.ual.com"&gt;United Airlines&lt;/a&gt; &lt;a href="http://www.prnewswire.com/cgi-bin/stories.pl?ACCT=104&amp;STORY=/www/story/07-23-2007/0004630069&amp;EDATE="&gt;announced&lt;/a&gt; their new lay-flat business class seating that will start rolling out into the fleet later this year with a completion of the roll out in 2009.&lt;/p&gt;
&lt;p&gt;The new business class seat is a substantial upgrade over the current seats including:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Lay-flat 6'4" bed&lt;/li&gt;
&lt;li&gt;15.4 inch LCD display&lt;/li&gt;
&lt;li&gt;110 volt outlet -- no more need for empower adapter!!!!&lt;/li&gt;
&lt;li&gt;Apple iPod dock&lt;/li&gt;
&lt;li&gt;USB power supply to power/recharge devices&lt;/li&gt;
&lt;li&gt;etc., etc.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;You can take a look at the following for more information:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.prnewswire.com/cgi-bin/stories.pl?ACCT=104&amp;STORY=/www/story/07-23-2007/0004630069&amp;EDATE="&gt;the press release&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://suitedreams.united.com/"&gt;A flash demo of the seat&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;All I can say is "bring it on!!!"  I'm ready for it today.&lt;/p&gt;
&lt;p&gt;UPDATE: 7/24 - The down side in all this is that there are substantially less business class seats in each of the aircraft:  747 - 53 (down from 72), 767 - 26 (down from 32), and 777 - 40 (down from 45/49).  So while the seats are much better, there are less of them making upgrades much more competitive.   &lt;a href="http://en.wikipedia.org/wiki/TANSTAAFL"&gt;TANNSTAAFL&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/united+airlines" rel="tag"&gt;United Airlines&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/ual" rel="tag"&gt;UAL&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/business+class" rel="tag"&gt;Business Class&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/travel" rel="tag"&gt;travel&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/ipod" rel="tag"&gt;iPod&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/empower" rel="tag"&gt;EMPower&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-6525208059492288322?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/6525208059492288322/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=6525208059492288322' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/6525208059492288322'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/6525208059492288322'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/07/united-announces-new-business-class.html' title='United announces new Business Class Seats'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_SEiYV06qGYE/RqRdqoTkajI/AAAAAAAAAN8/D5g-Hi_S__I/s72-c/28964-hi-bed_mode.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-137615244308496505</id><published>2007-07-22T15:12:00.000-07:00</published><updated>2007-07-22T15:28:03.058-07:00</updated><title type='text'>Shanghai Maglev Train</title><content type='html'>&lt;p&gt;When we arrived in Shanghai, being the techno-dweebs that we are, we just had to ride the &lt;a href="http://en.wikipedia.org/wiki/Shanghai_Maglev_Train"&gt;MagLev train&lt;/a&gt; from &lt;a href="http://www.shairport.com"&gt;Shanghai Pudong Airport&lt;/a&gt; to the Shanghai Metro's Longyan Road station.&lt;/p&gt;
&lt;p&gt;The train ride is quite short (less than 8 minutes) but well worth the 50 yuan (about $6) just for the experience of riding at 431 KPH at ground level.&lt;/p&gt;
&lt;p&gt;I took the video below (about 1 minute long) to show the speed that you see as you're riding along at that speed.  This video is not retouched or sped up, that's the normal speed.&lt;/p&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;
&lt;object width="425" height="350"&gt; &lt;param name="movie" value="http://www.youtube.com/v/bvQUhNrlMpI"&gt; &lt;/param&gt; &lt;embed src="http://www.youtube.com/v/bvQUhNrlMpI" type="application/x-shockwave-flash" width="425" height="350"&gt; &lt;/embed&gt; &lt;/object&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/shanghai" rel="tag"&gt;Shanghai&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/maglev" rel="tag"&gt;MagLev&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/magnetic+levitation" rel="tag"&gt;Manetic Levitiation&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/train" rel="tag"&gt;train&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/pvg" rel="tag"&gt;PVG&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-137615244308496505?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/137615244308496505/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=137615244308496505' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/137615244308496505'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/137615244308496505'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/07/shanghai-maglev-train.html' title='Shanghai Maglev Train'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-4998652760448809200</id><published>2007-07-21T17:20:00.000-07:00</published><updated>2007-07-21T18:34:50.871-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='travel'/><title type='text'>8 hours in SFO.... and then some...</title><content type='html'>&lt;p&gt;On my way to Shanghai this week, I had a layover in SFO that was originally supposed to be around 4 hours. Normally I would fly through Chicago on my way to Shanghai, but my boss and a co-worker were traveling as well and they wanted me to meet up with them in San Francisco.  4 hours is a bit longer than the typical layover for me and part of it was my fault -- I had booked an early morning flight from Dulles because it was internationally configured and so the upgrade to business class was so much better.&lt;/p&gt;
&lt;p&gt;When I got to SFO I received a text message from &lt;a href="http://www.ual.com"&gt;United&lt;/a&gt; that the flight to Shanghai was delayed 1/2 hour (to 2:20 rather than 1:50) -- no big deal.&lt;/p&gt;
&lt;p&gt;However, that wasn't the end.  Around 2:00, they told us that the delay was now changed to 6:40PM (another 4 hours) and they provided us with a meal voucher.&lt;/p&gt;
&lt;p&gt;Later (around 5:30PM), they delayed the flight to the next day at 9:00 AM.  This wasn't a cancellation, but a delay -- and given how full flights are nowadays, I'm glad they did the delay or it might have taken us days to get to Shanghai.  They gave us dinner and breakfast meal vouchers as well as putting us up at the local Hyatt.&lt;/p&gt;
&lt;p&gt;So, almost 24 hours after arriving in SFO, we took off for Shanghai and the rest of the flight was uneventful.  Luckily, I was upgraded into business class the entire way.&lt;/p&gt;
&lt;p&gt;Of course, the Chicago to Shanghai flight that I normally would have flown went off without a hitch and I would have arrived in Shanghai almost 24 hours earlier.  For some reason, I find it necessary to remind my boss of that every few minutes :-).&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/travel" rel="tag"&gt;travel&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/united+airlines" rel="tag"&gt;United Airlines&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/ual" rel="tag"&gt;ual&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/dulles" rel="tag"&gt;Dulles&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/iad" rel="tag"&gt;iad&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/sfo" rel="tag"&gt;sfo&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/hyatt" rel="tag"&gt;hyatt&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/ord" rel="tag"&gt;ord&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/shanghai" rel="tag"&gt;Shanghai&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-4998652760448809200?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/4998652760448809200/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=4998652760448809200' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/4998652760448809200'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/4998652760448809200'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/07/8-hours-in-sfo-and-then-some.html' title='8 hours in SFO.... and then some...'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-1762821462025716547</id><published>2007-07-11T07:35:00.000-07:00</published><updated>2007-07-11T07:50:55.363-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><category scheme='http://www.blogger.com/atom/ns#' term='social networks'/><category scheme='http://www.blogger.com/atom/ns#' term='liberty'/><title type='text'>Maintaining Social Networks</title><content type='html'>&lt;p&gt;A recent &lt;a href="http://blog.teknision.com/?p=23"&gt;article on the Teknision blog&lt;/a&gt; complains about the pain it is to build and maintain social networks again and again on one site or another:&lt;/p&gt;
&lt;blockquote&gt;
There is something very wrong with the web……&lt;br&gt;
&lt;br&gt;
I wonder how many times I have had to find and add Gabor Vida, Steve Mackenzie, Ryan Stewart, Mike Chambers, Phillip Kerman, Mike Downey, Mike Potter, Stacey Mulcahy, Ryan Murphy, Mykel Ruvola( and on and on and on and on) in the last few months. I have spent a huge amount of my time across social networks re-finding the same people over and over and over again.
&lt;/blockquote&gt;
&lt;p&gt;I too have felt that pain and I am feeling the pain yet again as several of my compatriots have joined &lt;a href="http://www.dopplr.coom"&gt;dopplr&lt;/a&gt; to keep track of where we all are and find interesting crossings of paths as we gallivant around the world.&lt;/p&gt;
&lt;p&gt;Interestingly, this is what the &lt;a href="http://www.projectliberty.org"&gt;Liberty Alliance&lt;/a&gt;'s &lt;a href="http://www.projectliberty.org/liberty/content/download/890/6246/file/liberty-idwsf-people-service-v1.0.pdf"&gt;People Service&lt;/a&gt; was designed to solve, including the connection to people in different identity circles (e.g. they didn't all have accounts within the same identity domain).  You can follow along on a webcast on the subject:  &lt;a href="http://www.projectliberty.org/index.php/liberty/content/download/773/5556/file/PS%20webcast%20recording%20011106.mp3"&gt;audio is here&lt;/a&gt;,  &lt;a href="http://www.projectliberty.org/index.php/liberty/content/download/756/5470/file/liberty-webinar-peopleservice-Jan11.pdf"&gt;presentation deck used is here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Take a look, there's some interesting stuff there.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/liberty" rel="tag"&gt;liberty&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/liberty+alliance" rel="tag"&gt;Liberty Alliance&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/people+service" rel="tag"&gt;People Service&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/social+networks" rel="tag"&gt;social networks&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/dopplr" rel="tag"&gt;Dopplr&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-1762821462025716547?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/1762821462025716547/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=1762821462025716547' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/1762821462025716547'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/1762821462025716547'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/07/maintaining-social-networks.html' title='Maintaining Social Networks'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-6837192161416308841</id><published>2007-07-11T05:44:00.000-07:00</published><updated>2008-11-18T21:55:21.561-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fun'/><title type='text'>Harry Potter Mania</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_SEiYV06qGYE/RpTfE2yzNWI/AAAAAAAAAN0/LIMxoSiM8hI/s1600-h/HPTicket003.gif"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_SEiYV06qGYE/RpTfE2yzNWI/AAAAAAAAAN0/LIMxoSiM8hI/s200/HPTicket003.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5085935153729189218" /&gt;&lt;/a&gt;Today, my daughters (Lauren and Jessica) were quite grumpy when heading off to their eventing horse camp (even more grumpy than they usually are in the morning).  Their problem stems from a lack of sleep as they were up till quite late last night so that they could see the midnight showing of the new &lt;a href="http://harrypotter.warnerbros.com/"&gt;Harry Potter&lt;/a&gt; movie "&lt;a href="http://www.harrypotterorderofthephoenix.com/"&gt;Harry Potter and the Order of the Phoenix&lt;/a&gt;".
&lt;p&gt;The movie was great (perhaps even more so since I knew I was seeing it about 3 hours before &lt;a href="http://www.xmlgrrl.com/blog"&gt;Eve&lt;/a&gt; :-) -- she's on the west coast, though I wouldn't be surprised if she few to the UK just to be able to watch it last week during its world premier).  &lt;a href="http://www.warnerbros.com"&gt;Warner Brothers&lt;/a&gt; have done another good job transferring the magic of the book to the screen.&lt;/p&gt;
&lt;p&gt;The movie was true to the book, fun and quite enjoyable.  It felt a bit long in a few places, but the books are getting quite long as well.  Of course, I haven't read the books recently so now I'm all confused about what happens in book 4 vs 5 vs 6.  I guess I'll have to go back and read them again before I start in on book 7.  We had to order two copies of the last few books in the series (including 7) in our house to ensure a reasonable wait time for each of the readers -- we will all read it.
&lt;p&gt;What amazed me about this movie is that we got there around 10:15 or so (almost 2 hours before the star -- much earlier than we had gotten to &lt;a href="http://www.starwars.com/episode-iii/"&gt;Star Wars Episode III&lt;/a&gt;'s midnight showing and got great seats for that movie) only to find that the theatre was already 2/3 full.  The entire middle was pretty much full and we were relegated to one of the sides.  Pity the people who only showed up about an hour before start time as they had trouble finding 2 seats together anywhere in the theatre.&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/entertainment" rel="tag"&gt;entertainment&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/hogwarts" rel="tag"&gt;Hogwarts&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/harry+potter" rel="tag"&gt;Harry Potter&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/warner+brothers" rel="tag"&gt;Warner Brothers&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/star+wars" rel="tag"&gt;Star Wars&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-6837192161416308841?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/6837192161416308841/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=6837192161416308841' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/6837192161416308841'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/6837192161416308841'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/07/harry-potter-mania.html' title='Harry Potter Mania'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_SEiYV06qGYE/RpTfE2yzNWI/AAAAAAAAAN0/LIMxoSiM8hI/s72-c/HPTicket003.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-3800715252238199571</id><published>2007-07-09T05:30:00.000-07:00</published><updated>2007-07-09T05:58:18.751-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vista'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>VMWare Tips &amp; Tricks</title><content type='html'>&lt;p&gt;I've been using &lt;a href="http://www.vmware.com/products/desktop/workstation.html"&gt;VMWare Workstation&lt;/a&gt; for several years now (after dumping &lt;a href="http://www.microsoft.com/windows/products/winfamily/virtualpc/default.mspx"&gt;VirtualPC&lt;/a&gt; when &lt;a href="http://www.microsoft.com"&gt;Microsoft&lt;/a&gt; bought them and promptly dropped support for Linux guest OS integration).  As part of my recent upgrade to Windows Vista, I upgraded to VMWare Workstation 6.0 and had to re-enable all of my tricks to get everything working the way I like within the OS (and I had to find them all again as I hadn't written them down as I discovered them previously).&lt;/p&gt;
&lt;p&gt;So, this time, I've decided to document them here so that others could benefit from them (and so I had them lying about for the next time I have to do the same).  They are listed here in order of discovery (as opposed to any semblance of an order of importance).  I will continue to come back to this and add new things from time to time as I run across them.  If there's something of interest you thing should be added, let me know.&lt;/p&gt;
&lt;p&gt;My configuration is that I have a Windows Vista host OS and two guest VMs, one running Windows XP Pro (as that is necessary for correct operation of many of our corporate tools), and one running Fedora Linux (where I do some open source development).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style="font-weight:bold;"&gt;&lt;span style="font-style:italic;"&gt;ctrl-alt-del&lt;/span&gt; shuts down guest OS&lt;/span&gt;
&lt;p&gt;I am using a windows host and I always lock the screen when I leave my desk/computer.  Sometimes I happen to be in my linux VM at the time and this causes the linux system to log me out and/or shutdown, neither of which I appreciate, especially if I have lots of work in progress.  I could figure out how to stop this within Linux, but I really just want VMWare to ignore the &lt;span style="font-style:italic;"&gt;ctrl-alt-del&lt;/span&gt; and let me send one explicitly there if I need to.&lt;/p&gt;
&lt;p&gt;I achieved this by adding the line:
&lt;blockquote&gt;&lt;pre&gt;mks.ctlAltDel.ignore = "TRUE"&lt;/pre&gt;&lt;/blockquote&gt;
to the "C:\Users\All Users\VMware\VMware Workstation\config.ini" file.  This tells the VMWare to ignore the &lt;span style="font-style:italic;"&gt;ctrl-alt-del&lt;/span&gt; and so the client's don't see it.  If I want to send a &lt;span style="font-style:italic;"&gt;ctrl-alt-del&lt;/span&gt; to the client, I use the VMWare defined &lt;span style="font-style:italic;"&gt;ctrl-alt-ins&lt;/span&gt; combo.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;span style="font-weight:bold;"&gt;Shared Folders are slow in Windows XP Guest&lt;/span&gt;
&lt;p&gt;My Windows XP guest was extremely slow in accessing shared folders (to the point that I didn't want to use them).  At first I just thought this was normal, but then after a quick google search, I found &lt;a href="http://jmatrix.net/dao/case/case.jsp?case=7F000001-1CE669E-10B80A74F9C-4CD"&gt;this&lt;/a&gt; :&lt;/p&gt;
&lt;blockquote&gt;&lt;pre&gt;
1) Create a text file called 'lmhosts' in the folder 
   C:\WINDOWS\system32\drivers\etc - if it doesn't already 
   exist. If it does, simply edit it.
2) Add the following line:

        127.0.0.1   ".host"

3) Save the file. 
&lt;/pre&gt;&lt;/blockquote&gt;
&lt;p&gt;This is done in the Guest OS and it worked like a charm, though I didn't consistently have the slowness problem before implementing this and didn't study it long enough to figure out the specific mixture of circumstances to cause the problem.  Implementing this fix got rid of the problem in all situations (so far).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;span style="font-weight:bold;"&gt;Text input cursor icon disappears in Win XP guest&lt;/span&gt;
&lt;p&gt;In my windows XP guest, the standard I-Beam text input mouse cursor icon (the one that is used when the mouse is over a text input field such as a field entry, or an edit box) would not show up.  I would be left without an indication of where my cursor was.  At first, with just editing some forms, this was just an annoyance, but later, when I went to edit a document or an email message, it was downright painful.&lt;/p&gt;
&lt;p&gt;I first tried fixing this by changing the cursor icon.  This worked in some cases, but left the most important (editing docs/emails) still broken.  Some more searching (and this took a bit of work) and I found the &lt;a href="http://www.vmware.com/community/thread.jspa?messageID=352160&amp;#352160"&gt;right article&lt;/a&gt; in VMWare's forum which included:
&lt;blockquote&gt;&lt;pre&gt;In the guest, try dropping the display hardware acceleration down a notch.

Start-&gt;Settings-&gt;Control Panel-&gt;Display
Settings-&gt;Advanced-&gt;Troubleshoot-&gt;Hardware acceleration&lt;/pre&gt;
&lt;/blockquote&gt; 
&lt;p&gt;Note that there's also a "Troubleshoot" button on the Settings Tab.  This isn't the one, you want to use the Advanced button and then go to the Troubleshoot tab.&lt;/p&gt;
&lt;p&gt;For me, dropping it down one notch (to turn off some of the acceleration of the cursor operations) was all that was needed.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;span style="font-weight:bold;"&gt;Printing from a Windows XP Guest&lt;/span&gt;
&lt;p&gt;Printing from my Windows XP host was a problem as I would sometimes be connected to the corporate VPN and sometimes not.  While on the VPN, the printers on the system's local network were not available from the guest as the connection to the physical network was through a NATed VMNet and thus two levels away from the guest.
&lt;p&gt;I worked around this by sharing the printer from my host OS and then using the host-host VMNet to access that "network" printer -- which was a local connection and thus allowed under our VPN configuration.  This works whether or not the VPN is up and running.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;span style="font-weight:bold;"&gt;Conflict between Communicator and VMNet setup&lt;/span&gt;
&lt;p&gt;In my Windows XP guest, I was unable to connect to our company's Microsoft Office Communicator SIP server.  Playing around with this for a while, I was able to determine that the problem was related to my host-only VMNet.  Disabling the VMNet allowed Communicator to connect, enable it and Communicator would again fail to connect.
&lt;p&gt;The problem was that the DHCP server was setting a DNS server in the guest host and the failure of that DNS host was causing the problems (probably timing) for Communicator.  So, I disabled DHCP on that connection and hard-coded an IP address for the host and guest OSs manually and did *not* specify DNS servers for that connection (didn't need them) and voila, it all worked fine.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/vmware" rel="tag"&gt;VMWare&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/vista" rel="tag"&gt;Vista&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/linux" rel="tag"&gt;Linux&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/windows" rel="tag"&gt;Windows&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/vista" rel="tag"&gt;Vista&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/xp" rel="tag"&gt;XP&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/tricks" rel="tag"&gt;tricks&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-3800715252238199571?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/3800715252238199571/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=3800715252238199571' title='9 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3800715252238199571'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3800715252238199571'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/07/vmware-tips-tricks.html' title='VMWare Tips &amp; Tricks'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>9</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-7223570675781544468</id><published>2007-07-08T05:27:00.000-07:00</published><updated>2007-07-08T05:54:02.697-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='trust'/><category scheme='http://www.blogger.com/atom/ns#' term='phishing'/><category scheme='http://www.blogger.com/atom/ns#' term='Safety'/><title type='text'>Derived trust</title><content type='html'>&lt;p&gt;&lt;a href="http://ejnorman.blogspot.com/"&gt;Eric Norman&lt;/a&gt;, commenting on my &lt;a href="http://conorcahill.blogspot.com/2007/07/they-just-dont-get-it.html"&gt;chastization of Chase
&lt;/a&gt; asks me:&lt;/p&gt;
&lt;blockquote&gt;
Do you have any idea about what your mother would have an easy time of? That is, your mother would be able to say, "Yes, this is my bank", or "Wait a minute; something is wrong here" and get the right answer every time.&lt;br&gt;
&lt;br&gt;
Would the green address bar be enough for your mother?
&lt;/blockquote&gt;
&lt;p&gt;I started to answer in a comment myself, then thought that this topic was important enough to require its own discussion topic.&lt;/p&gt;
&lt;p&gt;The answer to the "green address bar" being enough, of course, is: &lt;span style="font-weight:bold;"&gt;No.&lt;/span&gt;  Color, pretty locks, etc. would not be enough for my mother nor, I suspect, many other mothers, fathers, brothers, sisters, etc.&lt;/p&gt;
&lt;p&gt;What my mother needs is a means of deriving the trust of a site from other people that she knows and trusts and to have any site that isn't on that list to either be totally blocked or to set off all kinds of bells and whistles so that it's impossible for her to not realize she's walked out of the nice safe world into the dark inner city of the internet.&lt;/p&gt;
&lt;p&gt;My mother would trust sites that I, or probably most of my siblings, had said were OK (which is essentially how she does things today, but with a phone call and without protection within the platform that she really is looking at the actual site one of us said was OK).&lt;/p&gt;
&lt;p&gt;This would require some client enhancements in browsers and possibly in mailers, some reputation based host that she could point her client towards to say "include Conor's list in my set of sites," a means to get real-time approval,  support for multiple such lists (so she could include my sister's list, or my brother's list) etc. etc.  I think she would set it to block any non-OKed sites.  Others would probably want to be able to add their own sites as well.&lt;/p&gt;
&lt;p&gt;As I think about this, much of it feels like the kind of infrastructure &lt;a href="http://www.aol.com"&gt;AOL&lt;/a&gt; has in place for their &lt;a href="http://daol.aol.com/safetycenter/parentalcontrols"&gt;parental controls&lt;/a&gt; (where the parent can control what their youngster has access to), though this would be the reverse direction and rather than a control, it would be advisory (because my mother could change the settings on her browser and do whatever she wants on her computer).&lt;/p&gt; 

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/trust" rel="tag"&gt;trust&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/safety" rel="tag"&gt;safety&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/phishing" rel="tag"&gt;phishing&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/aol" rel="tag"&gt;AOL&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/parental+controls" rel="tag"&gt;parental controls&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/reputation" rel="tag"&gt;reputation&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-7223570675781544468?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/7223570675781544468/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=7223570675781544468' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/7223570675781544468'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/7223570675781544468'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/07/derived-trust.html' title='Derived trust'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-4126230504106889143</id><published>2007-07-07T18:42:00.000-07:00</published><updated>2007-07-07T18:43:11.849-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><category scheme='http://www.blogger.com/atom/ns#' term='privacy'/><title type='text'>The Vast Machine</title><content type='html'>&lt;p&gt;On my last trip, I picked up a book at one of the airport bookstores.  &lt;a href="http://www.randomhouse.com/features/traveler/"&gt;The Traveler&lt;/a&gt; by &lt;a href="http://en.wikipedia.org/wiki/John_Twelve_Hawks"&gt;John Twelve Hawks&lt;/a&gt;.  It's a good story about the struggle between good and evil and I recommend reading it.&lt;/p&gt;
&lt;p&gt;The reason I bring it up here is because it paints a pretty strong &lt;span style="font-weight:bold;"&gt;fictional&lt;/span&gt; picture of what could be done by the wrong hands in our ever-more-connected world.  They called it "The Vast Machine" and fictionalized how the bad guys were able to tie together information from every kind of source to create a super surveillance system capable of finding anybody who even touches the grid.  Using ATM video feeds to track a victim, using toll boot cameras to track cars, planting false criminal records to get law enforcement to do their work, etc., etc..&lt;/p&gt;
&lt;p&gt;On of the memorable sequences discussing the US's choice to put RFIDs into passports (supported and driven by the bad guys, of course):&lt;/p&gt;
&lt;blockquote&gt;
"Is the information encrypted?" Michael asked
&lt;p&gt;"Of course not.  That would make it difficult to share the technology with other governments".&lt;/p&gt;
&lt;p&gt;"But what if terrorists use the skimmers?"&lt;/p&gt;
&lt;p&gt;"It would certainly make their job easier.  Let's say a tourist was walking through the marketplace in Cairo.  A skimmer could read his passport -- find out if he was an American and if he had visited Israel.  By the time the American reached the end of the street, an assassin could be stpping out of a nearby doorway."&lt;/p&gt;
&lt;p&gt;Michael sat for a moment and studied Nash's bland smile.  "None of this makes sense.  The government says it wants to protect us, but it's doing something that makes us more vulnerable."&lt;/p&gt;
&lt;p&gt;General Nash looked as if his favorite nephew had just made an innocent mistake.  "Yes, it's unfortunate.  But you have to weigh the loss of a few lives against the power given to us by this new technology.  This is the future, Michael.  No one can stop it.  In a few years, it won't just be passports.  Everyone  will carry a Protective Link device that tracks them all the time."&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Scary.  Very scary.  Fictional yes, but not outside the realm of possibilities given current or near future technologies.&lt;/p&gt;
&lt;p&gt;This certainly reinforces the need to study the long term privacy impacts of all this magical work we're doing in the Identity space and especially with the move to contactless transactions.&lt;p&gt;
&lt;p&gt;Anyway, good summer reading for everyone and especially for those in the identity space.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/privacy" rel="tag"&gt;privacy&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/the+traveler" rel="tag"&gt;The traveler&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/rfid" rel="tag"&gt;RFID&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-4126230504106889143?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/4126230504106889143/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=4126230504106889143' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/4126230504106889143'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/4126230504106889143'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/07/vast-machine.html' title='The Vast Machine'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-8442801951904932369</id><published>2007-07-07T08:04:00.000-07:00</published><updated>2008-11-18T21:55:21.801-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='identity theft'/><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><title type='text'>They Just Don't Get It....</title><content type='html'>&lt;p&gt;Received this email the other day from &lt;a href="http://www.chase.com/"&gt;Chase&lt;/a&gt; (the banking folks who are frequent targets of phishing attacks).&lt;/p&gt;
&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_SEiYV06qGYE/RoxNq2yzNVI/AAAAAAAAANs/tq-KXodeCzA/s1600-h/ChaseEmaiWithLinks.gif"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_SEiYV06qGYE/RoxNq2yzNVI/AAAAAAAAANs/tq-KXodeCzA/s320/ChaseEmaiWithLinks.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5083523478052877650" /&gt;&lt;/a&gt;
&lt;p&gt;I'm still amazed that financial institutions continue to send emails to their customers with active hyperlinks and directions to use those links. This encourages the exact behavior that makes their customers susceptible to a phishing attempt.  After checking the links closely (I do like to study phishing attacks) as well as the rest of the content of the message, the only thing that provided any evidence to me that this was actually from Chase was the 4 digit portion of the account number (something buried deep down in the message).&lt;/p&gt;
&lt;p&gt;What's especially interesting in this case is that I have already used their online payment system to make the payment for the current statement, so they are sending me an email to tell me to use a link to do something that I've already done.&lt;/p&gt;
&lt;p&gt;We need to move away from these kinds of emails until there is some way for the average user to authenticate that they came from the real party with which they have a relationship with and not some phishing impostor.  Yes, I can tell verify this because I'm the suspicious type but my mother would have a hard time with it.&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/phishing" rel="tag"&gt;phishing&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/identity+theft" rel="tag"&gt;identity theft&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/chase" rel="tag"&gt;chase&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-8442801951904932369?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/8442801951904932369/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=8442801951904932369' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/8442801951904932369'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/8442801951904932369'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/07/they-just-dont-get-it.html' title='They Just Don&apos;t Get It....'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_SEiYV06qGYE/RoxNq2yzNVI/AAAAAAAAANs/tq-KXodeCzA/s72-c/ChaseEmaiWithLinks.gif' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-1146512399649597950</id><published>2007-07-05T15:58:00.000-07:00</published><updated>2007-07-05T16:28:22.707-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='green'/><title type='text'>Equipment recycling</title><content type='html'>&lt;p&gt;In all my collecting of gadgets and toys, I've built up a collection of unused electronics.  Thank god for &lt;a href="http://www.ebay.com"&gt;eBay&lt;/a&gt; as I'm usually able to get rid of working electronics without too much trouble (in fact I think Ebay has created an entire new model for gadget upgrading and trickle down flow as us gadgeteers sell our gadgets as soon as the next gadget comes out).&lt;/p&gt;
&lt;p&gt;Of course, I also have stuff that just isn't worth selling on eBay -- usually because it is broken or the shipping cost is just too high when compared to the value of the item.   This is especially the case for old computer monitors.&lt;/p&gt;
&lt;p&gt;Well, today, I looked around the house and found 5 monitors ranging in size from 13 inch to 21 inch (the 21 inch &lt;a href="http://www.viewsonic.com"&gt;Viewsonic&lt;/a&gt; was dead, the others work, but were old and unused), a 27 inch Sony television, and a dead &lt;a href="http://www.apc.com"&gt;APC&lt;/a&gt; rack mount UPS (when I called APC about it like a year ago, they said that "it gave its life to protect all the equipment behind it"... I thought that was a lame way of saying "we don't want to pay to fix it, you're on your own").&lt;/p&gt;
&lt;p&gt;A quick search for electronic recycling found &lt;a href="http://www.etechrecycling.com/"&gt;E Tech Recycling&lt;/a&gt; which, interestingly has two offices in the U.S. -- One in Hillsboro, OR (where my work office is) and one in Chantilly, VA (close to where I live).   We loaded the stuff into my wife's car (it was raining and I didn't think it would be wise to put electronics into the back of my pickup truck) and drove off to the local E Tech.&lt;/p&gt;
&lt;p&gt;They helped unload the car, and charged me $65 -- which, I think, was a very good deal for everyone.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/electronics" rel="tag"&gt;electronics&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/recycling" rel="tag"&gt;recycling&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/green" rel="tag"&gt;green&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/ebay" rel="tag"&gt;eBay&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/viewsonic" rel="tag"&gt;Viewsonic&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/apc" rel="tag"&gt;APC&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-1146512399649597950?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/1146512399649597950/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=1146512399649597950' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/1146512399649597950'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/1146512399649597950'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/07/equipment-recycling.html' title='Equipment recycling'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-6499807478355819985</id><published>2007-07-04T18:26:00.000-07:00</published><updated>2007-07-04T18:39:56.464-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='geekdom'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Cygwin on Microsoft Vista</title><content type='html'>&lt;p&gt;I've run into a few problems using &lt;a href="http://www.cygwin.com"&gt;Cygwin&lt;/a&gt; on &lt;a href="http://www.microsoft.com/windows/products/windowsvista/"&gt;Microsoft Vista&lt;/a&gt; on my new laptop:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The installation hung during the post-install step "/etc/postinstall/gnuplot.sh".  &lt;a href="http://www.google.com/search?hl=en&amp;q=cygwin+postinstall+hang+gnuplot&amp;btnG=Google+Search"&gt;Researching this problem on the google&lt;/a&gt; found an &lt;a href="http://www.cygwin.com/ml/cygwin/2007-04/msg00753.html"&gt;article on the cygwin mailing list&lt;/a&gt; which worked around the problem by setting the Windows XP compatibility mode on the installation executable.  I wasn't comfortable with this solution as it might cause things to not work well later on Vista.&lt;/p&gt;
&lt;p&gt;So I poked around a bit, turned on the "Command Line" output for the "Processes" tab in the Windows Task Manager and found that the script was hanging on "/usr/bin/texhash", which rebuilds a directory listing used by Tex.  I was able to run the command successfully on the cygwin command line, but it was still hung in the installation process.  So I used Task Manager to kill the texhash process and the installation continued to a later step "postinstall-ec-fonts-mftraced.sh" where it was trying to run "mktexlsr" - which is the same program.  I again used Task Manager to kill that process and the installation now went on to a succesfull completion.&lt;/p&gt;
&lt;p&gt;Following the install, I went back and ran the texhash program manually, which did require me to change the mode of the files "/var/cache/fonts/ls-R" and "/usr/share/texmf/ls-R" files which had been left read-only when I killed the process.&lt;/p&gt;
&lt;p&gt;Everything seems to be working fine now.&lt;/li&gt;
&lt;li&gt;Scripts moved over from my Windows XP installation of cygwin now fail to run because they are DOS formated (\r\n line termination vs UNIX's \n).   I don't recall setting anything special when I installed cygwin on my old system, but on the new install, it clearly asked if I wanted to use the binary (UNIX) mode vs DOS mode and recommended Binary (which I picked).  Not a big deal... Just ran "tr -d '\015' &lt; file &gt; file.new" for any such scripts to get rid of the \r's&lt;/li&gt;
&lt;li&gt;My rsync backup scripts failed with strange errors and paths.  I poked around a bit and this seems to be caused by the extensive use of &lt;a href="http://windowsconnected.com/blogs/joshs_blog/archive/2006/09/28/Windows-Vista-Junction-Points.aspx"&gt;NTFS's Junction points&lt;/a&gt; within the c:\users\user_name profile directory (including a particularly problematic one where "c:\users\user_name\AppData\Local\Application Data" points back to "c:\users\user_name\AppData\Local" creating an infinite loop, even for Windows Explorer (you can infinitely open "Application Data" again and again going as deep as you want since at every stage you get the contents of "Local" again which has the "Application Data" junction again within it).&lt;/p&gt;
&lt;p&gt;Junction points look like a shortcut in Windows Explorer and behave like a Unix symbolic link to some extent. I couldn't find anything within the cygwin mailing lists, nor in the rsync man page to deal with this problem, so I just manually excluded the problematic entries from the backup set and things worked fine.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/cygwin" rel="tag"&gt;Cygwin&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/vista" rel="tag"&gt;Vista&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-6499807478355819985?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/6499807478355819985/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=6499807478355819985' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/6499807478355819985'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/6499807478355819985'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/07/cygwin-on-microsoft-vista.html' title='Cygwin on Microsoft Vista'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-5717941087252653655</id><published>2007-06-30T12:36:00.001-07:00</published><updated>2008-11-18T21:55:22.426-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vista'/><category scheme='http://www.blogger.com/atom/ns#' term='gadget'/><title type='text'>Gadget of the Week #12</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_SEiYV06qGYE/Roa9hGyzNQI/AAAAAAAAANE/nFGqZaHRtvc/s1600-h/DellLatitudeD830.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_SEiYV06qGYE/Roa9hGyzNQI/AAAAAAAAANE/nFGqZaHRtvc/s320/DellLatitudeD830.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5081957605991200002" /&gt;&lt;/a&gt;My latest gadget is my new &lt;a href="http://www.dell.com/content/products/productdetails.aspx/latit_d830?c=us&amp;l=en&amp;s=bsd&amp;cs=04"&gt;Dell Latitude D830&lt;/a&gt;.   This replaces my older &lt;a href="http://www.dell.com/downloads/global/products/precn/en/spec_precn_m70_en.pdf"&gt;Dell Precision M70&lt;/a&gt; and includes all the available bells and whistles.  2.4GHz &lt;a href="http://www.intel.com/products/processor/core2duo/index.htm"&gt;Intel Core 2 Duo processor&lt;/a&gt;, 160GB 7200RPM drive, 4GB memory, 802-11a, g, and *n*, thumbprint reader, TPM, theoretically long battery power, and, of course, &lt;a href="http://www.microsoft.com/windows/products/windowsvista/"&gt;Windows Vista Ultimate&lt;/a&gt;.  It is also thinner and lighter than my former laptop (and the &lt;a href="http://www.dell.com/downloads/global/products/latit/en/spec_latit_d810_en.pdf"&gt;Dell latitude D810&lt;/a&gt;'s we have here).
&lt;p&gt;The battery life is nowhere near the claimed "up to 9 hours" (which I didn't expect it to be, given how I use the system), but it does last about twice as long as my former laptop with the same relative workload -- about 5 hours now, easily going the entire cross-country flight either direction which I tested last week.  With the old laptop I had to bring along a spare battery and used them both up pretty well on the same trips (or I brought a power adaptor).&lt;/p&gt;
&lt;p&gt;This is a screamer of a system.  About the only thing I can say negative about it is that it only came with the integrated graphics card (they did not offer an option for an enhanced graphics card at the time I ordered -- they do now, but there doesn't seem to be an option to add it to an existing system).&lt;/p&gt;
&lt;p&gt;So far Microsoft Vista has been OK.  There are some things I like (recent places).  There are some things that I miss from Windows XP (hardware profiles being one of them). I'll make a separate report later on Vista as I get more used to it and figure out the tricks.&lt;/p&gt;
&lt;p&gt;One other note of interest:  While the system does have 4GB of memory installed, the fact that I am running a 32 bit operating system (Vista) which can only address a total of 4GB and has memory reserved for hardware i/o mapping (and some shared memory for the graphics card), the net amount of memory I have is around 3.4GB.  Much lower than I thought.  I'm thinking about making the jump to a 64 bit OS next time.&lt;/p&gt;
&lt;p&gt;I did come like this close (picture me with my thumb and index finger almost touching) to jumping on the &lt;a href="http://www.apple.com/macbookpro/"&gt;Macbook Pro&lt;/a&gt; bandwagon this time.  I just couldn't give up the 1900x1200 display and the availability of real docking stations.  Perhaps next time.&lt;/p&gt;
&lt;p&gt;As part of this upgrade, I have done my part for the tech economy, choosing to buy/install upgraded versions of most of my like 5 billion utilities that I use.  I guess Microsoft does cut a wide economic swath within the tech industry.&lt;/p&gt;
&lt;p&gt;This is the first system upgrade in more than 2 years for me and it was worth it.  I've been looking for a while and waited for &lt;a href="http://en.wikipedia.org/wiki/Centrino#Santa_Rosa_platform_.282007.29"&gt;Intel's Santa Rosa&lt;/a&gt; platform to become available.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/gadget" rel="tag"&gt;gadget&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/dell" rel="tag"&gt;Dell&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/latitude" rel="tag"&gt;Latitude&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/d830" rel="tag"&gt;D830&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/microsoft" rel="tag"&gt;Microsoft&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/vista" rel="tag"&gt;vista&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/intel" rel="tag"&gt;intel&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/core+2+duo" rel="tag"&gt;Core 2 Duo&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/macbook+pro" rel="tag"&gt;MacBook Pro&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/santa+rosa" rel="tag"&gt;Santa Rosa&lt;/a&gt;


&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-5717941087252653655?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/5717941087252653655/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=5717941087252653655' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/5717941087252653655'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/5717941087252653655'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/06/gadget-of-week-12.html' title='Gadget of the Week #12'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_SEiYV06qGYE/Roa9hGyzNQI/AAAAAAAAANE/nFGqZaHRtvc/s72-c/DellLatitudeD830.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-2134068215118562214</id><published>2007-06-25T14:00:00.000-07:00</published><updated>2007-06-25T14:06:07.786-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fun'/><title type='text'>You know you're an addict when....</title><content type='html'>&lt;p&gt;Back in February, I &lt;a href="http://conorcahill.blogspot.com/2007/02/wheres-george.html"&gt;wrote about&lt;/a&gt; getting hooked up with &lt;a href="http://www.wheresgeorge.com"&gt;Where's George&lt;/a&gt; after finding a dollar bill in my change with some strange markings on it.&lt;/p&gt;
&lt;p&gt;I quickly went out and got my stamps and started marking some bills.&lt;/p&gt;
&lt;p&gt;Well, 4 months later (today), I am totally hooked on it.  So far I have:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;entered 727 bills worth a total of $5,177 (many of them are $1s).&lt;/li&gt;
&lt;li&gt;gotten 44 hits on my bills, most of them coming in the last month or so (seems you need to build a certain amount of inertia before the hits start rolling in)&lt;/li&gt;
&lt;li&gt;achieved a "George Score" of 637.36, placing me above the 85th percentile of Where's George users!!!!!&lt;/li&gt;
&lt;li&gt;joined &lt;a href="http://www.wheresgeorge.com/friends.php"&gt;Friends of George&lt;/a&gt; where I get to pay extra money for the joy of entering my bills and tracking them :-).&lt;/li&gt;
&lt;li&gt;started paying cash for many transactions that I had been paying with credit cards (so I can mark more bills and cause money to flow).&lt;/li&gt;
&lt;li&gt;learned that it is better to mark small bills ($10s, $5s, and $1s) as they circulate alot more than $20s, $50s, and $100s which frequently just go to the bank awaiting a future withdrawal.&lt;/li&gt;
&lt;li&gt;learned that it is better to get a stamp that needs little to no alignment (rather than the nice circular stamp I bought that goes around the treasury seal and must be aligned somewhat carefully -- taking way too much time when trying to stamp a stack of 100 or 200 $1s).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The real signs of my addiction:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The anticipation that I have when checking emails looking for hits.&lt;/li&gt;
&lt;li&gt;The groans that I hear from my "friends" when I pull out my wad of marked bills trying to exchange them for unmarked bills in their pockets.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In any case, I still find it lots of fun and my friends seem to be mostly amused with my addiction.  If you're interested, go get a stamp and enjoy marking your bills!&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/Wheres+George" rel="tag"&gt;Wheres George&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/money" rel="tag"&gt;money&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-2134068215118562214?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/2134068215118562214/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=2134068215118562214' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/2134068215118562214'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/2134068215118562214'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/06/you-know-youre-addict-when.html' title='You know you&apos;re an addict when....'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-3632778810572719918</id><published>2007-06-24T13:37:00.000-07:00</published><updated>2007-06-24T14:01:56.421-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='saml'/><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><category scheme='http://www.blogger.com/atom/ns#' term='liberty'/><title type='text'>Perhaps not so much Bashing...</title><content type='html'>&lt;p&gt;&lt;a href="http://www.identityblog.com/?p=816"&gt;Kim responds&lt;/a&gt; to my &lt;a href="http://conorcahill.blogspot.com/2007/06/saml-bashing.html"&gt;note about SAML Bashing&lt;/a&gt;:
&lt;blockquote&gt;
...which is, by the way, absolutely NOT my intent.  I’m simply trying to understand how SAML relates to linkability, as I am doing for all the other major identity technologies.  I can’t take up all the points he raises, but encourage the reader to look at his piece… 
&lt;/blockquote&gt;
&lt;p&gt;Perhaps I reacted too negatively, but the analogy of some unknown clerk reaching into my pocket really irked me as that clearly isn't what happens and it appears to be written to instill unreasonable fear in an implementation of a browser-based SSO protocol.&lt;/p&gt;
&lt;blockquote&gt;
I’m not criticizing or discussing the profile for an Enabled Client/Proxy.  I was talking about SAML as we know it - in the mode which has been widely deployed in portals all over the world.
&lt;/blockquote&gt;
&lt;p&gt;I think such analysis should be based upon the capabilities of the protocol and not about what some deployments have chosen to do within their environment (where they clearly felt that browser-based SSO meets their needs (and in many cases is mandated by the deployment scenario). &lt;/p&gt;
&lt;blockquote&gt;
I think Conor is misunderstanding my intentions.  I agree that with a completely trustworthy Identity Provider following best practices for end user privacy, Conor’s b) and c) above would apply.  But we are looking at linkability precisely to judge the threats in the case that parties to identity transactions are NOT completely trustworthy (or are attacked in ways that undermine their trustworthiness.)  So arguing that the identity provider will behave properly has nothing to do with what I am exploring:  risk.  I’ll try to build Conor’s concerns into my ongoing discussion.
&lt;/blockquote&gt;
&lt;p&gt;I'm sure there's some misunderstanding here.  I normally find that I agree with most of what Kim has to say and really respect his opinions.&lt;/p&gt;
&lt;p&gt;As far as the trustworthiness is concerned, there's nothing that is completely trustworthy, not even if I make the decisions myself and hand-code the response messages from the keyboard (I'm sure that I will make mistakes of judgment and or typos).&lt;/p&gt;
&lt;p&gt;I would ad that the same "attacked in ways that undermine their trustworthiness" applies to client implementations that try to enhance privacy protection.  They too are subject to being attacked.  Nothing is totally foolproof and I'm not sure which has more likelihood of successful attack, a service maintained under contractual agreements or open software systems in the hands of end user.&lt;/p&gt;
&lt;p&gt;I certainly have chosen to put my money in a bank rather than store it under my mattress.  Yes, the bank is more likely a target for a robbery, but they are legally obligated to maintain my funds, even if they are robbed.   Similar decisions will be made by many people in the identity space (and yes, some out there will always keep their funds in their mattress).

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/privacy" rel="tag"&gt;privacy&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/saml" rel="tag"&gt;SAML&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/cardspace" rel="tag"&gt;CardSpace&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/liberty" rel="tag"&gt;liberty&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-3632778810572719918?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/3632778810572719918/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=3632778810572719918' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3632778810572719918'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3632778810572719918'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/06/perhaps-not-so-much-bashing.html' title='Perhaps not so much Bashing...'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-7238495451947369508</id><published>2007-06-24T08:23:00.000-07:00</published><updated>2007-06-24T08:25:44.301-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='saml'/><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><category scheme='http://www.blogger.com/atom/ns#' term='liberty'/><title type='text'>SAML Bashing</title><content type='html'>&lt;p&gt;&lt;a href="http://www.identityblog.com"&gt;Kim &lt;/a&gt;&lt;a href="http://www.identityblog.com/?p=815"&gt;writes about SAML's use of redirection protocols.&lt;/a&gt;.  To start with, he forgets to mention a few important facts as part of his discussion:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;SAML defines a &lt;a href="http://docs.oasis-open.org/security/saml/v2.0/saml-profiles-2.0-os.pdf"&gt;profile for an Enabled Client/Proxy (ECP)&lt;/a&gt; which is an evolution of the Liberty Alliance's LECP protocol.  This protocol does *NOT* involve redirection, but instead supports an intelligent client directed by the user driving SSO transactions (a similar model to that adopted by Cardspace).&lt;/li&gt;
&lt;li&gt;The Browser-Profile that Kim is referring to is one written based upon a use case requirement that the profile work out-of-the-box on unmodified browsers.  There is NO other possible solution that will work in this scenario that will protect the users credentials at the IdP.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;That said, there are still several statements in Kim's analysis that I feel obligated to respond to.  These include:
&lt;blockquote&gt;
Note that all of this can occur without the user being aware that anything has happened or having to take any action.  For example, the user might have a cookie that identifies her to her identity provider.  Then if she is sent through steps 2) to 4), she will likely see nothing but a little flicker in her status bar as different addresses flash by.  (This is why I often compare redirection to a world where, when you enter a store to buy something, the sales clerk reaches into your pocket, pulls out your wallet and debits your credit card without you knowing what is going on.  (”Trust us.”)
&lt;/blockquote&gt;
&lt;p&gt;First off, the user only see's nothing if a) they are already authenticated by the IdP, b) they have previously established a federation with the relying party, and c) they have told the IdP that they don't want to be notified when an SSO with this party takes place.  I, for one, want things to work this way for me with providers that I trust (and yes, I do trust some providers).   The inability to do this type of automatic operation is one of the shortcomings in Cardspace's implementation that I think will eventually be fixed.  There is no need to have repeated confirmations of operations that I say may occur without my unnecessary participation.&lt;p&gt;
&lt;p&gt;Secondly, the analogy is way off base, trying to make this seem like I'm bing pick-pocketed by someone I don't know which Kim knows is absolutely not the case.  A more proper analogy would be something along the lines of "I give one of my providers permission to reach into my bank account and withdraw money to pay my bill".  I do this all the with providers I trust, such as my electric company, my telephone company (both wired and wireless) and may other companies. &lt;/p&gt;
&lt;blockquote&gt;
So, returning to the axes for linkability that we set up in Evolving Technology for Better Privacy, we see that from an identity point of view, the identity provider “sees all” - without the requirement for any collusion.  Knowing each other’s identity, the relying party and the identity provider can, in the absence of appropriate policy and suitable auditing, exchange any information they want, either through the redirection channel, or through a “back channel” that dispenses with the user and her browser altogether.
&lt;/blockquote&gt;
&lt;p&gt;The IdP does not "see all".  The IdP only sees that you have visited a particular relying party.  It does not see what you do at the relying party.  Knowing that I visited Amazon, is not the same thing as knowing what I looked at and/or purchased at Amazon.&lt;/p&gt;
&lt;p&gt;Secondly, my choice of an IdP (as with most others) would be made based upon the appropriate policies and auditing capabilities at that IdP (just like I don't choose to use Johnny down the block as my bank, I choose a reputable firm and just as I would require the exact same policies and auditing in any client that I chose to use to act as my identity selector (yes, I have to *trust* Cardspace's or Credentica's implementation of policies just as I have to trust an IdP's).&lt;/p&gt;
&lt;blockquote&gt;
In fact all versions of SAML include an “artifact” binding intended to facilitate this.  The intention of this mechanism is that only a “handle” need be exchanged through the browser redirection channel, with the assumption that the IP and RP can then hook up and use the handle to “collaborate” about the user without her participation.
&lt;/blockquote&gt;
&lt;p&gt;That isn't the intention at all.  The intention, as Kim surely knows, is to pass a message by reference rather than by value.  For the non-programmers in the audience, this means that I have a message that I need to send to the relying party (in this case that message contains an assertion, which can be big and complex and which has additional security requirements if passed through someone else's hands -- yes, the user can count as someone else).  Instead off sending the token to the client to have the client then send it up to the relying party, I can send a small artifact that the relying party then presents to the IdP to get the token.  The protocols explicitly define what the artifact is exchanged for -- it was never intended as, nor can it be used within the protocol definitions, as a general collaboration handle.&lt;/p&gt;
&lt;p&gt;In many enterprise implementations, the artifact is used to allow the IdP to issue assertions to the Relying Party that don't need to be signed by the IdP.  Clearly that isn't something I could do if the assertion was sent to the client (otherwise we'd be talking about how I took the token and edited it say I was Bill Gates when I sent it to his bank).&lt;/p&gt;
&lt;blockquote&gt;
In considering the use cases for which SAML was designed, it is important to remember that redirection was not originally designed to put the “user at the center”, but rather was “intended for cases in which the SAML requester and responder need to communicate using an HTTP user agent… for example, if the communicating parties do not share a direct path of communication.”  In other words, an IP/RP collaboration use case.
&lt;/blockquote&gt;
&lt;p&gt;All SSO use cases (where one party authenticates a user and asserts an identity for that user at a relying party), redirection or not, would then be, by Kim's definition, an IdP/RP collaboration since the RP (Relying Party) is relying on the identity presented by the IdP.  This has nothing to do with redirection or user involvement, or SAML in particular.&lt;/p&gt;
&lt;blockquote&gt;
As Paul Masden reminded us in a recent comment, SAML 2.0 introduced a new element called RelayState that provides another means for synchronizing or exchanging information between the identity provider and the relying party; again, this demonstrates the great amount of trust a user must place in a SAML identity provider.
&lt;/blockquote&gt;
&lt;p&gt;No.  RelayState is designed for the RP to send information to itself, not the IdP, so that it can remember what the user was trying to access when the user is returned to the RP following a successful SSO operation.  This is primarily used in the case where the RP is unable to set a cookie in the user's browser to remember that information.  SAML even points out that as little as possible data should be included in the RelayState.&lt;/p&gt;
&lt;p&gt;Paul's point in his comment was that if an RP used this &lt;span style="font-weight:bold;"&gt;incorrectly&lt;/span&gt;, they could leak information.  The SAML specs contain exactly this caution.&lt;/p&gt;

&lt;p&gt;I don't claim to say that SAML is the end-all for every use case.  I do believe that we need to support multiple methods, some of which have different privacy implications.  I also don't want some privacy weenies making life intolerable by the need for a confirmation of every thing that I already said it was OK to do.  I do trust some of the parties that I interact with and want to be able to automate as much as I feel comfortable doing.  I have no problem with the privacy weenie that wants to turn on the "let me approve everything" -- just don't force me to live that way as well.&lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/privacy" rel="tag"&gt;privacy&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/saml" rel="tag"&gt;SAML&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/cardspace" rel="tag"&gt;CardSpace&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/liberty" rel="tag"&gt;liberty&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-7238495451947369508?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/7238495451947369508/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=7238495451947369508' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/7238495451947369508'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/7238495451947369508'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/06/saml-bashing.html' title='SAML Bashing'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-3091818454817570560</id><published>2007-06-23T05:31:00.000-07:00</published><updated>2007-06-23T06:09:31.848-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='travel'/><category scheme='http://www.blogger.com/atom/ns#' term='united'/><title type='text'>You know you're late when...</title><content type='html'>&lt;p&gt;Earlier this week, a &lt;a href="http://www.forbes.com/feeds/ap/2007/06/20/ap3842202.html"&gt;computer glitch in United's sysytem&lt;/a&gt; caused hundreds of flights to be delayed or canceled.  As my luck would have it, I was caught up in the delays.   My flight was one of the last flights from &lt;a href="http://www.flysfo.com/"&gt;San Francisco&lt;/a&gt; to &lt;a href="http://www.flypdx.com"&gt;Portland&lt;/a&gt; and was supposed to arrive at 11:59 that night.    The arrival was delayed until around 2:15 AM and I didn't arrive at my hotel until after 3AM.&lt;/p&gt;
&lt;p&gt;This was made worse by the fact that the previous night, my flight from &lt;a href="http://www.metwashairports.com/Dulles/"&gt;Dulles&lt;/a&gt; to San Francisco was delayed by close to 3 1/2 hours by thunderstorms in the Dulles area (causing that 5 hour flight to be 8 1/2 hours as they didn't start the ground hold until we were already loaded onto the plane).  Luckily, it was an internationally configured 777 and I had upgraded into business class, so at least it was comfortable.&lt;/p&gt;
&lt;p&gt;I really knew I was late getting to my room at the hotel when I found that my USA Today for the next day was already delivered to the room. &lt;/p&gt;

&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/travel" rel="tag"&gt;travel&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/ual" rel="tag"&gt;UAL&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/united" rel="tag"&gt;United&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/dulles" rel="tag"&gt;dulles&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/iad" rel="tag"&gt;IAD&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/sfo" rel="tag"&gt;SFO&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/pdx" rel="tag"&gt;PDX&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-3091818454817570560?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/3091818454817570560/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=3091818454817570560' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3091818454817570560'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/3091818454817570560'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/06/you-know-youre-late-when.html' title='You know you&apos;re late when...'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-4710332242161033928</id><published>2007-06-20T06:24:00.001-07:00</published><updated>2007-06-20T07:06:23.548-07:00</updated><title type='text'>Updated Liberty Open Source</title><content type='html'>&lt;p&gt;I've updated my &lt;a href="http://www.cahillfamily.com/OpenSource/"&gt;Liberty ID-WSF Open Source implementation&lt;/a&gt; for both the server side and client side to include support for much of the the &lt;a href="http://www.projectliberty.org/liberty/content/download/2725/18332/file/liberty-idwsf-prov-v1.0-02.pdf"&gt;Advanced Client Provisioning Service&lt;/a&gt; specification.&lt;/p&gt;
&lt;p&gt;The &lt;a href="http://www.projectliberty.org/liberty/content/download/2714/18285/file/liberty-idwsf-adv-client-v1.0-01.pdf"&gt;Advanced Client Technologies Overview&lt;/a&gt; is a good starting point for understanding what we're trying to do with the advanced client specs.&lt;/p&gt;
&lt;p&gt;This release also includes some updates/fixes in the basis ID-WSF support.&lt;/p&gt;
&lt;p&gt;Have fun!&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/liberty" rel="tag"&gt;liberty&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/liberty+alliance" rel="tag"&gt;Liberty Alliance&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/open+source" rel="tag"&gt;Open Source&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/id-wsf" rel="tag"&gt;ID-WSF&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/provisioning" rel="tag"&gt;Provisioning&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/advanced+client" rel="tag"&gt;Advanced Client&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-4710332242161033928?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/4710332242161033928/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=4710332242161033928' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/4710332242161033928'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/4710332242161033928'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/06/updated-liberty-open-source.html' title='Updated Liberty Open Source'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-2449634070499906620</id><published>2007-06-19T07:30:00.000-07:00</published><updated>2007-06-19T09:32:02.740-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='concordia'/><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><category scheme='http://www.blogger.com/atom/ns#' term='liberty'/><title type='text'>Concordia Schmordia</title><content type='html'>&lt;p&gt;Next week, I will sit on a panel with &lt;a href="http://self-issued.info/"&gt;Mike Jones&lt;/a&gt; of &lt;a href="http://www.microsoft.com"&gt;Microsoft&lt;/a&gt; and &lt;a href="http://daveman692.livejournal.com/"&gt;David Recordon&lt;/a&gt; of &lt;a href="http://www.verisign.com"&gt;VeriSign&lt;/a&gt;.   This panel will be a part of day spent on the subject of the Concordia Project.&lt;/p&gt;
&lt;p&gt;One might ask, "What's Concordia?" and I, of course, would respond that that's a good question.  My recollection (questionable, I know) of the sequence of how we got to where we are is as follows:  The name originated in an earlier internal project at the Liberty Alliance where a number of us were examining potential paths towards convergence with the other technologies/protocols in the identity and web services space.  &lt;a href="http://www.xmlgrrl.com/blog/"&gt;Eve Maler&lt;/a&gt; can be blamed for the name as she brought it up given that Concordia was the &lt;a href="http://en.wikipedia.org/wiki/Concordia_%28mythology%29"&gt;Roman goddess of agreement, understanding, and marital harmony&lt;/a&gt; (not that any of us were getting married to each other) -- which, theoretically, is what convergence is about.&lt;/p&gt;
&lt;p&gt;Anyway, as we moved forward on the project we eventually figured out that doing this ourselves would likely be a waste of time (why would anyone else listen to us).  If we really wanted to talk about convergence we needed to bring the other players to the table.  That led to more deep thinking (and perhaps a few visits to the neighborhood psychologist) and the eventual realization that many of the differences in the current approaches had to do with different use cases and with looking at the problem from different points of view.&lt;/p&gt;
&lt;p&gt;So, here we are.  Trying to organize an effort to bring together people interested in this space so that we can discuss our respective use cases and understand the problems that need to be solved.  Liberty has tried to be very careful and very clear that this isn't a Liberty effort, but an industry effort (which Liberty supports).  My hope is that we can use this common understanding to drive towards common protocols, features and capabilities so that those trying to use our stuff will have an easier time integrating with the rest of the world. 
&lt;p&gt;So come join us for the &lt;a href="http://www.projectliberty.org/news_events/events/concordia_project_workshop_burton_catalyst_pre_conference_session_2007"&gt;Concordia day&lt;/a&gt; at the &lt;a href="http://catalyst.burtongroup.com/NA07/"&gt;Burton Catalyst Conference&lt;/a&gt;.  At the minimum, it should be fun (though without Dick Hardt on the panel, I won't have someone to pick on :-)).  The Concordia sessions are free, you just need to &lt;a href="http://lap.isto.org/catalyst2007.html"&gt;register here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I look forward to seeing you all there!&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/liberty" rel="tag"&gt;Liberty&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/liberty+alliance" rel="tag"&gt;Liberty Alliance&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/microsoft" rel="tag"&gt;Microsoft&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/verisign" rel="tag"&gt;Verisign&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/burton+catalyst" rel="tag"&gt;Burton Catalyst&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/concordia" rel="tag"&gt;Concordia&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-2449634070499906620?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/2449634070499906620/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=2449634070499906620' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/2449634070499906620'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/2449634070499906620'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/06/concordia-schmordia.html' title='Concordia Schmordia'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-398419709313344447</id><published>2007-06-18T17:45:00.000-07:00</published><updated>2007-06-18T21:26:02.505-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='travel'/><category scheme='http://www.blogger.com/atom/ns#' term='united'/><title type='text'>Business traveler Magazine</title><content type='html'>&lt;p&gt;Partly from some of my writings here about my frequent trips on &lt;a href="http://www.ual.com"&gt;United&lt;/a&gt;, I was interviewed for &lt;a href="http://www.btusonline.com/article.php?id=85"&gt;this article&lt;/a&gt; in Business Traveler Magazine.  Of course, the picture in the article was &lt;span style="font-weight:bold;"&gt;not&lt;/span&gt; a picture of me -- I think it might be Britta, there's some resemblance or, perhaps, that's just wishful thinking :-).&lt;/p&gt;
&lt;p&gt;I should also point out that I wasn't the one to find the article.  My sister, Theresa, was looking for our family web page (where I put up family photos) on google and she found the article and told me about it.  Yes, I knew it might be coming at some point, but wasn't aware it was published.  Now if I could only get a print copy to hang onto :-).&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/united" rel="tag"&gt;United&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/travel" rel="tag"&gt;travel&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/global+services" rel="tag"&gt;Global Services&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/business+traveler" rel="tag"&gt;Business Traveler&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-398419709313344447?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/398419709313344447/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=398419709313344447' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/398419709313344447'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/398419709313344447'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/06/business-traveler-magazine.html' title='Business traveler Magazine'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-6715653821531285651</id><published>2007-06-18T07:48:00.001-07:00</published><updated>2007-06-18T08:47:38.679-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='identity theft'/><title type='text'>Annual Credit Reports</title><content type='html'>&lt;p&gt;Not sure what brought this up now, but for some reason I thought to go get the "free" annual credit reports that we are entitled to here in the US at least once every year.  I started with &lt;a href="http://www.AnnualCreditreport.com"&gt;AnnualCreditReport.com&lt;/a&gt; (the central clearing house setup by the 3 major credit reporting agencies) which asked me for the standard credit information (name, ssan, address, dob, etc.).&lt;/p&gt;
&lt;p&gt;Once I entered that information they prompted me to select which of the 3 agencies I would like to review the report at (yes, you can select multiple).  I selected all 3, but now, after thinking about it, perhaps I should have selected one only and rotated around the 3 agences throughout the year -- that way I can get a new checkup every 4 months rather than only one per year -- Oh well).&lt;/p&gt;
&lt;p&gt;The web site then forwards you to each of the agencies where you will go through a different process at each of them to further verify your identity and get access to your credit report.  My experience at each of them:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The first agency I was sent to was &lt;a href="http://www.transunion.com"&gt;TransUnion&lt;/a&gt; where I had to create an account in order to get my report.  I was then prompted for 2 account numbers (which I had to go find) and then the tried to upsell me a copy of my credit score for $7.95 before they would let me see my credit report.  When I was done, the process had taken so $#@%ing long that my session at AnnualCreditReport.com had expired and I had to start all over for the remaining two agencies.&lt;/li&gt;
&lt;li&gt;On to &lt;a href="http://www.equifax.com/"&gt;Equifax&lt;/a&gt;, where they wanted to know which provider I opened an account with in 2005 and what was the payment (much easier to deal with), then they too wanted to upsell me my credit score for $7.95.  No need to create an account.  Got my report and printed it.&lt;/li&gt;
&lt;li&gt;And, finally, &lt;a href="http://www.experian.com/"&gt;Experian&lt;/a&gt; ((the last of the 3).  This time, I went back to AnnualCreditReport.com fairly quickly, so no need to re-enter all of my information. Experian started with verification of my ssan (last 4 digits), then they asked for verification of 2 accounts (who gave me a mortgage at a particular time and who gave me an auto loan at a different particular time) as well as the name of the county in which I live.  Poof.  I got to see my credit report.  No need to create an account, no attempt to upsell me with the credit score (at least not as an intrusive click-through step -- it may have been there somewhere else on the page that I just ignored).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Moral of the story.... be tenacious and make them give you a copy of your report -- &lt;span style="font-weight:bold;"&gt;it IS free&lt;/span&gt; (as long as you don't fall for the upsell).  Unless you think you have been a victim of identity theft, I would stagger the reports from each agency as many of them carry the same information as the others and this kind of gives you better coverage over the year (there's a lot someone can do in the 12 months between your annual reviews if you do all 3 at the same time).&lt;/p&gt;
&lt;p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity+theft" rel="tag"&gt;identity theft&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/credit+report" rel="tag"&gt;credit report&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/free-credit+report" rel="tag"&gt;free credit report&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/experian" rel="tag"&gt;Experian&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/TransUnion" rel="tag"&gt;TransUnion&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/equifax" rel="tag"&gt;Eqiuifax&lt;/a&gt;
 / &lt;a href="http://technorati.com/tag/AnnualCreditReport.com" rel="tag"&gt;AnnualCreditReport.com&lt;/a&gt;
&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-6715653821531285651?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/6715653821531285651/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=6715653821531285651' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/6715653821531285651'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/6715653821531285651'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/06/annual-credit-reports.html' title='Annual Credit Reports'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-4017278457059322299</id><published>2007-06-04T09:58:00.000-07:00</published><updated>2007-06-04T10:01:12.560-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='family'/><title type='text'>The Combo</title><content type='html'>&lt;p&gt;&lt;a href="http://connectid.blogspot.com"&gt;Paul&lt;/a&gt; must be getting a little hard up for cash nowadays as he seems to be &lt;a href="http://www.albertleatribune.com/articles/2007/05/28/news/news2.txt"&gt;out moonlighting&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;FONT size="1"&gt;
  &lt;B&gt;
    These comments are purely those of Conor P. Cahill 
    and do not represent the views of any company he 
    now works for or has ever worked for in the past.
  &lt;/B&gt;
&lt;/FONT&gt;
&lt;!-- Start of StatCounter Code --&gt;
&lt;script type="text/javascript" language="javascript"&gt;
var sc_project=1940158; 
var sc_invisible=1; 
var sc_partition=17; 
var sc_security="89a2979b"; 
&lt;/script&gt;

&lt;script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href="http://www.statcounter.com/" target="_blank"&gt;&lt;img  src="http://c18.statcounter.com/counter.php?sc_project=1940158&amp;java=0&amp;security=89a2979b&amp;invisible=1" alt="free hit counter" border="0"&gt;&lt;/a&gt; &lt;/noscript&gt;
&lt;!-- End of StatCounter Code --&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29173677-4017278457059322299?l=conorcahill.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://conorcahill.blogspot.com/feeds/4017278457059322299/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29173677&amp;postID=4017278457059322299' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/4017278457059322299'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29173677/posts/default/4017278457059322299'/><link rel='alternate' type='text/html' href='http://conorcahill.blogspot.com/2007/06/combo.html' title='The Combo'/><author><name>Conor P. Cahill</name><uri>http://www.blogger.com/profile/18408504477586184299</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://photos1.blogger.com/blogger/4767/3101/1600/cpc.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29173677.post-6338168999525896702</id><published>2007-05-08T05:15:00.000-07:00</published><updated>2007-05-08T05:57:10.927-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><category scheme='http://www.blogger.com/atom/ns#' term='federation'/><title type='text'>Dick and Conor</title><content type='html'>&lt;p&gt;Today, at the &lt;a href="http://www.kuppingercole.de/events/eic2007"&gt;European Identity Conference&lt;/a&gt;, &lt;a href="http://blame.ca/dick/"&gt;Dick Hardt&lt;/a&gt; and I (as well as several others) participated in a &lt;a href="http://www.kuppingercole.de/sessions/111"&gt;panel on user centric identity in the enterprise&lt;/a&gt;.  As &lt;a href="http://conorcahill.blogspot.com/2007/05/april-unusually-quiet-month.html"&gt;I had suspected&lt;/a&gt; it was a fun session with lots of back and forth and a very interested audience.&lt;/p&gt;
&lt;p&gt;What amazed most people who know us was that we actually agreed on several issues and Dick was quoted at least twice as saying something along the lines of "As amazing as it seems, I agree with Conor on this" and we even shook hands once (luckily no one in the audience had their camera ready for the historic moment).&lt;/p&gt;
&lt;p&gt;The kinds of things we agreed on included:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Users should be able to control the use and dissemination of their data.&lt;/li&gt;
&lt;li&gt;Users should be able to allow an agent (local or perhaps in the cloud) that can interact on their behalf in between authoritative issuers of attributes and relying parties.&lt;/li&gt;
&lt;li&gt;Users should be able to allow direct access from some relying parties to some issuing authorities (specific example discussed was around someone accessing my calendar service to add an appointment).&lt;/li&gt;
&lt;li&gt;Strong authentication is separate and distinct from strong identification.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;We only had an hour on the panel and could have easily gone on for another hour or two with a very participatory audience.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:78%;"&gt;Tags : 
   &lt;a href="http://technorati.com/tag/identity" rel="tag"&gt;identity&lt;/a&gt;
 / &lt;a href="http://technorat
