passport 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293
  1. * Updates
  2. <b>Sep 20, 2001:</b> Microsoft has just announced some changes
  3. to passport that are rather interesting. This document
  4. reflects the Passport system without taking into account the
  5. new changes.
  6. Read about it <a href="http://www.microsoft.com/presspass/features/2001/sep01/09-20passport.asp">here</a>.
  7. For an analysis of security problems with passport, check <a
  8. href="http://avirubin.com/passport.html">http://avirubin.com/passport.html</a>.
  9. The bottom line is that you should not put any sensitive
  10. information on passport.
  11. I have received many comments from people, and I have updated
  12. the page accordingly. From removing incorrect statements, to
  13. fixing typos, to include mentions to other software pieces.
  14. I also corrected my statement about IIS and a trojan horse, I
  15. should read a more educated press in the future. My apologies
  16. to Microsoft and its employees on this particular topic. IIS
  17. did not have a trojan horse built in.
  18. * Microsoft Hailstorm and Passport
  19. Microsoft Passport is a centralized database hosted by
  20. Microsoft that enhances the consumer experience with the Web
  21. by providing a single logon system that they can use across a
  22. number of participant web sites.
  23. As you might know by now from our extensive <a
  24. href="faq.html">FAQ</a>, the Mono project has nothing to do
  25. with Microsoft Hailstorm or <a
  26. href="http://www.passport.com">Microsoft Passport.</a>
  27. Still a lot of people have asked us our opinion on them.
  28. ** Passport
  29. Passport is important not because of it being a breakthrough
  30. technologically speaking, but because the company is in a
  31. position to drive most people toward being suscribers of it.
  32. At the time of this writing passport is required to use the
  33. free mail service <a href="http://www.hotmail.com">Hotmail</a>
  34. to get customized support for the <a
  35. href="http://www.msn.com">MSN portal</a>, <a
  36. href="http://msdn.microsoft.com">Microsoft Developers
  37. Network</a> and according to the original announcement from
  38. Microsoft <a href="http://www.americanexpress.com">American
  39. Express</a> and <a href="http://www.ebay.com">EBay</a> will be
  40. adopting it.
  41. There is already a <a
  42. href="http://www.passport.com/Directory/Default.asp?PPDir=C&lc=1033">Large
  43. list</a> of participating sites.
  44. There are many current users of it and Microsoft will be
  45. driving more users towards Passport as it <a
  46. href="http://news.cnet.com/news/0-1003-200-6343275.html">integrates
  47. it</a> in their upcoming release of Windows.
  48. Microsoft has also <a
  49. href="http://www.passport.com/Business/JoinPassportNetwork.asp?lc=1033">developed
  50. a toolkit</a> to enable current web merchants to integrate
  51. their services with passport.
  52. To the end user, there is a clear benefit: they only have to
  53. log into a single network and not remember multiple passwords
  54. across sites on the internet. Companies that adopt passport
  55. will have a competition advantage over those that dont.
  56. Microsoft lists a list of <a
  57. href="http://www.passport.com/Business/Default.asp?lc=1033">benefits</a>
  58. to companies.
  59. ** The problems of Passport
  60. There are a number of concerns that different groups have over
  61. Passport. Sometimes I have some, sometimes I do not. But
  62. overall, consumers and businesses can have better solutions.
  63. <ul>
  64. * <b>Single Point of Failure:</b> As more services and
  65. components depend on remote servers, functionality can
  66. grind to a halt if there is a failure on the
  67. centralized Passport system.
  68. Such a failure was predicted, and we recently <a
  69. href="http://news.cnet.com/news/0-1005-200-6473003.html">witnessed</a>
  70. got a lot of people worried.
  71. The outgage lasted for seven days. Think what this
  72. could do to your business.
  73. * <b>Trust:</b> Not everyone trusts Microsoft to keep
  74. their information confidential. Concerns are not only
  75. at the corporate level policy, but also the fact that
  76. the source code for Microsoft products is not
  77. available, means that trojans or worms could be built
  78. into the products by malicious engineers.
  79. * <b>Security:</b> With a centralized system like
  80. Passport, imagine the repercussions of a malicious
  81. hacker gaining access to the Passport database.
  82. Personal information and credit card information about
  83. almost everyone using a computer could be stored there.
  84. Hackers have already <a
  85. href="http://slashdot.org/articles/00/10/27/1147248.shtml">broken
  86. into Microsoft</a> in the past. And the company was
  87. unable to figure out for how long their systems had
  88. been hacked.
  89. Security holes have been found in <a
  90. href="http://slashdot.org/articles/00/04/14/0619206.shtml">IIS
  91. in the past.</a> If all the world's data is stored on
  92. a central location, when a single security hole is
  93. detected, it would allow an intruder to install a
  94. backdoor within seconds into the corporate network
  95. without people ever noticing.
  96. Microsoft itself has been recently hit by worms,
  97. imagine if all your business depended on a single
  98. provider for providing all or your authentication
  99. needs
  100. </ul>
  101. Microsoft might or might not realize this. The idea behind
  102. Passport is indeed a good one (I can start to get rid of my
  103. file that keeps track of the 30 logins and passwords or so
  104. that I use across the various services on the net myself).
  105. ** Alternatives to Microsoft Passport
  106. An alternative to Microsoft Passport needs to take the above
  107. problems into consideration. Any solution of the form `We
  108. will just have a competing offering' will not work.
  109. The system thus has to be:
  110. <ul>
  111. * <b>Distributed:</b> The entire authentication
  112. system should not create an internet `blackout' in the
  113. case of failure.
  114. A distributed system using different software
  115. platforms and different vendors would be more
  116. resistent to an attack, as holes in a particular
  117. implementation of the server software would not affect
  118. every person at the same time.
  119. A security hole attack might not even be relevant to
  120. other software vendors software.
  121. * <b>Allow for multiple registrars:</b> Users should
  122. be able to choose a registrar (their banks, local
  123. phone company, service provider, Swiss bank, or any
  124. other entity they trust.
  125. * <b>Mandate good security measures:</b> As a
  126. principle, only Open Source software should be used
  127. for servers in the registrar, and they should conform
  128. to a standard set of tools and software that can be
  129. examined by third parties.
  130. </ul>
  131. An implementation of this protocol could use the DNS or a
  132. DNS-like setup to distribute the information of users with the
  133. possibility of replicating and caching public information
  134. about the user.
  135. For instant messaging (another piece of the Hailstorm bit),
  136. you want to use a non-centralized system like Sun's <a
  137. href="http://www.jxta.org">JXTA</a>. Some people mailed me to
  138. mention Jabber as a messaging platform and other people
  139. pointed out to the <a
  140. href="http://java.sun.com/products/jms/">Java Message
  141. Service</a>. The JMS does support a number of very
  142. interesting features that are worth researching.
  143. It could also just use the user e-mail address as the `key' to
  144. choose the registrar (msn.com, hotmail.com -> passport.com;
  145. aol.com -> aol.passport.com; you get the idea).
  146. The <a
  147. href="http://www.soapware.org/xmlStorageSystem">xmlStorage</a>
  148. idea from <a href="http://www.scripting.com">Dave Winer</a>
  149. could be used to store the information.
  150. A toolkit for various popular web servers could be provided,
  151. authenticated and should be open sourced (for those of you who
  152. think that a binary program would give more security and would
  153. prevent people from tampering: you are wrong. You can always
  154. use a proxy system that "behaves" like the binary, and passes
  155. information back and forth from the real program, and snoops
  156. in-transit information).
  157. Good cryptographers need to be involved in this problem to
  158. figure out the details and the possible insecure pieces of a
  159. proposal like this.
  160. ** Implementation: In short
  161. To keep it short: <b>DNS, JXTA, xmlStorage.</b>
  162. ** Deploying it
  163. The implementation of such a system should be a pretty
  164. straightforward task once security cryptographers have
  165. designed such a beast.
  166. The major problems are:
  167. <ul>
  168. * <b>People might just not care:</b> In a poll to US
  169. citizens a couple of decades ago, it was found that
  170. most people did not care about the rights they were
  171. given by the Bill of Rights, which lead to a number of
  172. laws to be passed in the US that eliminated most of
  173. the rights people had.
  174. * <b>The industry will move way too slow:</b>
  175. Microsoft's implementation is out in the open now: it
  176. is being deployed, and soon it will be insinuated to
  177. many, many users. The industry needs to get together
  178. soon if they care about this issue.
  179. By the time the industry reacts, it might be too
  180. late.
  181. </ul>
  182. ** Passport and Mono
  183. The .NET class libraries include a Passport class that
  184. applications might use to authenticate with Passport. Since
  185. we do not have information at this point on the exact protocol
  186. of Passport, it is not even feasible to implement it.
  187. If at some point the information is disclosed, it could be
  188. implemented.
  189. If a competing system to Passport existed, we could probably
  190. hide all the authentication information to use a number of
  191. different passport-like systems.
  192. If a user does not want to use Passport at all, he could
  193. always turn it off (or completely remove the class from the
  194. library). After all, this is free software.
  195. Currently, we are too far from the point where this is a real
  196. issue.
  197. ** Passport and endangering Open Source.
  198. A few people have said: `Mono will allow Passport to be
  199. available for Linux and that is bad'. This is plain
  200. missinformation.
  201. Currently, you can obtain Passport for Linux from Microsoft
  202. itself and deploy it today on your Web server. Mono does not
  203. even enter the picture here. Go to passport.com and download
  204. the toolkit and you will see with your own eyes that passport
  205. is <B>already</b> available for Linux.
  206. ** Disclaimer
  207. This is just a group of personal thoughts of mine that I have
  208. placed here because I get asked this question a lot lately.
  209. The views of this page are not a statement from my employer
  210. (Ximian, Inc).
  211. This is not part of Mono. We are not trying to deal with this
  212. problem.
  213. Nat Friedman (Ximian's co-founder) has his own ideas on how a
  214. competing system to Passport could be designed, but I will let
  215. <a href="http://www.nat.org/">him</a> post his own story.
  216. ** Other Passport Comments
  217. An interesting study on the security of passport is available at: <a
  218. href="http://avirubin.com/passport.html">http://avirubin.com/passport.html</a>
  219. ** Other Alternatives
  220. Some people have pointed out <a
  221. href="http://www.xns.org">XNS</a>
  222. Send comments to me: Miguel de Icaza (<a
  223. href="mailto:[email protected]">[email protected]</a>)