Assembly implementations of hash functions core functionality based on code from Project Nayuki.
Crates in this repository provide only core compression functions, for full hash
functionality please refer to the crates from
RustCrypto/hashes repository. With
enabled asm
feature md5
, sha-1
, sha2
and whirlpool
crates will use
code from this repository.
Now that inline assembly is stable (as of Rust 1.59), assembly should be added directly to the relevant crates at https://github.com/RustCrypto/hashes.
For more information, see #45.
All crates are tested on the following platforms:
- Linux (32-bit and 64-bit x86)
- Windows (64-bit x86, GNU only)
- ARM64 (except
md5
, which is x86 only)
Windows MSVC builds are known to be broken. See #17.
All crates in this repository support Rust 1.43 or higher.
In the future when the minimum supported Rust version is changed, it will be accompanied by a minor version bump.
All crates licensed under the MIT license.
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.