Archive for the ‘Yadis’ Category

Eran’s Status Report on Discovery

Friday, December 5th, 2008

Something else so good I just have to blog it: Eran Hammer-Lahav’s Discovery Coordination Report on the new metadata-discovery list he set up. Eran’s turning into a one-man hub of all things discovery as he drives forward together with the rest of the OASIS XRI TC towards the pushing out the new XRD 1.0 spec.

I have high hopes for this spec and Eran is one of the key reasons (plus the efforts of his co-editor Nat Sakimura of NRI, who is working OpenID miracles in Japan, and other new TC members who have joined to finally make simple, safe, uniform metadata discovery a reality on the Web).

XRD Begins

Sunday, November 30th, 2008

For most people, watching the evolution of technical specifications is like watching a glacier move. To those of us living the process, though, there can be a great deal of drama to it — in fact it’s much more like climbing an icefall inside the glacier (anyone doubting how much adrenaline that takes should read John Krakauer’s description in Into Thin Air of climbing Mt. Everest’s Khumbu Icefall). For example, the failure of the OASIS Standard vote on the XRI 2.0 specifications last May — the first ever in 40+ OASIS Standard votes — was a watershed in the interaction of two standards bodies (W3C and OASIS).

The repercussions from that event have been equally unpredictable. Who would have thought that just four months later the XRI TC and W3C TAG would have rough consensus on how to resolve their differences? Or that the discussions would spill over to the much larger topic of uniform metadata discovery on the Web? Or that discovery could turn out to be the key to building identity into the browser? Or that interest in the XRDS discovery format would boil up enough to beget a new spec intended for uniform metadata discovery for any type of URI or XRI?

But that’s just what has happened. Two weeks ago at the Internet Identity Workshop, Eran Hammer-Lahav, author of the OAuth Discovery spec and founder of the XRDS-Simple list, led a marathon session on a new uniform metadata discovery specification to be called XRD 1.0. With 20 to 40 people in attendance all afternoon, Eran first ran through his exhaustively-researched blog post on HTTP and discovery, then through the proposed simplifications to the current XRDS/XRD schema. By the end there was rough consensus on XRD as a mechanism for uniform metadata discovery across all the different Internet identity and data sharing specs that need it (XRI, OpenID, OAuth, OpenSocial, XDI, Data Portability, etc.)

The name “XRD” is itself quite revealing of the evolutionary path to this point. When the OASIS XRI TC first developed the XML-based metadata discovery format we needed for XRI resolution back in 2003, we called it XRID (XRI Descriptor). We made it as simple and generalized as we could simply because any resource could have an XRI, so there was no telling what type of metadata might be needed over time. We focused primarily on one clear requirement: given input identifier x and service type y, define how to discover service endpoint URI z.

By 2005, when OpenID grew to the point of needing a discovery format, the authors of the Yadis (Yet Another Discovery spec) authors looked at XRID and saw something very close to what they needed. But XRID assumed you needed a sequence of descriptors corresponding to an XRI resolution chain. With OpenID a sequence wasn’t needed because an http(s) URI would have just one descriptor. So the XRI TC renamed the metadata format to XRD (Extensible Resource Descriptor) and created a separate XML wrapper element called XRDS (XRD Sequence) for cases like XRI resolution where you needed to wrap a sequence of XRDs.

However for cross-compatibility between XRI and OpenID, OpenID discovery just assumed the outer XRDS wrapper element even if it contained only one XRD. So the discovery format became widely known by the wrapper element, XRDS.

It wasn’t until Eran’s deep-dive on uniform metadata discovery that he recognized that the base case should be the other way around, i.e., for most URIs the the base discovery document should be an XRD, and only in cases like XRI resolution do you need the XRDS wrapper element.

Since the XRI TC had already made the decision in our next round of specs to split off XRDS from XRI Resolution, it was easy to just call this new specification XRD 1.0 (”1.0″ reflecting that it is the first standalone specification for XRD). However what we didn’t realize until the XRI TC F2F meeting the day after IIW was that XRD as both a metadata discovery format and protocol would be comprehensive enough that XRI 3.0 Resolution could become simply a “profile” of XRD 1.0 — and thus dramatically shorter.

We also didn’t realize how badly many different stakeholders want a Web-wide metadata discovery mechanism. Within a week after IIW we had six new people join the XRI TC to be part of the XRD work, and as of this writing nine more are in the queue.

So the roadmap of the next generation of XRI TC outputs is clear now. We will produce two OASIS Standard-track specifications:

  • XRI 3.0 (including Syntax, Resolution, and Bindings) as a uniform syntax and resolution protocol for shared semantics across hierarchical URI schemes.
  • XRD 1.0 for uniform metadata discovery for any URI or XRI.

Stay tuned for updates – hopefully this set of specs will set a glacier speed record.

Phil Windley on XRDS

Thursday, May 31st, 2007

