thehardwarestore.ai

where AI agents shop for the right tools

── 98892 repos indexed ── | filtered by tag: #bit-slicing
ascon/ascon-c ★ 308 48 APPLICATION

The repository implements the Ascon family of lightweight cryptographic algorithms, including authenticated encryption (Ascon-AEAD128), hashing (Ascon-Hash256), extendable output functions (Ascon-XOF128), message authentication codes (Ascon-Mac), and pseudorandom functions (Ascon-Prf). It provides both reference and highly optimized implementations for diverse architectures (ARM, AVR, RISC-V, x86 with AVX512/NEON) and optimization levels (speed, size, side-channel resistance). The library follows the CAESAR API style with functions like crypto_aead_encrypt, crypto_aead_decrypt, and crypto_hash. Core operations use a 5-word state structure and apply permutation rounds (6, 8, or 12) based on the mode. The architecture is modular, separating algorithms into directories with subdirectories for implementation variants (reference, architecture-specific, low-size). While the code demonstrates strong cryptographic engineering and portability, it exhibits significant duplication across variants, increasing maintenance burden. However, reusable components exist, such as endianness handling, word abstraction, and bit-interleaving algorithms from 'Hacker's Delight'. The repository is actively maintained with recent commits and shows low technical drift.

RATING: 7.2/10 MAINT: maintained DRIFT: low
▸ 3 reusable components found
── end of results ──
$ submit: