Global Identity in the iPhone browser

Typing user name/passwords on cell phones is extreemly tedious. Here we show how identification & authentication can be done in two clicks. No URL to type in, no changes to the iPhone, just using bog standard SSL technology tied into a distributed global network of trust, which is known as foaf+ssl.

After having installed a foaf+ssl certificate on my phone (which I will explain how to do in my next post), I directed Safari to foaf.me, which is a foaf+ssl enabled web site. This brought up the following screen:

empty foaf.me page

This is a non personalised page. In the top right is a simple foaf+ssl login button. This site was not designed for the iPhone, or it would have been a lot more prominent. (This is easy to change for foaf.me of course). So I the zoomed onto the login link as shown in the following snapshot. Remember that I don't have an account on foaf.me. This could be the first time ever I go there. But nevertheless I can sign up: just click that link.

login link

So clicking on this foaf+ssl enabled link brings up the following window in Safari. Safari warns me first that the site requires a certificate. The link I clicked on sent me to a page that is requesting my details.

certificate warning

As I do in fact want to login, I click the continue button. The iPhone then presents me with an identity selector, asking me which of my two certificates I want to use to log in:

certificate selection

Having selected the second one, the certificate containing my bblfish.net WebId is sent to the server, which authenticates me. The information from my foaf file is then used to personalise my foaf.me experience. Here foaf.me gives me a nice human readable view of my foaf file. I can even explore my social network right there and then, by clicking on the links to my friends. Again, this will work even if you never did go to foaf.me before. All you need is of course a well filled out foaf file, which services such as foafbuilder.qdos.com are making very easy to do. Anyway, here is the foaf.me personalised web page. It really knows a lot about me after just 2 clicks!

personalised foaf.me

The foaf.me site currently has another tab, showing my activity stream of all the chats I have on the web, which it can piece together since I linked all my accounts together in my foaf file, as I explained in the post "Personalising my Blog" a few months ago.

activity stream

Other web sites could use this information very differently. My web server itself may also decide to show selected information to selected servers... Implementing this is it turns out quite easy. More on that on this blog and on the foaf-protocols mailing list.

Comments:

Hi Henry,

that looks great!!
We, at Restlet, are on the way to port the Restlet core to Android. The next step is to implement authentication with foaf+ssl which is also planned!

Best regards,
Thierry Boileau

Posted by Thierry Boileau on April 08, 2009 at 05:39 AM CEST #

By the way, the above works of course in any normal browser, though the UI is less slick, and the use case somewhat less overpowering (desktops don't have the keyboard problem).

Also if you want to see what the iPhone user sees, just go to http://bit.ly/ap907

We are dealing with public data currently, because it would not be so easy to speak to a large audience about hidden data! But the protocol allows one to hide data too, so that only one's friends or a select group can see it.

Posted by Henry Story on April 08, 2009 at 07:14 AM CEST #

Sadly there seems to be a problem with Safari in the iPhone browser, so that it now no longer sends certificates to the server. More details are here:

http://lists.foaf-project.org/pipermail/foaf-protocols/2009-June/000642.html

It would be good to now get examples of this working on other phones. I found showing this work on the iPhone to be extreemly successful.

Henry

Posted by Henry Story on June 22, 2009 at 09:44 AM CEST #

Post a Comment:
Comments are closed for this entry.
About

bblfish

Search

Archives
« August 2015
MonTueWedThuFriSatSun
     
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
      
Today