Cargo Features
[dependencies]
snow = { version = "0.9.6", default-features = false, features = ["default-resolver", "nightly", "ring-resolver", "ring-accelerated", "libsodium-resolver", "libsodium-accelerated", "vector-tests", "hfs", "pqclean_kyber1024", "xchachapoly", "risky-raw-split"] }
This is slightly mumbo-jumboey, but in short:
Features with a -resolver suffix simply enables the existence of a specific resolver,
and -accelerated suffix means that this resolver will be the default used by the Builder.
- default = default-resolver
-
The
default-resolver
feature is set by default wheneversnow
is added without
somewhere in the dependency tree.default-features = false - default-resolver default libsodium-accelerated? pqclean_kyber1024? ring-accelerated? xchachapoly? = aes-gcm, blake2, chacha20poly1305, curve25519-dalek, sha2
- nightly
-
Enables simd_opt of blake2 and nightly of subtle
subtle:
DEPRECATED: As of 2.4.1, this feature does nothing.
- ring-resolver ring-accelerated? = ring
- ring-accelerated = default-resolver, ring-resolver
- libsodium-resolver libsodium-accelerated? = byteorder, sodiumoxide
- libsodium-accelerated = default-resolver, libsodium-resolver
- vector-tests
- hfs pqclean_kyber1024?
-
Affects
constants::MAXKEMPUBLEN
,constants::MAXKEMCTLEN
,constants::MAXKEMSSLEN
,params::KemChoice
,params::NoiseParams.kem
,resolvers::CryptoResolver.resolve_kem
,types::Kem
… - pqclean_kyber1024 = default-resolver, hfs, pqcrypto-kyber, pqcrypto-traits
- xchachapoly = chacha20poly1305, default-resolver
- risky-raw-split
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.
- aes-gcm default-resolver
-
Enables aes-gcm
default crypto provider
- chacha20poly1305 default-resolver xchachapoly?
- blake2 default-resolver nightly?
- sha2 default-resolver
- curve25519-dalek default-resolver
- pqcrypto-kyber pqclean_kyber1024?
- pqcrypto-traits pqclean_kyber1024?
- ring ring-resolver?
-
Enables ring
ring crypto provider
- sodiumoxide libsodium-resolver?
-
Enables sodiumoxide
libsodium crypto provider
- byteorder libsodium-resolver?