docs.rs failed to build aesni-0.2.0
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Visit the last successful build:
aesni-0.10.0
AES block cipher implementation using AES-NI instruction set.
This crate does not implement any software fallback and does not
automatically check CPUID, so if you are using this crate make sure to run
software on appropriate hardware or to check AES-NI availability using
check_aesni()
function with appropriate software fallback in case of
its unavailability.
Additionally this crate currently requires nigthly Rust compiler due to the
usage of unstable asm
and simd
features.
Ciphers functionality can be also accessed using traits from
block-cipher-trait
crate, they are
implemented if impl_traits
feature is enabled, which is done by default.
Usage example
let key = [0u8; 16];
let mut block = [0u8; 16];
let mut block8 = [0u8; 16*8];
// Initialize cipher
let cipher = aesni::Aes128::init(&key);
// Encrypt block in-place
cipher.encrypt(&mut block);
// And decrypt it back
cipher.decrypt(&mut block);
assert_eq!(block, [0u8; 16]);
// We can encrypt 8 blocks simultaneously using instruction-level parallelism
cipher.encrypt8(&mut block8);
cipher.decrypt8(&mut block8);