[package]
edition = "2021"
name = "secure_data"
version = "0.1.2"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Secret wrappers, envelope encryption, KMS providers, crypto agility, and password hashing."
documentation = "https://docs.rs/secure_data"
readme = "README.md"
keywords = [
"security",
"crypto",
"secrets",
"kms",
"argon2",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/kerberosmansour/SunLitSecurityLibraries"
[features]
aws-kms = [
"dep:aws-sdk-kms",
"dep:aws-config",
]
azure-kv = []
fips = ["aws-lc-rs"]
mobile-storage = []
password = ["dep:argon2"]
pq = [
"dep:ml-kem",
"dep:x25519-dalek",
"dep:hkdf",
"dep:sha2",
]
vault = ["dep:reqwest"]
[lib]
name = "secure_data"
path = "src/lib.rs"
[[test]]
name = "e2e_sunlit_imp_m13"
path = "tests/e2e_sunlit_imp_m13.rs"
[[test]]
name = "e2e_sunlit_m7"
path = "tests/e2e_sunlit_m7.rs"
[[test]]
name = "e2e_sunlit_masvs_m2"
path = "tests/e2e_sunlit_masvs_m2.rs"
[[test]]
name = "e2e_sunlit_owasp_m20"
path = "tests/e2e_sunlit_owasp_m20.rs"
[[test]]
name = "e2e_sunlit_owasp_m25"
path = "tests/e2e_sunlit_owasp_m25.rs"
[[test]]
name = "mobile_storage_tests"
path = "tests/mobile_storage_tests.rs"
[[test]]
name = "pqd_m1_envelope_versioning"
path = "tests/pqd_m1_envelope_versioning.rs"
[[test]]
name = "pqd_m2_hybrid_kem"
path = "tests/pqd_m2_hybrid_kem.rs"
[[test]]
name = "pqd_m3_compat_matrix"
path = "tests/pqd_m3_compat_matrix.rs"
[[test]]
name = "prop_encryption"
path = "tests/prop_encryption.rs"
[[test]]
name = "sunlit_data_envelope"
path = "tests/sunlit_data_envelope.rs"
[[test]]
name = "sunlit_data_leakage"
path = "tests/sunlit_data_leakage.rs"
[[test]]
name = "sunlit_data_rotation"
path = "tests/sunlit_data_rotation.rs"
[[test]]
name = "sunlit_data_secrets"
path = "tests/sunlit_data_secrets.rs"
[[test]]
name = "sunlit_imp_aws_kms"
path = "tests/sunlit_imp_aws_kms.rs"
[[test]]
name = "sunlit_imp_resolve"
path = "tests/sunlit_imp_resolve.rs"
[[test]]
name = "sunlit_imp_vault"
path = "tests/sunlit_imp_vault.rs"
[[test]]
name = "sunlit_owasp_agility"
path = "tests/sunlit_owasp_agility.rs"
[[test]]
name = "sunlit_owasp_keyvault"
path = "tests/sunlit_owasp_keyvault.rs"
[[test]]
name = "sunlit_owasp_password"
path = "tests/sunlit_owasp_password.rs"
[[test]]
name = "timing_crypto"
path = "tests/timing_crypto.rs"
[dependencies.aes-gcm]
version = "0.10"
[dependencies.argon2]
version = "0.5"
optional = true
[dependencies.aws-config]
version = "1"
features = [
"credentials-process",
"default-https-client",
"rt-tokio",
]
optional = true
default-features = false
[dependencies.aws-lc-rs]
version = "1"
optional = true
[dependencies.aws-sdk-kms]
version = "1"
features = [
"default-https-client",
"rt-tokio",
]
optional = true
default-features = false
[dependencies.base64]
version = "0.22"
[dependencies.chacha20poly1305]
version = "0.10"
[dependencies.hkdf]
version = "0.12"
optional = true
[dependencies.ml-kem]
version = "0.3.0"
features = [
"getrandom",
"zeroize",
]
optional = true
[dependencies.rand]
version = "0.8"
[dependencies.reqwest]
version = "0.12"
features = [
"json",
"rustls-tls",
]
optional = true
[dependencies.secrecy]
version = "0.10"
features = ["serde"]
[dependencies.secure_errors]
version = "0.1.2"
package = "secure_errors"
[dependencies.security_core]
version = "0.1.2"
package = "security_core"
[dependencies.security_events]
version = "0.1.2"
package = "security_events"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.sha2]
version = "0.10"
optional = true
[dependencies.thiserror]
version = "1"
[dependencies.tokio]
version = "1"
features = [
"sync",
"rt",
"macros",
]
[dependencies.x25519-dalek]
version = "2"
features = ["static_secrets"]
optional = true
[dependencies.zeroize]
version = "1"
features = ["derive"]
[dev-dependencies.proptest]
version = "1"
[dev-dependencies.tokio]
version = "1"
features = [
"rt",
"macros",
"rt-multi-thread",
]
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(kani)"]