5 releases (breaking)

Uses new Rust 2024

0.6.0 Dec 14, 2025
0.4.0 Oct 22, 2025
0.3.0 Jun 19, 2025
0.2.0 Nov 7, 2024
0.1.0 Oct 21, 2024

#837 in Cryptography


Used in 4 crates

MIT/Apache

54KB
901 lines

xdid

Simple DID library.

Example

use xdid::{resolver::DidResolver, methods::key::{p256::P256KeyPair, DidKeyPair, PublicKey}};

#[tokio::main]
async fn main() {
    // Generate a new did:key.
    let keys = P256KeyPair::generate();
    let did = keys.public().to_did();

    assert!(did.to_string().starts_with("did:key:zDn"));

    // Resolve the DID document.
    let resolver = DidResolver::new().unwrap();
    let document = resolver.resolve(&did).await.unwrap();

    assert_eq!(document.id, did);
}

Dependencies

~1–19MB
~228K SLoC