<HTML>
<HEAD>
<TITLE>Re: [OpenID] Can we make a seamless OpenID mobile experience?</TITLE>
</HEAD>
<BODY>
<FONT FACE="Calibri, Verdana, Helvetica, Arial"><SPAN STYLE='font-size:11pt'>That&#8217;s a great distinction, Nat. As you and Allen point out, OpenID is reasonably robust as long as there is some sort of browser on the device &#8211; even if it&#8217;s small, we can accommodate it. The For example, the iPhone is a enables a full-featured browser, even with applications. For Facebook Connect for iPhone, we use the web view with a custom UI to let users log in directly to facebook.com: &nbsp;<a href="http://developers.facebook.com/connect_iphone.php">http://developers.facebook.com/connect_iphone.php</a> . <BR>
<BR>
The main use case that hasn&#8217;t been addressed is what to do for applications and devices for which opening a browser is impossible, or at least doing so represents a significantly degraded user experience.<BR>
<BR>
It seems that the number of devices that are internet-enabled, but lack proper web browsers, is only increasing. Yes, the upper end phones have browsers now, but there are plenty of phones that don&#8217;t have great browsers but still allow applications. In addition, there are plenty of set-top boxes that may be able to call out to a browser, but it&#8217;s a pain, and even more for which it&#8217;s impossible. And don&#8217;t we want OpenID to work on all devices?<BR>
<BR>
For those kinds of devices, Facebook enables a special API that lets trusted partners submit email and password and get a session directly. That&#8217;s how you can enter your email/password directly into the Blackberry app and it just works.<BR>
<BR>
Many providers use email/password or username/password, but not all, and in fact OAuth and OpenID were built explicitly to not require passwords, which is great. Allen raises a great point, too &#8211; one of the scenarios enabled by OpenID is delegating through multiple authorities &#8211; i.e,. I use my Google OpenID to log in to, say, Yahoo, and then I use that to authorize Flickr photos to a photo printing service. With the chain of redirects in a browser, this is doable, but how do you manage that chain of responsibility without a browser?<BR>
<BR>
I don&#8217;t have an answer &#8211; doing it in a distributed way is really hard, which is why the community has basically punted on it. I just want to raise that it is a real problem, and if the open protocols always require a one-size-fits-all &#8220;stick it in a browser&#8221;, then they will always be at a competitive disadvantage to systems that do enable login to devices without browsers. So it is in the interests of the community to brainstorm a solution to this problem.<BR>
&nbsp;&nbsp;<BR>
On 4/12/09 11:00 PM, &quot;Nat Sakimura&quot; &lt;<a href="sakimura@gmail.com">sakimura@gmail.com</a>&gt; wrote:<BR>
<BR>
</SPAN></FONT><BLOCKQUOTE><FONT FACE="Calibri, Verdana, Helvetica, Arial"><SPAN STYLE='font-size:11pt'>When we talk about mobile, I think we should devide the device into<BR>
several spaces.<BR>
<BR>
iPhone kind of intelligent device is one, then WAP etc. phone is another, and<BR>
there is SMS deveices.<BR>
<BR>
In Japan, i-mode/wap type of browser phone is the norm.<BR>
They have unique identifiers assigned at the carrier gateway.<BR>
(So does some U.S. phones as well.)<BR>
These can be treated fairly robust as long as we are on SSL/TLS<BR>
channel. Thus, after registering the device to the OP, the<BR>
user experience will be quite seamless.<BR>
<BR>
The user goes to the RP, clicks on Login, he will be taken to the OP<BR>
and automagically logged in with the device id, and sent back to<BR>
the RP. There is no click other than the initial click on the OP<BR>
Identifier Login<BR>
button.<BR>
<BR>
Downside is: OpenID messages are lengthy with GET, and when it is<BR>
coupled with AX or something like that, many phone will choke.<BR>
Something similar to SAML's Artifact binding would be preferable over the<BR>
current &quot;GET/POST&quot; binding.<BR>
<BR>
=nat<BR>
<BR>
On Sat, Apr 11, 2009 at 11:14 AM, Allen Tom &lt;<a href="atom@yahoo-inc.com">atom@yahoo-inc.com</a>&gt; wrote:<BR>
&gt; The problem with having the client directly submit the username/password to<BR>
&gt; the SP is that it requires OAuth Service Providers to have passwords for<BR>
&gt; their users, implying that OpenID Relying Parties cannot be OAuth SPs.<BR>
&gt;<BR>
&gt; For an example of a good mobile browser based  OAuth UX, check out the<BR>
&gt; Sparrow iPhone App for Fire Eagle. The Sparrow app opens Safari  to the<BR>
&gt; Yahoo Mobile Login screen, and then sends the user to the Fire Eagle OAuth<BR>
&gt; Permissions screen to authorize the OAuth token. The Sparrow App<BR>
&gt; automatically regains focus after the user authorizes the token via  a<BR>
&gt; custom protocol handler on the OAuth callback URL.<BR>
&gt;<BR>
&gt; Is the UX demonstrated by the Sparrow iPhone app sufficient for mobile apps?<BR>
&gt; I think it's just as good, if not better, than submitting the<BR>
&gt; username/password directly to the SP.<BR>
&gt;<BR>
&gt; Allen<BR>
&gt;<BR>
&gt;<BR>
&gt; Luke Shepard wrote:<BR>
&gt;&gt;<BR>
&gt;&gt; It's still not great.<BR>
&gt;&gt;<BR>
&gt;&gt; For example, take my Gmail app on my Blackberry. I don't have to go to a<BR>
&gt;&gt; website- I can enter my credentials directly. This is great- if I had to go<BR>
&gt;&gt; to a web browser, I would probably never have installed it.<BR>
&gt;&gt;<BR>
&gt;&gt; So, how can we do that with OpenID and OAuth?<BR>
&gt;&gt;<BR>
&gt;&gt; One way could be an extension that allows an OAuth consumer to ping the<BR>
&gt;&gt; provider directly with a username and password, and get a token directly.<BR>
&gt;&gt; Yes, this has issues with trust and security. But my point is that these<BR>
&gt;&gt; apps are being built already, and wouldn't it be cool if they were built<BR>
&gt;&gt; using open standards?<BR>
&gt;&gt;<BR>
&gt;&gt; So I'm just putting it out there.<BR>
&gt;&gt;<BR>
&gt;&gt;<BR>
&gt;&gt;<BR>
&gt;<BR>
&gt; _______________________________________________<BR>
&gt; general mailing list<BR>
&gt; <a href="general@openid.net">general@openid.net</a><BR>
&gt; <a href="http://openid.net/mailman/listinfo/general">http://openid.net/mailman/listinfo/general</a><BR>
&gt;<BR>
<BR>
<BR>
<BR>
--<BR>
Nat Sakimura (=nat)<BR>
<a href="http://www.sakimura.org/en/">http://www.sakimura.org/en/</a><BR>
<BR>
</SPAN></FONT></BLOCKQUOTE>
</BODY>
</HTML>