mirror of
https://github.com/logos-blockchain/sponges.git
synced 2026-07-29 18:13:17 +00:00
Gates `asm` support under a crate feature. Uses the `cpufeatures` crate to detect the presence of the `sha3` extension for ARMv8 CPUs, automatically falling back to a software implementation if it isn't available. When the `asm` feature is enabled on `aarch64` targets, exposes `f1600_asm` that relies on ARMv8 `sha3` hardware intrinsics.
RustCrypto: Keccak Sponge Function
Pure Rust implementation of the Keccak Sponge Function including the keccak-f and keccak-p variants.
About
This crate implements the core Keccak sponge function, upon which many other cryptographic functions are built.
For the SHA-3 family including the SHAKE XOFs, see the sha3 crate, which
is built on this crate.
Minimum Supported Rust Version
Rust 1.41 or higher.
Minimum supported Rust version can be changed in the future, but it will be done with a minor version bump.
SemVer Policy
- All on-by-default features of this library are covered by SemVer
- MSRV is considered exempt from SemVer as noted above
License
Licensed under either of:
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.