#assembly #sha-3 #keccak256 #primitive #wrapper

no-std keccak-asm

Simple wrappers for SHA-3 algorithms written in assembly

5 releases

0.1.4 Sep 10, 2024
0.1.3 Aug 5, 2024
0.1.2 Aug 5, 2024
0.1.1 May 9, 2024
0.1.0 Dec 26, 2023

#177 in Cryptography

Download history 55306/week @ 2024-11-21 60370/week @ 2024-11-28 66848/week @ 2024-12-05 82513/week @ 2024-12-12 57036/week @ 2024-12-19 39546/week @ 2024-12-26 75051/week @ 2025-01-02 95664/week @ 2025-01-09 96078/week @ 2025-01-16 96409/week @ 2025-01-23 97323/week @ 2025-01-30 111820/week @ 2025-02-06 113925/week @ 2025-02-13 101178/week @ 2025-02-20 104743/week @ 2025-02-27 106790/week @ 2025-03-06

449,135 downloads per month
Used in 294 crates (2 directly)

BSD-3-Clause

2MB
60K SLoC

Perl 58K SLoC // 0.1% comments JavaScript 1K SLoC // 0.0% comments WebAssembly 585 SLoC // 0.1% comments GNU Style Assembly 559 SLoC // 0.0% comments Rust 396 SLoC // 0.1% comments C# 101 SLoC // 0.0% comments

keccak-asm

Simple wrappers for SHA-3 algorithms written in assembly.

Forked from OpenSSL, Cryptogams, and RustCrypto's sha3.

[!WARNING] Code is somewhat tested and benchmarked. Use at your own risk.

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.

Dependencies

~0.5–1MB
~23K SLoC