Cargo Features
[dependencies]
aranya-crypto = { version = "0.4.0", default-features = false, features = ["alloc", "bearssl", "committing-aead", "clone-aead", "ed25519_batch", "fs-keystore", "getrandom", "hazmat", "proptest", "rand_compat", "std", "test_util", "trng"] }
- default = getrandom
-
The
getrandom
feature is set by default wheneveraranya-crypto
is added without
somewhere in the dependency tree.default-features = false - alloc ed25519_batch? fs-keystore? proptest? std? test_util?
-
Enable allocations.
Enables alloc of buggy, postcard, optional rustix ^0.38, and spideroak-crypto
- bearssl
-
Enable BearSSL.
Enables bearssl of spideroak-crypto
- committing-aead
-
Enable committing AEAD implementations.
Enables committing-aead of spideroak-crypto
- clone-aead
-
Implement
Clone
for the built-in AEADs.Enables clone-aead of spideroak-crypto
- ed25519_batch = alloc
-
Enable Ed25519 batch signature verification.
NB: this is NOT supported on big-endian architectures.
This is its own feature because of a weird interaction between cargo, ed25519-dalek, and VxWorks.
ed25519-dalek's
batch
feature requiresalloc
, so normally we'd put "ed25519-dalek/batch" behind ouralloc
feature.However, ed25519-dalek's
batch
feature does not build for vxworks/ppc because its merlin dependency does not support big-endian architectures.Cargo does not support target-specific features, so we're unable to express "enable ed25519-dalek/batch only if
alloc
is enabled and the current architecture is little-endian."Enables ed25519_batch of spideroak-crypto
- fs-keystore = alloc
-
Enable the file system backed
KeyStore
.Enables ciborium, ciborium-io, and rustix ^0.38
- getrandom default std?
-
Enable
getrandom
support.NB:
getrandom
does not support VxWorks < 7.Enables getrandom of spideroak-crypto
- hazmat
-
Enable cryptographically hazardous code.
Enables hazmat of spideroak-crypto
- proptest test_util? = alloc
-
Enable
proptest::arbitrary::Arbitrary
implemenationsEnables proptest and proptest-derive
- rand_compat
-
Enable compat with the
rand
,rand_core
, etc. crates.Enables rand_compat of spideroak-crypto
- std = alloc, getrandom
-
Use std.
Enables use-std of postcard, std of buggy, byteorder, optional ciborium, and optional ciborium-io, std of serde, siphasher, spideroak-base58, spideroak-crypto, thiserror, optional proptest, and optional rustix ^0.38
- test_util = alloc, proptest
-
Include testing utilities.
Enables test_util of spideroak-crypto
- trng
-
Use a system provided TRNG for the default CSPRNG.
Enables trng of spideroak-crypto