Cargo Features
[dependencies]
carbon-curve25519-dalek = { version = "3.2.1", default-features = false, features = ["std", "alloc", "nightly", "u32_backend", "u64_backend", "fiat_u64_backend", "fiat_u32_backend", "simd_backend", "avx2_backend", "serde"] }
- default = std, u64_backend
-
These default features are set whenever
carbon-curve25519-dalek
is added without
somewhere in the dependency tree.default-features = false - std default = alloc
-
Enables std of rand_core ^0.5 and subtle
- alloc std
-
Affects
scalar_mul::straus
,scalar_mul::precomputed_straus
,scalar_mul::pippenger
,scalar_mul::straus
,scalar_mul::precomputed_straus
,scalar_mul::pippenger
,edwards::VartimeEdwardsPrecomputation
,ristretto::VartimeRistrettoPrecomputation
… - nightly simd_backend?
-
subtle:
DEPRECATED: As of 2.4.1, this feature does nothing.
Affects
backend::vector
… - u32_backend
-
The u32 backend uses u32s with u64 products.
Affects
serial::u32
,field::FieldElement
… - u64_backend default simd_backend?
-
The u64 backend uses u64s with u128 products.
Affects
serial::u64
,field::FieldElement
… - fiat_u64_backend = fiat-crypto
-
fiat-u64 backend (with formally-verified field arith) uses u64s with u128 products.
Affects
serial::fiat_u64
,field::FieldElement
… - fiat_u32_backend = fiat-crypto
-
fiat-u32 backend (with formally-verified field arith) uses u32s with u64 products.
Affects
serial::fiat_u32
,field::FieldElement
… - simd_backend avx2_backend? = nightly, packed_simd, u64_backend
-
The SIMD backend uses parallel formulas, using either AVX2 or AVX512-IFMA.
Affects
backend::vector
… - avx2_backend = simd_backend
-
DEPRECATED: this is now an alias for
simd_backend
and may be removed in some future release.
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.
- serde implicit feature
-
Enables serde
serde:
A generic serialization/deserialization framework
- packed_simd simd_backend?
-
Enables packed_simd_2
The original packed_simd package was orphaned, see https://github.com/rust-lang/packed_simd/issues/303#issuecomment-701361161
- fiat-crypto fiat_u32_backend? fiat_u64_backend?
-
Enables fiat-crypto ^0.1.6