Identity
Last updated
Last updated
Each participant (even mediators, registries, and namespaces) in the Decentrl network is identified by a . A DID is a unique identifier, that can be resolved to a public that contains identities and public info such as public encryption keys, services (more on that later), and alias.
Because DIDs are decentralized identifiers, their underlying DID documents can be hosted anywhere, and therefore different types DIDs need different DID resolvers in order to fetch the identity's public DID document. The Decentrl network is based on the web did method that is defined .
Example of what a Decentrl DID looks like:
This DID resolves to .
The DID document is the main part of the Decentrl network, as all network participants use each other's documents to know how to communicate with each other. The document is constructed out of the following parts:
An optional property that defines what you wish to be called. This property is useful for clients to provide a nice readable name instead of DID identifier.
A property that defines ways to communicate with the DID. Decentrl has predefined a few different service types that will enable you to communicate using Decentrl protocol.
DecentrlMediator Used by mediators to define how other network participants can connect to them and which features they have available. The default communication channel between mediators and identities is over websockets and using encrypted payloads. The routingKeys define which keys should be used for encrypted communication.
DecentrlMediatorRegister Used by mediators to define an endpoint on which identities can register.
DecentrlMediatorClient Used by identities to define on which mediators they have registered.
DecentrlRegistry Used by registries to define an endpoint through which identity can register.
DecentrlNamespace Used by namespaces to define an endpoint through which identity can register.
[TBD]
Verification methods property defines public keys that can be used to enable E2E encrypted communication with an identity. By default, Decentrl network supports EC P-256 keys in JWK format to enable E2EE communication.
Example of a public key defined under verification methods
Each identity participant in the Decentrl network should have at least two sets of keys available. An encryption key pair and signing key pair. The encryption public key should be referenced under the keyAgreement property and the signing public key should be referenced under the authentication property.