46
What do OpenID, Higgins, I- Names, and XDI Have in Common? An OASIS Webinar on XRI and XRDS May 6, 2008 Gabe Wachob, XRI TC Co-Chair Paul Trevithick, The Higgins Project Drummond Reed, XRI TC Co-Chair John Bradley, ooTao, OpenID Les Chasen, NeuStar XRI GRS Markus Sabadello, XDI.org

What do OpenID, Higgins, I-Names, and XDI Have in Common?

  • Upload
    bethan

  • View
    36

  • Download
    0

Embed Size (px)

DESCRIPTION

What do OpenID, Higgins, I-Names, and XDI Have in Common?. An OASIS Webinar on XRI and XRDS. May 6, 2008. What do OpenID, Higgins, i-names, and XDI have in common? They all use two new OASIS technologies you may not even have heard of yet. - PowerPoint PPT Presentation

Citation preview

Page 1: What do OpenID, Higgins, I-Names, and XDI Have in Common?

What do OpenID, Higgins, I-Names, and XDI Have in Common?An OASIS Webinar on XRI and XRDS

May 6, 2008

Gabe Wachob,XRI TC Co-Chair

Paul Trevithick,The Higgins Project

Drummond Reed, XRI TC Co-Chair

John Bradley,ooTao, OpenID

Les Chasen,NeuStar XRI GRS

Markus Sabadello,XDI.org

Page 2: What do OpenID, Higgins, I-Names, and XDI Have in Common?

What do OpenID, Higgins, i-names, and XDI have in common?

They all use two new OASIS technologies you may not even have heard of yet.

How did these specifications already become key building blocks of the Internet identity layer? What problems do they solve? Where do they fit with the work of other OASIS Technical Committees?

That’s what we’ll cover today...

Page 3: What do OpenID, Higgins, I-Names, and XDI Have in Common?

OASIS XRI Technical CommitteeFormed January 2003

Page 4: What do OpenID, Higgins, I-Names, and XDI Have in Common?

XRI (Extensible Resource Identifier)

A new type of Internet identifier (URI) designed expressly for digital identity

An open standard for abstract structured identifiers Abstract, i.e., identifiers upon which

discovery can be performed Structured, i.e., a syntactic framework for

expressing identifiers – “XML for identifiers”

Page 5: What do OpenID, Higgins, I-Names, and XDI Have in Common?

XRDS (Extensible Resource Descriptor Sequence)

A simple, extensible service discovery format for XRIs or URLs

The logical equivalent of a DNS resource record at the XRI layer of identification

The discovery format used by OpenID 2.0, OAuth, and Higgins

Page 6: What do OpenID, Higgins, I-Names, and XDI Have in Common?

Local Path/Query

IP Address

Domain Name

URI/IRI

AbstractIdentifier

Layer

ReassignableXRI “i-names”

PersistentXRI “i-numbers”

XRDSDocu-ment

XRDSDocu-ment

XRDSResolution

TN(Tele-phone

Number)

Otherconcreteidentifier

types

ConcreteIdentifier

Layer

Synonyms

Page 7: What do OpenID, Higgins, I-Names, and XDI Have in Common?

Examples of XRI i-names

Human-friendly reassignable identifiers=gmw

= 用例 @boeing

@cordance*drummond.reed

+flower

$xml

Page 8: What do OpenID, Higgins, I-Names, and XDI Have in Common?

Examples of XRI i-numbers

Persistent identifiers (never reassigned)=!7a42.cd93.40f4.18e5

=!7a42.cd93.40f4.18e5!283

@!b3a7.5537.9fea.31ec

+!3792

+!3792!14

Page 9: What do OpenID, Higgins, I-Names, and XDI Have in Common?

Examples of XRI cross-references

Identifiers reused across contexts=(mailto:[email protected])

