Conversation
Merging this PR will not alter performance
Performance Changes
Comparing |
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #173 +/- ##
==========================================
- Coverage 99.77% 99.76% -0.01%
==========================================
Files 184 189 +5
Lines 51329 52588 +1259
==========================================
+ Hits 51211 52466 +1255
- Misses 118 122 +4 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Pull request overview
Adds SHA-3 family hashing support to Graviola by introducing mid-level SHA3-256/SHA3-512 contexts and SHAKE128/SHAKE256 XOFs backed by Keccak-f1600 implementations in the low-level arch modules.
Changes:
- Introduce
mid::sha3with SHA3-256/SHA3-512 incremental hashing and SHAKE128/SHAKE256 incremental output APIs. - Add Keccak-f1600 permutation implementations for
x86_64andaarch64, and wire them intolow. - Extend the asm parsing tooling and update README/module exports to surface SHA3 support.
Reviewed changes
Copilot reviewed 12 out of 12 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| graviola/src/mid/sha3.rs | New SHA3/SHAKE sponge implementation + tests. |
| graviola/src/mid/mod.rs | Expose sha3 module in mid layer. |
| graviola/src/low/x86_64/sha3_keccak_f1600.rs | New generated Keccak-f1600 x86_64 asm wrapper. |
| graviola/src/low/x86_64/mod.rs | Register x86_64 Keccak-f1600 module. |
| graviola/src/low/mod.rs | Re-export sha3_keccak_f1600 for supported arches. |
| graviola/src/low/generic/blockwise.rs | Add Blockwise::add helper used by SHA3 padding. |
| graviola/src/low/aarch64/sha3_keccak_f1600.rs | New generated Keccak-f1600 aarch64 asm wrapper. |
| graviola/src/low/aarch64/mod.rs | Register aarch64 Keccak-f1600 module. |
| graviola/src/lib.rs | Re-export mid::sha3 under hashing. |
| admin/parse-asm/parse.py | Add new CFI macro expansions used by SHA3 asm parsing. |
| admin/parse-asm/driver.sha3.py | New driver to generate Rust asm wrappers for Keccak-f1600. |
| README.md | Mark SHA3/SHAKE as implemented. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
02bcb4a to
0ddaae8
Compare
032ac5f to
9273efe
Compare
No description provided.