Cargo Features

[dependencies]
oxirs-did = { version = "0.2.1", default-features = false, features = ["keygen", "did-key", "did-web", "did-ebsi", "did-ethr", "did-ion", "vc-data-model-2", "key-management", "bbs-plus", "zkp"] }
default = bbs-plus, did-ethr, did-ion, did-key, vc-data-model-2, zkp

These default features are set whenever oxirs-did is added without default-features = false somewhere in the dependency tree.

keygen

keygen: enables RSA key-pair generation (uses the rsa crate; not needed for signing/verification which always go through ring).

Enables rsa

rsa is only used for RSA key *generation* (keygen feature).
All signing and verification use ring (constant-time, RUSTSEC-2023-0071 free).

did-key default
did-web = reqwest

Affects did_web::DidWebMethod, methods::did_web

did-ebsi = reqwest
did-ethr default

Affects methods::did_ethr

did-ion default

Affects methods::did_ion

vc-data-model-2 default
signed-graphs key-management
bbs-plus default

Affects oxirs-did::signatures

zkp default

Affects oxirs-did::zkp

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

reqwest did-ebsi? did-web?

Enables reqwest

HTTP client (for did:web resolution)