[package]
name = "matrix-sdk-store-encryption"
version = "0.16.0"
edition = "2024"
description = "Helpers for encrypted storage keys for the Matrix SDK"
repository = "https://github.com/matrix-org/matrix-rust-sdk"
license = "Apache-2.0"
rust-version.workspace = true

[package.metadata.docs.rs]
rustdoc-args = ["--cfg", "docsrs", "--generate-link-to-definition"]

[package.metadata.cargo-machete]
ignored = ["getrandom"] # We do manually enable a feature for it.

[features]
js = ["dep:getrandom", "getrandom?/wasm_js"]

[dependencies]
base64.workspace = true
blake3 = { version = "1.8.2", default-features = false }
chacha20poly1305 = { version = "0.10.1", default-features = false, features = ["std"] }
getrandom = { workspace = true, optional = true }
hmac.workspace = true
pbkdf2.workspace = true
rand = { workspace = true, features = ["thread_rng"] }
rmp-serde.workspace = true
serde = { workspace = true, features = ["derive"] }
serde_json.workspace = true
sha2.workspace = true
thiserror.workspace = true
zeroize = { workspace = true, features = ["zeroize_derive"] }

[dev-dependencies]
anyhow.workspace = true

[lints]
workspace = true
