feat: add Jasmin assembly integration for crypto acceleration

- Integrated `zupt_mac_verify_ct` in `zupt_decrypt_buffer()` to replace C XOR loop for HMAC-SHA256
- Integrated `zupt_ct_select_32` in `zupt_mlkem768_decaps()` to replace C `cmov()` for FO transformation
- Added `include/zupt_jasmin.h` with extern declarations and ABI docs
- Added `#ifdef ZUPT_USE_JASMIN` guards with clean C fallbacks in `zupt_crypto.c` and `zupt_mlkem.c`
- Makefile now auto-detects `jasmin/*.s`, assembles and links with `-DZUPT_USE_JASMIN`

Closes #3
This commit is contained in:
Cristian Cezar Moisés 2026-03-28 23:00:28 -03:00
commit 06c877ec86
43 changed files with 1913 additions and 546 deletions

View file

@ -1,27 +0,0 @@
#!/usr/bin/env bash
# Fast Installer for Zupt - GNU/Linux
set -e
echo "🔧 Installing Zupt..."
# Create temporary directory
TMP_DIR=$(mktemp -d)
# Clone and build
git clone https://github.com/cristiancmoises/zupt.git "$TMP_DIR/zupt"
cd "$TMP_DIR/zupt"
make clean
make
# Install
sudo make install
echo "✅ Zupt successfully installed to /usr/local/bin/zupt"
echo "🔒 You can now run: zupt"
# Cleanup
cd ~
rm -rf "$TMP_DIR"
echo "🧹 Cleanup completed"