did-scid 0.2.3

Implementation of did:scid in Rust
Documentation

did-scid

Crates.io Documentation Rust License

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

[dependencies]
did-scid = "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 the did-webs feature)
  • Peer-level did:scid implementations

⚠️ The did:scid method type registry (Appendix A of the specification) is still marked TODO, and ke is 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

DID SCID Method Specification

Related Crates

Contributing

Head over to our CONTRIBUTING guidelines.

License

Apache-2.0