DID Resolution
Also called resolving a DID, DID resolver
Resolution is the step that turns a DID into something useful: hand over the identifier, get back its DID Document, the public keys and service endpoints behind it. It's the DID-world equivalent of a DNS lookup turning a domain name into an IP address, except there's no single central registry doing the work; each method resolves against whatever system actually backs it, a blockchain, a web server, a peer-to-peer network, whatever the method specifies.
Because every method resolves differently, client software needs a common interface so it doesn't have to hand-roll bespoke code per method. That's what DIF's Universal Resolver provides: one API in front of many method-specific resolver "drivers." Solidus is not plugged into it yet, resolving a did:solidus DID today means calling Solidus's own endpoint directly.
Every did:solidus DID Document lives in the chain's state tree, so resolution is a plain read, no transaction, no fee, no waiting on block confirmation:
curl -X POST https://rpc.solidus.network \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"method": "solidus_didResolve",
"params": ["did:solidus:testnet:46Hzv2Ek4MXwj1Kenvix4tWCPr1J"],
"id": 1
}'
One behavior worth knowing before you swap in your own identifier: a DID that has never been anchored on the chain resolves to "result": null rather than an error: a made-up DID and a missing one look identical from the outside.
Where it comes from
The abstract resolution algorithm and the driver-interface pattern come from the W3C DID Working Group (the DID Resolution spec) and from DIF (the Universal Resolver). Solidus wrote the resolver that answers for its own method, an implementation of someone else's interface, not a new one.
Solidus status
Shipped, testnet-live. Any DID under did:solidus resolves today against the public rpc.solidus.network endpoint. It is not yet reachable through DIF's Universal Resolver alongside other methods, and there is no mainnet resolver.
Proof you can run yourself: the curl command above, verbatim, on your own machine, no account, no API key.
Where it comes from
Someone else specified this. Solidus wrote an implementation of it.
The abstract resolution algorithm and metadata shape come from the W3C DID Working Group's DID Resolution specification, a companion document to DID Core that is still a working/group draft rather than a full Recommendation. DIF's Universal Resolver project separately defines a shared driver interface so one client can resolve DIDs across many methods. Solidus wrote its own resolution endpoint for its own method: we did not design the resolution algorithm, and we are not (yet) integrated into the Universal Resolver.
How to check this
Running in production today.
curl -X POST https://rpc.solidus.network -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","method":"solidus_didResolve","params":["did:solidus:testnet:46Hzv2Ek4MXwj1Kenvix4tWCPr1J"],"id":1}'