[OpenID] Recycling OpenIDs (Was: What's broken in OpenID 2.0? (IIW session))
Martin Atkins
mart at degeneration.co.uk
Fri May 11 17:51:39 UTC 2007
John Panzer wrote:
>
> And believe me, AOL is very concerned about recycling and the issues
> therein. We of course have a globally unique identifier that's used
> internally in exactly the way described above; this lets you
> disambiguate whether example.org/fred is the same fred as last year or a
> new fred. For policy reasons we can't expose that GUID, but perhaps a
> hash(GUID,RP identifier) would be perfectly fine to expose in a standard
> "permaGUID" attribute.
>
> Yes, this doesn't help with disambiguating things like authors of blog
> posts in archives. But there datestamps are usually available.
>
An identifier plus a timestamp alone don't really help you much, because
you probably don't know at what point in time the identifier ceased to
be one person and started to be another.
This problem is really in two halves, with different needs each:
A) HTTP URLs for authentication. This is to do with preventing a
subsequent identifier owner from accessing data created by prior owners.
B) HTTP URLs for identification. This is to do with figuring out who
actually did something given only an OpenID identifier as attribution.
Email addresses are in much the same situation (they're often used as
identifiers, and they're often recycled).
When email addresses are used for authentication, they're often paired
up with a password to solve problem A. However, subsequent owners of an
email address are often able to recover passwords by having them sent to
the email account, so email fails need A.
When email addresses are used for identification, we are stuck using
timestamps and knowledge obtained from elsewhere about when the
identifier changed hands in order to figure out who posted something.
Email fails need B also.
Therefore we have basically two choices:
* Continue with the protocol as it currently stands, in which case we
are no better but no worse than email addresses. Note that email
addresses as identifiers have been around for much longer than OpenID
identifiers and yet in practice it hasn't posed much of a problem.
* Invent some mechanism for distinguishing old user and new user when
performing OpenID authentication, at the cost of an inconsistent user
experience (because old RPs won't support it) and a more complicated
protocol. We still won't have solved problem B unless we can display the
extra disambiguation token, but if you're going to change what's
displayed then why not just make the URL different?
(It's interesting to note as an aside that XRI solves problem A but it
does not solve problem B unless the canonical i-number is displayed
alongside the i-name when attributing a user. We could probably learn
some things from XRI synonyms when it comes to solving problem A.)
More information about the general
mailing list