I just added XRDS (Extensible Resource Descriptor Sequence) as a new category on my blog because this simple XML document format, created by the OASIS XRI Technical Committee to provide XRI resolution metadata and subsequently adopted by Yadis, is starting to gain attention as the discovery format for OpenID.

Phil Windley just posted a good overview of XRDS today. For even more detail about XRDS (and OpenID in general) see this article written for the Java community — perhaps the single best technical article on OpenID I’ve read.

Johannes on XRI resolution

Thursday, August 10th, 2006

Johannes Ernst just created an excellent blog post out of an email dialog he and I had about the “big picture” of XRI resolution. It’s true that the concept of an identifier resolution network based on HTTP that parallels the DNS resolution nework based on UDP is unusual at first. But for RESTful architects like Johannes, the lightbulb goes on when look at the power of using the HTTP layer to do for digital identification what the DNS layer did for host naming — especially leveraging the simplicity and extensibility of XRDS documents (the XML format returned by an XRI resolution request, and also the format used by the Yadis URL service discovery protocol of which Johannes was the co-instigator.)

As the XRI Resolution editor’s team starts work this month on what we hope is the final working draft of XRI Resolution 2.0 (currently at working draft 10), I plan to blog more about other key features of XRDS documents — CanonicalIDs, Refs, ProviderIDs, and Service Endpoints – that all help solve higher-level identity and trust problems at a layer higher than DNS was intended to function, much like DNS solved a set of problems of logical naming and redirection at a layer higher than IP addressing was intended to function.

OpenID 2.0: Convergence Continues

Monday, June 19th, 2006

Internet infrastructure is always a story of convergence. Last fall the OpenID and LID URL-based authentication protocols came together around an interoperable lightweight discovery format called Yadis. Yadis used the XML-based XRDS document format developed by the OASIS XRI Technical Committee, which brought i-names (the human-friendly format of an XRI) closer to both of these distributed URL-based authentication protocols.

Now the next step is happening. OpenID 2.0 will be more than just an authentication protocol but a complete framework for distributed digital identity based on user-centric digital addresses. The highlights:

  • OpenID 2.0 will support both URLs and XRIs (i-names or i-numbers), so you can use either type of digital address.
  • OpenID 2.0 incorporates Yadis XRDS-based service discovery, so it can be used not just for authentication (via any protocol both the user and the site support), but for any identity-based service (“i-service”) such as profile exchange, attribute verification, reputation, etc.
  • OpenID 2.0 Authentication (the new name for the OpenID 2.0 authentication protocol itself) is adding more security features plus the ability to do “anonymous” login (logging in using your i-broker’s digital address instead of your own, for an extra layer of privacy).

And to show how serious this is, the OpenID 2.0 framework was submitted this morning by 16 architects and developers to the Apache Software Foundation as a new project called “Heraldry”. With the Heraldry project, user-centric identity officially moves out of the backwater and into the mainstream channel of the Web.

 

 

The timing is ideal with the opening of the XDI.org i-names global registry services at the Berkman Identity Mashup on June 20th. This is the first global digital addressing service in which users are a full peer with organizations, and in which users interests are represented by i-brokers whose job it is to protect the privacy and security of user data.

More about the global registry opening in a following post – I just wanted to get the word out about OpenID 2.0, because it’s one of the most tangible signs ever that user-centric identity is here to stay.

Yadis 1.0 and XRI Resolution 2.0

Friday, March 24th, 2006

When this blog is quiet for a long period, it’s usually because of specs, specs, specs. This winter has seemed like one long spec drive, and it’s not over yet.

But we have reached two major milestones:

  1. XRI Resolution 2.0 Working Draft 10 is the outcome of 9 months of work to build full proxy resolution into the XRI resolution framework. This was a result of feedback the XRI TC received from the W3C Technical Architecture Group (TAG) during the public review of XRI 2.0 last spring. Now we not only have fully-specified proxy resolution that can easily be deployed on any HTTP server, but also an HTTP URI format for all XRIs (called an HXRI). For example, here’s the HXRI for my contact page: http://xri.net/=drummond.reed.
  2. Yadis 1.0 is the outcome of 6 months of work dating back to last fall’s Internet Identity Workshop where Johannes Ernst, creator of LID, and Brad Fitzpatrick and David Recordon, creators of OpenID, proposed using a simple service discovery format so sites could deploy a single “intelligent” login box that could accept either LID and OpenID URLs.

The good news is that this simple service discovery format turned out to have the same requirements the XRDS (Extensible Resource Descriptors) format used by XRI resolution. So all three efforts were able to harmonize on use of XRDS. This provides a single interoperable service discovery format for both XRIs and URLs and which will work with LID and OpenID as well as SAML 2.0 or any other HTTP distributed authentication protocol.

This is a big step forward for convergence of interoperable Internet identity infrastructure (say that four times fast ;-)

[Stay tuned for more spec news as we head for the next two big milestones. All this round of spec work should be wrapped up by the next Internet Identity Workshop May 1-3 in S.F. so it should be a regular interop orgy this year!]

Entries (RSS)