[package] name = "asuran-core" license = "BSD-2-Clause-Patent" version = "0.1.6" repository = "https://gitlab.com/asuran-rs/asuran/" documentation = "https://docs.rs/crate/asuran" homepage = "https://asuran.rs" authors = ["Nathan McCarty "] edition = "2018" keywords = ["encryption", "compression","deduplication","backup","archive"] description = "Core data structures used by the asuran archive format" readme = "README.md" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [features] default = ["all-chunk"] core = ["aes-family", "blake3", "zstd"] # Convience renames blake2b = ["blake2b_simd"] lzma = ["xz2"] # Groups aes-family = ["aes-soft", "ctr", "aesni"] chacha-family = ["chacha20"] # Group of all of a type all-encryption = ["aes-family", "chacha-family"] all-compression = ["zstd", "lz4", "lzma"] all-hmac = ["blake2b", "blake3", "sha2", "sha3"] all-chunk = ["all-encryption", "all-compression", "all-hmac"] # Enable neon support for blake3 on ARM # see cargo issue #7914 blake3-neon = ["blake3/neon"] [dependencies] aes-soft = { version = "0.4.0", optional = true } blake2b_simd = { version = "0.5.10", optional = true } blake3 = { version = "0.3.4", optional = true } block-cipher = "0.7.1" byteorder = "1.3.4" cfg-if = "0.1.10" chacha20 = { version = "0.4.3", optional = true } chrono = { version = "0.4.11", features = ["serde"] } crypto-mac = "0.8.0" ctr = { version = "0.4.0", optional = true } hmac = "0.8.1" lz4 = { version = "1.23.2", optional = true } rand = { version = "0.7.3", default-features = false, features = ["std"] } rust-argon2 = { version = "0.8.2", default-features = false } semver = "0.10.0" serde = { version = "1.0.114", features = ["derive"] } serde_bytes = "0.11.5" serde_cbor = "0.11.1" sha2 = { version = "0.9.1", optional = true } sha3 = { version = "0.9.1", optional = true } stream-cipher = "0.4.1" thiserror = "1.0.20" tracing = "0.1.15" uuid = "0.8.1" xz2 = { version = "0.1.6", optional = true } zeroize = { version = "1.1.0", features = ["zeroize_derive"] } zstd = { version = "0.5.3", optional = true, default-features = false } [target.'cfg(any(target_arch = "x86", target_arch = "x86_64"))'.dependencies] aesni = { version = "0.7.0", features = ["ctr", "nocheck"], optional = true }