This page (revision-1) was last changed on 29-Nov-2024 16:16 by UnknownAuthor

Only authorized users are allowed to rename pages.

Only authorized users are allowed to delete pages.

Page revision history

Version Date Modified Size Author Changes ... Change note

Page References

Incoming links Outgoing links

Version management

Difference between version and

At line 1 added 86 lines
!!! Overview
[{$pagename}] is an digital [Distributed|Distributed system] [Identity Document]
!! [W3C Decentralized Identifiers]
[{$pagename}] is a set of [data] that describes a [Decentralized Identifier], including mechanisms, such as [Public Keys] and [pseudonymous] [biometrics], that an [entity] can use to [authenticate] itself as the [W3C Decentralized Identifiers]. A [{$pagename}] may also contain other [attributes] or [claims] describing the [entity]. These documents are [graph]-based [data] structures that are typically expressed using [JSON-LD], but may be expressed using other compatible [graph]-based data formats.
[{$pagename}] is a component of the [W3C Decentralized Identifiers] and is the [resource] to which the [DID] [URI]
The combination of a [{$pagename}] and its associated [DID Document] forms the root record for a [Decentralized Identifier].
[{$pagename}] [MUST] be a single [JSON Object] conforming to [RFC 7159]. For purposes of this version of the DID specification, the format of this [JSON Object] is specified in [JSON-LD], a format for mapping JSON data into the [RDF] semantic graph model as defined by [JSON-LD]. Future versions of this specification [MAY] specify other semantic [graph] formats for a [{$pagename}] such as [JXD] ([JSON XDI Data]), a serialization format for the [XDI] [graph] model.
The following sections define the properties of this [{$pagename}], including whether these properties are required or optional.
* [DID Context]
* [DID Subject]
* [Public Keys] - lists public keys whose corresponding private keys are controlled by the entity identified by the DID ("owned" public keys). However, a DID Document MAY also list "non-owned" public keys.
** [MAY] include a publicKey property.
** The value of the publicKey property should be an array of [Public Keys].
** [MUST] include id and type properties, and exactly one value property.
** [MAY] include an owner property, which identifies the [entity] that controls the corresponding [Private Key]. If this property is missing, it is assumed to be the [DID Subject].
** The value property of a public key [MAY] be publicKeyPem, publicKeyJwk, publicKeyHex, publicKeyBase64 or similar, depending on the format and [encoding] of the [Public Key]. A [registry] of key types and formats is available in Appendix A. Registries .
* [DID Authentication]
** [MAY] include an [authentication] property.
** The value of the [authentication] property should be an array of proof mechanisms ([{$applicationname}] assumes these are [Authentication Factors]).
** Each proof mechanism [MUST] include the type property.
** Each proof mechanism [MAY] embed or reference a [Public Key]
* [Authorization] and [Delegation] - Since [Authorization] and [Delegation] are typically implemented by the underlying [Distributed Ledger Technology], each DID Method specification is expected to detail how authorization and delegation are performed for the [Distributed Ledger Technology].
* [Service Endpoints|DID Service Endpoint]
** [MAY] include a service property.
** The value of the service property should be an array of service endpoints.
** [MUST] include id, type, and serviceEndpoint properties, and [MAY] include additional properties.
** [protocol] [SHOULD] be published in an open standard specification.
** The value of the serviceEndpoint property [MUST] be a [JSON-LD] object or a valid [URI] conforming to [RFC 3986] and normalized according to the rules in section 6 of [RFC 3986] and to any normalization rules in its applicable [URI] scheme specification.
* Created
** [MAY] have one property representing a creation [timestamp]. It is [RECOMMENDED] to include this property.
** The key for this property [MUST] be created.
** The value of this key [MUST] be a valid [XML] [DateTime] value as defined in section 3.3.7 of W3C [XML Schema Definition Language] ([XSD]) 1.1 Part 2: Datatypes [XMLSCHEMA11-2].
** This datetime value [MUST] be normalized to UTC 00:00 as indicated by the trailing "Z".
** Method specifications that rely on DLTs [SHOULD] require time values that are after the known "median time past" (defined in Bitcoin BIP 113), when the [DLT] supports such a notion.
* Updated
** [MAY] have one property representing a creation [timestamp]. It is [RECOMMENDED] to include this property.
** The key for this property [MUST] be created.
** The value of this key [MUST] be a valid [XML] [DateTime] value as defined in section 3.3.7 of W3C [XML Schema Definition Language] ([XSD]) 1.1 Part 2: Datatypes [XMLSCHEMA11-2].
** This datetime value [MUST] be normalized to UTC 00:00 as indicated by the trailing "Z".
** Method specifications that rely on DLTs [SHOULD] require time values that are after the known "median time past" (defined in Bitcoin BIP 113), when the [DLT] supports such a notion.
* Proof
** [MAY] have exactly one property representing a proof.
** The key for this property [MUST] be proof.
** The value of this key [MUST] be a valid [LD-PROOFS] as defined by [Linked Data Proofs].
!! More Information
There might be more information for this subject on one of the following:
[{ReferringPagesPlugin before='*' after='\n' }]
----
* [#1] - [W3C Decentralized Identifiers (DIDs)|https://w3c-ccg.github.io/did-spec/|target='_blank'] - based on information obtained 2018-11-29