=(http://equalsdrummond.name)

@(http://boeing.com)

@cordance*(urn:isbn:0-395-36341-1)

+flower*(http://en.wikipedia.org/rose)

Page 10: What do OpenID, Higgins, I-Names, and XDI Have in Common?

Examples of XRIs transformed into URIs

XRI Syntax 2.0 defines a strict trans-formation of an XRI into an IRI and URI

xri://=drummond.reed

xri://=%E7%94%A8%E4%BE%8B

xri://@!b3a7.5537.9fea.31ec!133

xri://=(mailto:[email protected])

xri://@cordance*(urn:isbn:0-395-36341-1)

Page 11: What do OpenID, Higgins, I-Names, and XDI Have in Common?

<XRDS xmlns=“xri://$xrds”> <XRD xmlns=“xri://$xrd*($v*2.0)”> <Query>*example</Query> <Expires>2005-05-30T09:30:10Z</Expires> <ProviderID>xri://=</ProviderID> <EquivID>xri://=example.name</EquivID> <CanonicalID>xri://=!7c4.58ff.7c9a.e285</CanonicalID> <Service priority=“10”> <Type>xri://$res*auth*($v*2.0)</Type> <URI>http://res.example.com/=!7c4.58ff.7c9a.e285/</URI>

</Service> <Service priority=“10”> <Type>http://openid.net/server/1.0</Type> <Type>http://specs.openid.net/auth/2.0/signon</Type> <Path>+openid</Path> <URI>http://authn.example.com/openid/</URI> </Service> </XRD></XRDS>

Query and synonyms

Service #1

Service #2

Example XRDS document

Page 12: What do OpenID, Higgins, I-Names, and XDI Have in Common?

The XRI 2.0 specifications XRI Syntax 2.0

Explicit syntax for reassignable and persistent identifiers

Global context symbols Cross-references for

identifier reuse across contexts

Flexible delegation at all levels of hierarchy

Lossless transformation into IRI and URI forms

XRI Resolution 2.0 HTTP(S)-based

resolution protocol XRDS: simple XML

discovery document format

Synonym management and verification

Service endpoint selection logic

Redirect and Ref processing

Page 13: What do OpenID, Higgins, I-Names, and XDI Have in Common?

Why have XRI and XRDS already become key building blocks of the Internet identity layer?

Page 14: What do OpenID, Higgins, I-Names, and XDI Have in Common?

Not only have XRI and XRDS become an integral part of OpenID 2.0, but the XRI technical community is now a strong part of the OpenID community.

— Bill Washburn Executive Director, OpenID Foundation

Page 15: What do OpenID, Higgins, I-Names, and XDI Have in Common?

XRI and XRDS have become essential elements of the Higgins Project. Without them, we couldn’t fully implement the abstract data model that is the heart of Higgins and the key to user-controlled identity and data sharing.

— Paul Trevithick Higgins Project Lead

Page 16: What do OpenID, Higgins, I-Names, and XDI Have in Common?

Where are XRI and XRDS being used today?

OpenID 2.0 OAuth Discovery Higgins Project XDI.org i-name/i-number registries XDI data sharing

Page 17: What do OpenID, Higgins, I-Names, and XDI Have in Common?

Case Study: the top 3 problems XRI/XRDS solved for OpenID 2.0

Extensible service discovery OpenID recycling Automatic secure resolution

http://middleware.internet2.edu/idtrust/2008/papers/01-reed-openid-xri-xrds.pdf

Page 18: What do OpenID, Higgins, I-Names, and XDI Have in Common?

What is OpenID?

An open community specification for user-centric Internet authentication Based on the concept that users can have

their own globally-resolvable identifiers and OpenID authentication providers

Primary use case: eliminate the need for different usernames and passwords at every website

Page 19: What do OpenID, Higgins, I-Names, and XDI Have in Common?
Page 20: What do OpenID, Higgins, I-Names, and XDI Have in Common?
Page 21: What do OpenID, Higgins, I-Names, and XDI Have in Common?
Page 22: What do OpenID, Higgins, I-Names, and XDI Have in Common?

Relying Party(RP)

User

DiscoveryOpenID Provider

(OP)

2

3

4

1

5XRDS

Document

=drummond.reed

Page 23: What do OpenID, Higgins, I-Names, and XDI Have in Common?

Problem #1:Extensible service discovery OpenID 2.0 need to describe what

versions an OpenID identifier supports Also what OpenID extensions it

supports (SREG, AX, PAPE, etc.) And what other services may be

available (e.g., OAuth, SAML, XDI) And it needed redundant, prioritized

OpenID provider endpoint URLs

Page 24: What do OpenID, Higgins, I-Names, and XDI Have in Common?

Solution: XRDS documents

Simple, standard discovery format Can be hosted on any blog, web

server, IdM system, etc. Easily extensible using new URIs or

XRIs to define service types Can be extended with elements from

any other namespace

Page 25: What do OpenID, Higgins, I-Names, and XDI Have in Common?

<XRDS xmlns=“xri://$xrds”> <XRD xmlns=“xri://$xrd*($v*2.0)”> <Query>*example</Query> <Expires>2005-05-30T09:30:10Z</Expires> <ProviderID>xri://=</ProviderID> <CanonicalID>xri://=!7c4.58ff.7c9a.e285</CanonicalID> <Service> <Type>xri://$res*auth*($v*2.0)</Type> <URI>http://res.example.com/=! 7c4.58ff.7c9a.e285/</URI>

</Service> <Service priority=“10”> <Type>http://openid.net/server/1.0</Type> <Type>http://specs.openid.net/auth/2.0/signon</Type> <Path>+openid</Path> <URI>http://authn.example.com/openid/</URI> <URI>https://secure-authn.example.com/openid/</URI> <openid:delegate>http://example.com/bob</openid:delegate> </Service> </XRD></XRDS>

Page 26: What do OpenID, Higgins, I-Names, and XDI Have in Common?

Problem #2:OpenID recycling With usernames/passwords, usernames

can be recycled The service provider controls the binding

with the credential With OpenID, that’s no longer true

The user controls the binding to the credential!

Losing control of the identifier = losing control of the credential

Page 27: What do OpenID, Higgins, I-Names, and XDI Have in Common?

Solution: persistent synonyms Bind a recyclable OpenID identifier

with a non-recyclable (persistent) identifier, e.g., an XRI i-number

Always authenticate based on the persistent i-number

Treat the recyclable identifier as only a temporary handle for the i-number

The user always stays protected

Page 28: What do OpenID, Higgins, I-Names, and XDI Have in Common?

<XRDS xmlns=“xri://$xrds”> <XRD xmlns=“xri://$xrd*($v*2.0)”> <Query>*example</Query> <Expires>2005-05-30T09:30:10Z</Expires> <ProviderID>xri://=</ProviderID> <CanonicalID>xri://=!7c4.58ff.7c9a.e285</CanonicalID> <Service> <Type>xri://$res*auth*($v*2.0)</Type> <URI>http://res.example.com/=!1234.5678.a1b2.c3d4/</URI>

</Service> <Service> <Type>http://openid.net/openid/1.1</Type> <Type>http://openid.net/openid/2.0</Type> <Path>+openid</Path> <URI>http://authn.example.com/openid/</URI> </Service> </XRD></XRDS>

Page 29: What do OpenID, Higgins, I-Names, and XDI Have in Common?

Problem #3:Automatic secure resolution

OpenID could not specify HTTPS resolution for all OpenID URLs Too many users do not have access to

HTTPS certs or infrastructure Thus the default had to be HTTP This forces users with HTTPS URLs to

type the entire string, e.g., https://my.openid.identifier.tld

Page 30: What do OpenID, Higgins, I-Names, and XDI Have in Common?

Solution:XRI secure resolution As abstract identifiers, XRIs always

map to concrete identifiers This mapping process - XRI resolution -

offers three trusted modes: HTTPS, SAML, or both

So XRI i-names used as OpenIDs can use HTTPS resolution as the default No need for users to know/do anything

Page 31: What do OpenID, Higgins, I-Names, and XDI Have in Common?

XRI and XRDS are also building blocks for other identity solutions OAuth

XRDS discovery format Higgins Project

Context discovery and resolution XDI.org XRI registries

i-name/i-number registries & resolution SAML and Information Cards

Privacy-protected identifier claims

Page 32: What do OpenID, Higgins, I-Names, and XDI Have in Common?

What is the relationship of XRI and XRDS with other OASIS TCs and the IDtrust Member Section?

Page 33: What do OpenID, Higgins, I-Names, and XDI Have in Common?

XDI (XRI Data Interchange)

The XDI controlled data sharing protocol is based entirely on XRIs A globally addressable RDF graph where

the address of every node is an RDF statement structured as an XRI

subject-xri / predicate-xri / object-xri Enables a simple portable authorization

format called XDI link contracts

Page 34: What do OpenID, Higgins, I-Names, and XDI Have in Common?

ORMS (Open Reputation Management Services)

Newest TC in the OASIS IDtrust member section

Will define neutral, vendor-independent specs for exchanging reputation data

XRI and XDI TC members participating XRI for durable subject identifiers XDI for controlled data sharing

Page 35: What do OpenID, Higgins, I-Names, and XDI Have in Common?

PKI-Related TCs Digital Signature Services eXtended (DSS-X)

Advancing new profiles for the DSS OASIS Standard

Enterprise Key Management Infrastructure (EKMI)Defining symmetric key management protocols

Public Key Infrastructure (PKI) AdoptionAdvancing the use of digital certificates as a foundation for managing access to network resources and conducting electronic transactions

Page 36: What do OpenID, Higgins, I-Names, and XDI Have in Common?

Conclusion

Abstract structured identifiers offer 3 key features for the Internet identity layer Simple, safe, strong identifiers Simple, extensible, secure service discovery Interoperability between multiple identity

protocols and frameworks XRI and XRDS are building blocks

everyone can use

Page 37: What do OpenID, Higgins, I-Names, and XDI Have in Common?

Contact us Gabe Wachob, XRI TC Co-Chair

http://xri.net/=gmw [email protected]

Drummond Reed, XRI TC Co-Chair http://xri.net/=drummond.reed [email protected]

Wikipedia http://en.wikipedia.org/XRI http://en.wikipedia.org/XRDS

Page 38: What do OpenID, Higgins, I-Names, and XDI Have in Common?

Learn through the IDtrust Knowledgebase of educational materials and background on the standards

Share news, events, presentations, white papers, product listings, opinions, questions, and recommendations through postings, blogs, forums, and directories.

Collaborate with others online through a wiki interface

http://idtrust.xml.org

Page 39: What do OpenID, Higgins, I-Names, and XDI Have in Common?

Q&A

Page 40: What do OpenID, Higgins, I-Names, and XDI Have in Common?

What is the relationship of XRI to URNs?

Uniform Resource Names are specified by IETF RFC 2141

They are persistent (non-recyclable) identifiers

XRI combines both URNs and HFNs (human-friendly names) in one syntax and resolution protocol

Page 41: What do OpenID, Higgins, I-Names, and XDI Have in Common?

What is the relationship of XRI to the Handle System?

Handle is a persistent object identifier system developed by CNRI

Specified in RFCs 3650, 3651, 3652 Handle does not include HFNs or other

structured identifier features of XRI Handle does not use XML or HTTP for

resolution

Page 42: What do OpenID, Higgins, I-Names, and XDI Have in Common?

Does XRI introduce new Internet namespaces?

Yes. Although it can describe and reuse many types of existing identifiers, it also includes four formal namespaces at the XRI level of identification

= for personal identifiers

@ for organizational identifiers

+ for generic tags

$ for specific tags

Page 43: What do OpenID, Higgins, I-Names, and XDI Have in Common?

Does the XRI TC specify public registry services?

No, the scope of the XRI TC is limited to the technical specifications for XRI and specified XRIs (the $ space)

XDI.org, a member of the XRI TC, offers public XRI registry services

XDI.org is a completely separate non-profit organization

Page 44: What do OpenID, Higgins, I-Names, and XDI Have in Common?

What IPR applies to XRI and XRDS? The TC operates under the OASIS “RF

on Limited Terms” mode (standard royalty-free terms)

This has been mandatory from the TC’s original charter

XDI.org made the initial contribution of IPR for what was then called XNS when the TC was formed in 2003

Page 45: What do OpenID, Higgins, I-Names, and XDI Have in Common?

How does Higgins use XRI and XRDS? Higgins uses an abstract data model to

access data in different contexts (distributed repositories)

XRI is used for addressing contexts and entities within contexts

XRDS is used to resolve the metadata a Higgins component needs to open a Higgins context

Page 46: What do OpenID, Higgins, I-Names, and XDI Have in Common?

What open source implementions of XRI and XRDS are available?

OpenXRI (Java) http://www.openxri.org

Barx (Ruby) http://xrisoft.org

MyXDI (C++) http://www.ootao.com