[package] name = "rand_aes" description = "AES based pseudo-random number generator" authors = ["Nils Hasenbanck "] keywords = ["rand", "random", "no-std", "aes"] categories = ["algorithms", "no-std"] license = "Apache-2.0" readme = "README.md" documentation = "https://docs.rs/rand_aes" repository = "https://github.com/hasenbanck/rand_aes" version = "0.3.1" edition = "2021" rust-version = "1.80" [features] default = ["std", "tls", "getrandom", "rand_core"] # Used for TLS and runtime target feature detection. std = [] # Activates the thread local functionality (defaults to the AES-128, 64-bit counter version). tls = ["std"] # Uses the AES-128, 128-bit counter version for the TLS instance. tls_aes128_ctr128 = [] # Uses the AES-256, 64-bit counter version for the TLS instance. tls_aes256_ctr64 = [] # Uses the AES-256, 128-bit counter version for the TLS instance. tls_aes256_ctr128 = [] # Enables support for experimental RISC-V vector cryptography extension. Please read the README.md. experimental_riscv = [] ### The following features are only used internally and are unstable ### # Forces the compiler to enable the runtime detection. force_runtime_detection = [] # Forces the compiler to enable the software backend. force_software = [] # Enables some functionality used for the verification executable used in CI. verification = ["std"] [dependencies] # Implements the `CoreRng` and `SeedableRng` traits. rand_core = { version = "0.6", optional = true } # Provides seeding from the OS entropy source. getrandom = { version = "0.2", optional = true } [dev-dependencies] criterion = { version = "0.5", features = ["html_reports"] } hex-literal = "0.4" paste = "1" rand_chacha = "0.3" rand_pcg = "0.3" [profile.bench] opt-level = 3 codegen-units = 1 lto = "fat" strip = true [[bench]] name = "rng" harness = false [package.metadata.docs.rs] features = ["std", "tls", "getrandom", "rand_core"] rustdoc-args = ["--cfg", "docsrs"] # We have the verification binary as a member to use the same target folder. # But we then exclude it, because it would otherwise polute the tests with the # 'verification' feature, and we wouldn't be able to use "cargo test --workspace" # for example. [workspace] members = [ "verification", ] exclude = ["verification"]