2 unstable releases

0.2.0 Nov 7, 2024
0.1.0 Oct 21, 2024

#31 in #resolver

Download history 192/week @ 2024-10-19 16/week @ 2024-10-26 105/week @ 2024-11-02 21/week @ 2024-11-09 8/week @ 2024-11-16 3/week @ 2024-11-23 13/week @ 2024-11-30 24/week @ 2024-12-07 7/week @ 2024-12-14

91 downloads per month
Used in dwn-core

MIT/Apache

33KB
724 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);
}

lib.rs:

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–13MB
~152K SLoC