ockam 0.49.0

End-to-end encryption and mutual authentication for distributed applications.
Documentation
[package]
authors = ["Ockam Developers"]
categories = [
    "cryptography",
    "asynchronous",
    "authentication",
    "network-programming",
    "embedded",
]
description = "End-to-end encryption and mutual authentication for distributed applications."
edition = "2021"
exclude = ["tests/**"]
homepage = "https://github.com/ockam-network/ockam"
keywords = [
    "ockam",
    "crypto",
    "cryptography",
    "network-programming",
    "encryption",
]
license = "Apache-2.0"
name = "ockam"
readme = "README.md"
repository = "https://github.com/ockam-network/ockam/tree/develop/implementations/rust/ockam/ockam"
version = "0.49.0"
rust-version = "1.56.0"
publish = true

[features]
default = ["std", "ockam_transport_tcp", "software_vault", "noise_xx"]
software_vault = [
    "ockam_vault",
    "ockam_vault_sync_core",
    "ockam_vault_sync_core/software_vault",
    "ockam_channel/software_vault",
]
noise_xx = ["ockam_key_exchange_xx", "ockam_channel/noise_xx"]
credentials = [
    "ockam_identity/credentials",
    "ockam_vault/bls",
    "bls12_381_plus",
    "signature_core",
    "signature_bbs_plus",
    "signature_bls",
]

# Feature (enabled by default): "std" enables functionality expected to
# be available on a standard platform.
std = [
    "alloc",
    "ockam_core/std",
    "ockam_node/std",
    "ockam_macros/std",
    "ockam_vault_sync_core/std",
    "ockam_vault/std",
    "ockam_channel/std",
    "ockam_key_exchange_core/std",
    "ockam_key_exchange_xx/std",
    "ockam_identity/std",
    "rand/default",
    "serde/std",
]

# Feature: "no_std" enables functionality required for platforms
# without the standard library, requires nightly.
no_std = [
    "ockam_core/no_std",
    "ockam_node/no_std",
    "ockam_macros/no_std",
    "ockam_vault_sync_core/no_std",
    "ockam_vault/no_std",
    "ockam_channel/no_std",
    "ockam_key_exchange_core/no_std",
    "ockam_key_exchange_xx/no_std",
    "ockam_identity/no_std",
]

# Feature: "alloc" enables support for heap allocation (implied by `feature = "std"`)
alloc = [
    "ockam_core/alloc",
    "ockam_node/alloc",
    "ockam_vault_sync_core/alloc",
    "ockam_vault/alloc",
    "ockam_channel/alloc",
    "ockam_key_exchange_core/alloc",
    "ockam_key_exchange_xx/alloc",
    "ockam_identity/alloc",
    "serde/alloc",
]

[[test]]
name = "tests"
path = "tests/main.rs"

[dependencies]
ockam_core = { path = "../ockam_core", version = "^0.49.0", default-features = false }
ockam_macros = { path = "../ockam_macros", version = "^0.10.0", default_features = false }
ockam_node = { path = "../ockam_node", version = "^0.48.0", default-features = false }
ockam_vault_sync_core = { path = "../ockam_vault_sync_core", version = "^0.40.0", default_features = false, optional = true }
ockam_vault = { path = "../ockam_vault", version = "^0.42.0", default_features = false, optional = true }
ockam_channel = { path = "../ockam_channel", version = "^0.44.0", default_features = false }
ockam_transport_tcp = { path = "../ockam_transport_tcp", version = "^0.44.0", optional = true }
ockam_key_exchange_core = { path = "../ockam_key_exchange_core", version = "^0.40.0", default_features = false }
ockam_key_exchange_xx = { path = "../ockam_key_exchange_xx", version = "^0.41.0", default_features = false, optional = true }
ockam_identity = { path = "../ockam_identity", version = "^0.38.0", default_features = false }
arrayref = "0.3"
bls12_381_plus = { version = "0.5", default-features = false, optional = true }
signature_core = { version = "^0.36.0", path = "../signature_core", optional = true }
signature_bbs_plus = { version = "^0.36.0", path = "../signature_bbs_plus", package = "signature_bbs_plus", optional = true }
signature_bls = { version = "^0.34.0", path = "../signature_bls", package = "signature_bls", optional = true }
serde = { version = "1.0", default-features = false, features = ["derive"] }
serde-big-array = "0.3"
sha2 = { version = "0.9", default-features = false }
tracing = { version = "0.1", default-features = false }
rand = { version = "0.8", default-features = false }
hex = { version = "0.4", default-features = false }
dyn-clone = "1.0"

[dev-dependencies]
ockam_vault_sync_core = { path = "../ockam_vault_sync_core", version = "^0.40.0"}
ockam_key_exchange_xx = { path = "../ockam_key_exchange_xx", version = "^0.41.0"}
trybuild = { version = "1.0", features = ["diff"] }
serde_json = "1.0"
rand_xorshift = "0.3"