Cargo Features

alkali = { version = "0.3.0", default-features = false, features = ["std", "alloc", "aead-chacha20", "aes", "curve", "fetch-latest", "hazmat", "minimal", "onetimeauth", "optimized", "use-serde", "sha2", "stream", "use-pkg-config"] }
default = std, use-serde

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

std default

Enables std of rand_core

Affects generic::blake2b.hash_custom_to_vec, hash::kdf, alkali::encode, util::pad


Affects mem::SodiumAllocator, mem::HardenedVec, mem::HardenedBox

aead-chacha20 hazmat?

Affects aead::chacha20poly1305, aead::chacha20poly1305_ietf


Affects aead::aes256gcm

curve hazmat?

Affects alkali::curve


Enables fetch-latest of libsodium-sys-stable

hazmat = aead-chacha20, curve, onetimeauth, sha2, stream

Enables minimal of libsodium-sys-stable

onetimeauth hazmat?

Affects symmetric::one_time_auth


Enables optimized of libsodium-sys-stable

use-serde default = serde, serde-big-array
sha2 hazmat?

Affects hash::sha2

stream hazmat?

Affects symmetric::stream


Enables use-pkg-config of libsodium-sys-stable

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 use-serde
serde-big-array use-serde