Cargo Features

[dependencies]
ssi-crypto = { version = "0.2.1", default-features = false, features = ["ed25519", "secp256k1", "secp256r1", "secp384r1", "bbs", "ripemd-160", "keccak", "ring"] }
default = ripemd-160, secp256k1, secp256r1

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

ed25519 = ed25519-dalek
secp256k1 default ripemd-160 = getrandom, k256, keccak

Affects keccak::hash_public_key, keccak::hash_public_key_eip55

secp256r1 default = p256
secp384r1 = p384
bbs = getrandom, hkdf, pairing-plus, rand_old, sha2_old

Enables bbs

Affects signatures::bbs

ripemd-160 default = ripemd160, secp256k1

Affects hashes::ripemd160

keccak secp256k1 = keccak-hash

Affects hashes::keccak

ring

Enables ring ^0.16

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.

k256 secp256k1
p256 secp256r1
p384 secp384r1?
hkdf bbs?

Enables hkdf ^0.8

rand_old bbs?

Enables rand ^0.7

getrandom bbs? secp256k1

Enables getrandom

Required for wasm targets.

sha2_old bbs?

Enables sha2 ^0.8

keccak-hash keccak?

Enables keccak-hash ^0.7

ed25519-dalek ed25519?
ripemd160 ripemd-160

Enables ripemd160 ^0.9

pairing-plus bbs?