While the W3C did:web method is simple and easy to implement, many real-world implementations assume that W3C Verifiable Presentations (VPs) are ephemeral – needing to be verified at time of receipt. But what happens when we have a highly regulated industry such as the U.S. pharmaceutical supply chain, where a VP’s historical validity may need to be checked for years after its creation?
The did:webplus method is an effort to create a balanced, fit-for-purpose extension of did:web that provides stronger guarantees with a moderate implementation lift. Read more below and join us on GitHub with your feedback and pull requests!
The did:web method makes straightforward use of familiar tools across a wide range of use cases. However, heavily regulated ecosystems such as the pharmaceutical supply chain demand additional guarantees of immutability and auditability, including seamless key rotation and a key usage history. did:webplus is a proposed fit-for-purpose DID method for use within the pharma supply chain credentialing community, with an eye towards releasing it into the wild for those communities that are similarly situated.
The did:webplus specification gives all details on all components of did:webplus.
Here are the two "deep dive" presentations given at the DIF DID Methods Workgroup for did:webplus:
- Deep Dive 1 with slides.
- Deep Dive 2 with slides.
- [ghcr.io/ledgerdomain/did-webplus-cli] -- CLI tool for client-side operations (e.g. DID resolution, DID creation, etc). Source and readme: did-webplus-cli
- [ghcr.io/ledgerdomain/did-webplus-urd] -- Universal Resolver Driver (URD) service. Source and readme: did-webplus-urd
- [ghcr.io/ledgerdomain/did-webplus-vdg] -- Verifiable Data Gateway (VDG) service. Source and readme: did-webplus-vdg
- [ghcr.io/ledgerdomain/did-webplus-vdr] -- Verifiable Data Registry (VDR) service. Source and readme: did-webplus-vdr
Component documentation:
did-webplusCLI tool (reference implementation for client-side operations)did:webplusVerifiable Data Registry (VDR) service (reference implementation)did:webplusVerifiable Data Gateway (VDG) service (reference implementation)
- Creating and Updating a DID
- DID Microledger
- Hash Function Selection
- Signature Generation With Witness
To run the data model tests, which include printouts demonstrating various features and data structures, run
cargo test -p did-webplus-core --all-features -- --nocapture
The full suite of unit and integration tests for the whole codebase can be run via
SQLX_OFFLINE=true cargo test --workspace --all-features
Some of the log output will be error messages that are expected during the course of negative tests.