Standards registry
What DID.is implements, how far, and where it stops. When a mechanism is not implemented, results say so — they never fall back to a guess.
Ratified standards from official international bodies (e.g. W3C Recommendation, IETF RFC).
W3C Candidate Recommendation Draft undergoing implementation testing (DID Resolution v1 · 1 Oct 2026).
Consensus specifications from industry working groups (DIF, W3C CCG, MCP, A2A).
DID.is proprietary formats under active evaluation (Delegation Receipt v1).
| Area | Specification | Normative Status | Status | Scope | Limits |
|---|---|---|---|---|---|
| Identifiers | W3C DID Core 1.1 — syntax | Recommendation | implemented | DID and DID URL ABNF, method-name rules, idchar/pct-encoding, 4 KiB cap | Strict parsing precedes every network operation. |
| Resolution | DID Resolution v1 — HTTPS binding (1 Oct 2026) | Candidate Rec Draft | implemented | /1.0/identifiers, Accept negotiation (application/did-resolution, application/did), RFC 9457 errors, spec status codes, 410 for deactivated DIDs | W3C Candidate Recommendation Draft (1 Oct 2026). Resolution options beyond noCache and did:webvh version selectors are not implemented. |
| Resolution | DID URL dereferencing | Candidate Rec Draft | partial | Fragments, ?service= with relativeRef, versionId/versionTime/versionNumber | Defined in DID Resolution v1 §Dereferencing. DID URL paths return FEATURE_NOT_SUPPORTED. |
| Methods | did:key | Community Spec | implemented | Ed25519, X25519 (keyAgreement only), P-256, secp256k1 with point validation; Multikey output | W3C CCG Community Group Report. P-384, P-521, BLS12-381 and RSA keys are expressed but reported UNSUPPORTED. |
| Methods | did:jwk | Community Spec | implemented | use=sig/enc relationships, private-member rejection, point validation | W3C CCG Community Group Report. RSA and other kty values resolve with UNSUPPORTED key evidence. |
| Methods | did:web | Community Spec | implemented | IDNA hosts, ports, paths; IP literals, userinfo and dot segments rejected; id must equal the DID | W3C CCG Community Group Report. No verifiable history exists for did:web; DID.is records observations only. |
| Methods | did:webvh 1.0 | Community Spec | implemented | SCID, entry-hash chain, eddsa-jcs-2022 proofs by authorised update keys, pre-rotation, portability, deactivation, witness thresholds | DIF Community Specification. Witness thresholds checked for selected version; implicit #files/#whois services not injected. |
| Proofs | Data Integrity EdDSA Cryptosuites v1.0 | Recommendation | implemented | eddsa-jcs-2022 (W3C test vector B.3 in CI) | W3C Recommendation. eddsa-rdfc-2022 requires RDF canonicalization and is reported UNSUPPORTED. |
| Proofs | Data Integrity ECDSA Cryptosuites v1.0 | Recommendation | partial | ecdsa-jcs-2019 with P-256 | W3C Recommendation. P-384, ecdsa-rdfc-2019 and ecdsa-sd-2023 are UNSUPPORTED. |
| Proofs | JOSE (RFC 7515/7518/8037) | Recommendation | implemented | EdDSA, ES256, ES256K; alg none, crit and b64:false refused | IETF Standards Track RFCs. RSA and P-384/P-521 algorithms are UNSUPPORTED. |
| Credentials | VC Data Model 2.0 (and 1.1) | Recommendation | partial | Context/type/subject shapes, validity, issuer-key binding via assertionMethod, duplicate-member rejection | W3C Recommendation. Single supported proof only; claims are issuer assertions. Schema validation and full JSON-LD semantics are not implemented. |
| Credentials | VC-JOSE-COSE / VC-JWT 1.1 | Recommendation | partial | Distinct direct VC 2.0 and legacy vc-claim profiles; registered-claim conflicts and independent JWT time checks | W3C Recommendation. Audience is checked only with expectedAudience; otherwise explicitly not verified. SD-JWT VC and COSE are unsupported. |
| Credentials | Bitstring Status List v1.0 (2025-05-15) | Recommendation | partial | Verified list proofs, types, validity, purpose membership, 131072-entry minimum, range checks, fail-closed | W3C Recommendation (15 May 2025). At most 8 entries; single-bit revocation/suspension only. StatusList2021 compatibility targets the 2023 Working Draft. |
| Linkage | DIF Well Known DID Configuration v1.0 | Community Spec | implemented | JWT and Data Integrity linkage credentials, exact-origin match, issuer = subject = DID | DIF specification. JsonWebSignature2020 / Ed25519Signature2018 proofs are UNSUPPORTED (RDF). |
| Transport | TLS evidence | Recommendation | implemented | Leaf certificate actually presented (subject, issuer, validity, SAN, fingerprint) — validated by rustls + webpki | IETF RFC standards (RFC 8446 / RFC 5280). Negotiated TLS version is not exposed by the HTTP stack and is not claimed. |
| Agents | Model Context Protocol 2026-07-28 | Community Spec | implemented | Streamable HTTP, server/discover, MCP-Protocol-Version / Mcp-Method headers, SSE responses, pagination; legacy initialize fallback | Anthropic / Open community protocol. OAuth-protected servers are reported, not accessed. Side-effect classes are heuristics. |
| Agents | A2A Protocol 1.0 | Community Spec | implemented | Agent card discovery, v1.0 shape, signatures[] over JCS via DID kid or jku | Agent2Agent community protocol. Producers that strip defaults before signing may not verify. |
| Agents | DID.is Delegation Receipt v1 | Experimental | implemented | JWS receipts, capabilityDelegation keys, prf hash linkage, attenuation, acyclicity, depth ≤ 8 | A DID.is format, not a ratified standard; documented in docs/API_CONTRACT.md. |
| Canonicalization | RFC 8785 JCS | Recommendation | implemented | UTF-16 ordering, binary64 ECMAScript number serialization, strict raw JSON decoding | IETF Standards Track RFC. Finite Appendix B vectors and independent numeric VC/webvh/A2A fixtures tested. |
| Canonicalization | RDF Dataset Canonicalization (RDFC-1.0) | Recommendation | unsupported | — | W3C Recommendation. Suites that depend on it are always reported UNSUPPORTED, never VALID or INVALID. |
| Errors | RFC 9457 Problem Details | Recommendation | implemented | Structured machine-readable errors across all daemon and HTTP endpoints | IETF Standards Track RFC. W3C-defined errors use https://www.w3.org/ns/did# URIs with spec status codes. |
| Keys | RFC 7517 JWK / RFC 7638 / Multikey | Recommendation | implemented | Ed25519, X25519, P-256, secp256k1 key representations and fingerprints | Point validation enforced on curve point deserialization. |
DID Resolution v1 · HTTPS binding checks
Our own black-box checks against the production API, one per clause, each with the command to reproduce it. They are not the official W3C test-suite report and claim no more than what is listed here.
| Clause | Check | Expected | Observed | Result |
|---|---|---|---|---|
| HTTPS binding · resolve | Resolution result for a valid DIDReproducecurl -s -H 'Accept: application/did-resolution' 'https://did.is/api/1.0/identifiers/did:key:z6MkpTHR8VNsBxYAAWHut2Geadd9jSwuBV8xRoAnwWsdvktH' | 200 | 200 | pass |
| HTTPS binding · representation | DID document only when Accept: application/didReproducecurl -s -H 'Accept: application/did' 'https://did.is/api/1.0/identifiers/did:key:z6MkpTHR8VNsBxYAAWHut2Geadd9jSwuBV8xRoAnwWsdvktH' | 200 | 200 | pass |
| HTTPS binding · encoding | Percent-encoded DID decoded exactly onceReproducecurl -s -H 'Accept: application/did-resolution' 'https://did.is/api/1.0/identifiers/did%3Akey%3Az6MkpTHR8VNsBxYAAWHut2Geadd9jSwuBV8xRoAnwWsdvktH' | 200 | 200 | pass |
| DID URL dereferencing · fragment | Fragment selects a verification methodReproducecurl -s -H 'Accept: application/did-resolution' 'https://did.is/api/v1/dereference/did:key:z6MkpTHR8VNsBxYAAWHut2Geadd9jSwuBV8xRoAnwWsdvktH%23z6MkpTHR8VNsBxYAAWHut2Geadd9jSwuBV8xRoAnwWsdvktH' | 200 | 200 | pass |
| Errors · invalidDid | Malformed DID → INVALID_DIDReproducecurl -s -H 'Accept: application/did-resolution' 'https://did.is/api/1.0/identifiers/did:key:notvalid' | 400 | 400 | pass |
| Errors · invalidDid | Uppercase method name rejectedReproducecurl -s -H 'Accept: application/did-resolution' 'https://did.is/api/1.0/identifiers/did:Xkey:abc' | 400 | 400 | pass |
| Errors · methodNotSupported | Unsupported method → METHOD_NOT_SUPPORTEDReproducecurl -s -H 'Accept: application/did-resolution' 'https://did.is/api/1.0/identifiers/did:example:123' | 501 | 501 | pass |
| Errors · representationNotSupported | Unsatisfiable Accept → 406Reproducecurl -s -H 'Accept: image/png' 'https://did.is/api/1.0/identifiers/did:key:z6MkpTHR8VNsBxYAAWHut2Geadd9jSwuBV8xRoAnwWsdvktH' | 406 | 406 | pass |
| Errors · invalidDidDocument | Non-JSON did:web document is not acceptedReproducecurl -s -H 'Accept: application/did-resolution' 'https://did.is/api/1.0/identifiers/did:web:did.is:conformance-missing' | 500 | 500 | pass |
Source: scripts/conformance/w3c-binding.mjs, re-run before every release. Spec: W3C Candidate Recommendation Draft, 1 Oct 2026.