Copyright © 2024 the Contributors to the Digital Identities Specification, published by the Web Platform Incubator Community Group under the W3C Community Contributor License Agreement (CLA). A human-readable summary is available.
This document specifies an API to allow user agents to mediate access to, and representing, a verifiably-issued digital identity (e.g. a government issued digital driver's license, a passport issued by a country, a student card or diploma issued by a university, an employee card issued by a company, a passenger's boarding pass issued by an airline, a profile issued by an online social network, membership cards, vaccination records, etc) license). The API builds on Credential Management Level 1 as a means to request a digital identity from the user agent or underlying platform.
This specification was published by the Web Platform Incubator Community Group. It is not a W3C Standard nor is it on the W3C Standards Track. Please note that under the W3C Community Contributor License Agreement (CLA) there is a limited opt-out and other conditions apply. Learn more about W3C Community and Business Groups.
This is an unofficial proposal.
GitHub Issues are preferred for discussion of this specification.
TBW
A digital representation of an identity credential, such as a digital driver's license or passport, embodying verifiable claims about an individual's identity. Issued by a trusted issuer, it enables authenticated interactions.
A specialized type of credential corresponding to the real-world identity of a person enabling a verifier to make authentication decisions based on identity statements verifiably made by an issuer.
The following items are within the scope of this specification:
The following items are out of scope:
WebIDLpartial dictionary CredentialRequestOptions {
sequence<IdentityRequestDetails> providers;
};
The providers member
is a sequence of request protocol that can
potentially be handled by a user's selected identity credential provider.
The IdentityRequestDetails dictionary is used to specify a request protocol and structured request, which the user agent
MAY match against a identity credential provider.
WebIDLdictionary IdentityRequestDetails {
required DOMString protocol;
required DOMString request;
};
The protocol member
denotes the request protocol when requesting an
identify credential.
The protocol member's value is be one of the
well-defined keys defined in 9.
Registry of protocols for requesting digital identity or any other custom
one.
The request member is
the request to be handled by the user's selected identity credential provider.
The Identity interface is used in the API to represent
credentials that are classified as an identity credential.
WebIDL[Exposed=Window]
interface Identity : Credential {
// Future things...
};
The DigitalIdentity interface represents a digital identity.
WebIDL[Exposed=Window, SecureContext]
interface DigitalIdentity : Identity {
readonly attribute DOMString protocol;
readonly attribute DOMString data;
};
The protocol member is the
request protocol that was used to request the
identity credential.
The data member is the
credential's encrypted data.
The following is the registry of request protocols that are supported by this specification.
It is expected that this registry will be become a W3C registry in the future.
To be included in the registry...
We need to come up with a registry governance and inclusion criteria.
For inclusion, at a minimum, there should be implementation support, and we talked about having some privacy checks too.
User agents MUST support the following request protocols:
| Protocol identifier | Description | Specification |
|---|---|---|
| Coming soon... | ||
As well as sections marked as non-normative, all authoring guidelines, diagrams, examples, and notes in this specification are non-normative. Everything else in this specification is normative.
The key words MAY and MUST in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.
Referenced in:
Referenced in:
Referenced in:
Referenced in:
Referenced in:
Referenced in: