| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122 |
- [package]
- name = "libthreema"
- version = "0.1.0"
- description = "One library to bind them all"
- authors = ["Threema GmbH"]
- license = "AGPL-3.0-only"
- readme = "../README.md"
- edition = "2024"
- repository = "<Insert URL when publishing>"
- keywords = ["threema", "protocol", "messenger", "communication"]
- categories = ["api-bindings", "cryptography"]
- [lib]
- name = "libthreema"
- crate-type = ["lib", "staticlib", "cdylib"]
- [lints]
- workspace = true
- [dependencies]
- argon2 = { version = "0.5", default-features = false, features = ["alloc"] }
- aead = { version = "0.5", default-features = false, features = [
- "alloc",
- "rand_core",
- "std",
- ] }
- blake2 = { version = "0.10", default-features = false, features = [
- "std",
- # "zeroize",
- ] }
- chacha20poly1305 = { version = "0.10", default-features = false, features = [
- "alloc",
- ] }
- cipher = "0.4"
- const_format = { version = "0.2", features = ["rust_1_64"] }
- crypto_secretbox = { version = "0.1", default-features = false, features = [
- "alloc",
- "salsa20",
- ] }
- data-encoding = "2.6"
- digest = "0.10"
- duplicate = "2"
- educe = { version = "0.6", default-features = false, features = ["Debug"] }
- hmac = { version = "0.12", default-features = false }
- libthreema-macros = { path = "../macros" }
- pbkdf2 = "0.12"
- prost = "0.13"
- rand = "0.8"
- regex = "1"
- salsa20 = { version = "0.10", default-features = false, features = [
- "std",
- "zeroize",
- ] }
- scrypt = { version = "0.11", default-features = false }
- serde = { version = "1", features = ["alloc", "derive"] }
- serde_repr = "0.1"
- serde_json = "1"
- sha2 = { version = "0.10", default-features = false, features = [
- "std",
- # "zeroize",
- ] }
- strum = { version = "0.27", features = ["derive"] }
- thiserror = "2"
- tracing = "0.1"
- x25519-dalek = { version = "2", features = [
- "reusable_secrets",
- "static_secrets",
- "zeroize",
- ] }
- zeroize = "1"
- # Bindings and CLI
- tracing-subscriber = { version = "0.3", optional = true }
- # Bindings: UniFFI
- uniffi = { version = "0.29", optional = true }
- # Bindings: WASM
- getrandom = { version = "0.2", features = ["js"], optional = true }
- js-sys = { version = "0.3", optional = true }
- serde_bytes = { version = "0.11", optional = true }
- tsify-next = { version = "0.5", features = ["js"], optional = true }
- wasm-bindgen = { version = "0.2", optional = true }
- web-time = { version = "1", optional = true }
- # CLI
- clap = { version = "4", features = ["derive"], optional = true }
- [dev-dependencies]
- anyhow = "1"
- tokio = { version = "1", default-features = false, features = [
- "io-util",
- "macros",
- "net",
- "rt",
- "rt-multi-thread",
- "signal",
- "sync",
- "time",
- ] }
- [build-dependencies]
- prost-build = "0.13"
- # Bindings: UniFFI
- uniffi = { version = "0.29", features = ["build"], optional = true }
- [features]
- uniffi = ["dep:tracing-subscriber", "dep:uniffi"]
- wasm = [
- "dep:getrandom",
- "dep:js-sys",
- "dep:serde_bytes",
- "dep:tracing-subscriber",
- "dep:tsify-next",
- "dep:wasm-bindgen",
- "dep:web-time",
- ]
- cli = ["dep:tracing-subscriber", "dep:clap"]
- [[example]]
- name = "csp"
- required-features = ["cli"]
- [[example]]
- name = "d2d_rendezvous"
- required-features = ["cli"]
|