did-scid
Rust implementation of the did:scid (Self-Certifying Identifier) DID method.
A Self-Certifying Identifier (SCID) is a subclass of verifiable identifier that is cryptographically verifiable without relying on any third party, because the identifier is cryptographically bound to the keys from which it was generated.
Installation
[]
= "0.1"
Feature Flags
| Feature | Default | Description |
|---|---|---|
did-webvh |
Yes | Verifiable History via WebVH |
did-webs |
No | KERI AIDs via did:webs (did:scid:ke:1) |
did-cheqd |
Yes | Verifiable History via Cheqd |
Capabilities
did:scid:vh:1— Verifiable History- WebVH backend
- Cheqd backend
did:scid:ke:1— a KERI AID via did:webs (requires thedid-websfeature)- Peer-level
did:scidimplementations
⚠️ The did:scid method type registry (Appendix A of the specification) is still marked TODO, and
keis listed there as a proposed entry rather than a registered one. It is implemented because did:webs is named explicitly as a supported verification metadata format, but the code could change before the registry is settled.
The SCID sits in a different place per format
did:webvh puts the SCID first; did:webs puts the AID last, because
the AID is the final path element of the URL its artifacts are served from:
did:scid:vh:1:<scid>?src=example.com/dids -> did:webvh:<scid>:example.com:dids
did:scid:ke:1:<aid>?src=example.com/dids -> did:webs:example.com:dids:<aid>
Specification
Related Crates
affinidi-did-common— DID Document types (dependency)affinidi-did-resolver-cache-sdk— Resolver SDK (uses this via feature flag)
Contributing
Head over to our CONTRIBUTING guidelines.