#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

#176 in Cryptography

Download history 49864/week @ 2024-11-15 53784/week @ 2024-11-22 63549/week @ 2024-11-29 71446/week @ 2024-12-06 81771/week @ 2024-12-13 46688/week @ 2024-12-20 45379/week @ 2024-12-27 80065/week @ 2025-01-03 97444/week @ 2025-01-10 95047/week @ 2025-01-17 96182/week @ 2025-01-24 99403/week @ 2025-01-31 113560/week @ 2025-02-07 110058/week @ 2025-02-14 104782/week @ 2025-02-21 84882/week @ 2025-02-28

432,218 downloads per month
Used in 286 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