DID Resolution Topics

Markus Sabadello, Danube Tech (https://danubetech.com), Vienna, 20th September 2018

We know that DID Resolution is the process of obtaining the DID Document associated with a DID. Sounds simple, but what are some of the deeper questions and topics to be considered here?

These topics should be addressed in a future DID Resolution specification. Some of the topics will be important for DID Document Interoperability.

Resolver Architecture

Most DID Resolution implementations envision an architecture where a common base component invokes a set of "drivers" or "plugins" or "modules" to implement method-specific functionality, e.g. see the DIF Universal Resolver, Digital Bazaar's did-client, or the uPort JavaScript DID Resolver. We envision such "DID Resolver" tools to become as central to SSI infrastructure as DNS is for the web today.

Topics:

Input / Output

We can think of DID Resolution as a function with the DID as input and DID Document as output. It may make sense however to have additional input parameters and additional output data of the DID Resolution process.

Topics:

HTTP Binding

Even though an application or service should ideally use a "built-in" (natively linked) DID Resolver, we also envision an HTTP Binding for DID Resolution functionality.

Topics:

Resolution Logic

Most DID Resolution logic is method-specific and happens in the drivers, but there are also some topics to consider that apply to DID Resolution in general.

Non-DID Identifiers

While most attention right now is focused on DIDs, there are also many other kinds of identifiers, some of which can and some of which can not be considered decentralized (see here). We can discuss whether DID Resolution and resolution of non-DID identifiers should be handled by the same kind of tool, or whether implementations should keep those separate.

Topics:

DID Revocation

The DID spec says that all DID methods MUST specify how a DID can be revoked on the target system.

Topics:

DID Document Versioning

The DID spec says that all DID methods MUST specify how a DID can be updated on the target system.

Topics:

Caching

During the DID Resolution process, caching may occur in various ways.

Topics:

Other Topics?

Additional topics/issues related to DID Resolution can be raised here.