# did-scid
[](https://crates.io/crates/did-scid)
[](https://docs.rs/did-scid)
[](https://github.com/affinidi/affinidi-tdk-rs/tree/main/crates/affinidi-did-resolver/affinidi-did-resolver-methods/did-scid)
[](https://github.com/affinidi/affinidi-tdk-rs/blob/main/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
```toml
[dependencies]
did-scid = "0.1"
```
## Feature Flags
| `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:
```text
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](https://lf-toip.atlassian.net/wiki/spaces/HOME/pages/88572360/DID+SCID+Method+Specification)
## Related Crates
- [`affinidi-did-common`](../../affinidi-did-common/) — DID Document types (dependency)
- [`affinidi-did-resolver-cache-sdk`](../../affinidi-did-resolver-cache-sdk/) — Resolver SDK (uses this via feature flag)
## Contributing
Head over to our
[CONTRIBUTING](https://github.com/affinidi/affinidi-tdk-rs/blob/main/CONTRIBUTING.md)
guidelines.
## License
[Apache-2.0](https://github.com/affinidi/affinidi-tdk-rs/blob/main/LICENSE)