[package]
name = "enprot"
version = "0.5.13"
authors = ["Ribose Inc. <open.source@ribose.com>"]
license = "BSD-2-Clause"
description = "Engyon Protected Text (EPT) — confidentiality processor and capability ledger"
repository = "https://github.com/engyon/enprot"
homepage = "https://github.com/engyon/enprot"
documentation = "https://docs.rs/enprot"
readme = "README.md"
categories = ["command-line-utilities", "cryptography"]
keywords = ["encryption", "engyon", "ept", "botan", "blockchain"]
edition = "2024"
rust-version = "1.88"
autotests = false
[workspace]
members = [".", "enprot-ffi"]
default-members = [".", "enprot-ffi"]
resolver = "2"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[features]
default = ["cli"]
cli = ["dep:clap", "dep:clap_complete"]
vendored-rnp = ["rnp-rs/vendored"]
[lib]
crate-type = ["rlib"]
[[bin]]
name = "enprot"
path = "src/main.rs"
required-features = ["cli"]
[[test]]
name = "integration"
path = "tests/tests.rs"
[dependencies]
hex = "0.4"
rpassword = "7"
clap = { version = "4.5", features = ["derive", "wrap_help"], optional = true }
clap_complete = { version = "4", optional = true }
phf = { version = "0.14", features = ["macros"] }
thiserror = "2"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
toml = "1.1"
aes-gcm-siv = "0.11"
zeroize = { version = "1", features = ["alloc"] }
rnp-rs = "0.1.10"
[target.'cfg(not(windows))'.dependencies]
botan = { version = "0.11", features = ["botan3", "pkg-config"] }
[target.'cfg(windows)'.dependencies]
botan = { version = "0.11", default-features = false, features = ["botan3", "static"] }
[dev-dependencies]
tempfile = "3"
assert_cmd = "2"
predicates = "3"
cpu-time = "1.0"
proptest = "1"
serde_json = "1"
criterion = { version = "0.8", features = ["html_reports"] }
clap_mangen = "0.3"
[[bench]]
name = "crypto"
harness = false
[[bench]]
name = "merkle"
harness = false
[[bench]]
name = "parser"
harness = false
[[bench]]
name = "comparison"
harness = false
[[test]]
name = "proptest_roundtrip"
path = "tests/proptest_roundtrip.rs"
[profile.release]
opt-level = 3
lto = true
codegen-units = 1
strip = true
panic = "abort"
debug = "line-tables-only"
[profile.release.package."*"]
debug = "line-tables-only"