Expand description
§keccak-asm
Simple wrappers for SHA-3 algorithms written in assembly.
Forked from OpenSSL, Cryptogams, and RustCrypto’s sha3.
These crates have been extensively used in production as the main keccak256 backend in the Ethereum client Reth since v0.1.0-alpha.15 (January 2024).
Rust 1.89 or newer is required.
§Support
| Architecture | Linux | macOS | Windows |
|---|---|---|---|
| x86 | ❌ | ❌ | ❌ |
| x86_64 | ✅ | ✅ | ✅ |
| aarch64 | ✅ | ✅ | 🟨 |
| powerpc{,64} | ✅ | N/A | N/A |
| powerpc64le | ❌ | N/A | N/A |
| riscv32 | ✅ | N/A | N/A |
| riscv64 | ✅ | N/A | N/A |
| mips{,el} | ✅ | N/A | N/A |
- ❌: Currently not supported.
- 🟨: Compiles, but is only built, not tested in CI. Should still work normally.
- ✅: Fully supported, with full CI coverage for the most popular target triples, e.g.
x86_64-unknown-linux-gnu,aarch64-apple-darwin,x86_64-pc-windows-msvc.
§License
Cryptogams is either licensed under BSD-3-Clause (the “new” BSD license, as specified here), or the Linux Kernel’s license GPL-2.0-only. See the LICENSE file for more information.
Re-exports§
pub use self;
Structs§
- Keccak224
- Keccak-224 hasher state.
- Keccak256
- Keccak-256 hasher state.
- Keccak384
- Keccak-384 hasher state.
- Keccak512
- Keccak-512 hasher state.
- Sha3_
224 - SHA-3-224 hasher state.
- Sha3_
256 - SHA-3-256 hasher state.
- Sha3_
384 - SHA-3-384 hasher state.
- Sha3_
512 - SHA-3-512 hasher state.
Traits§
- Digest
- Convenience wrapper trait covering functionality of cryptographic hash functions with fixed output size.