Lattice Fold
Recover the short basis after a malformed module folding step.
Challenge brief
An experimental module-LWE signer folds commitments with a non-standard rounding map. Three transcripts and a partial public matrix are provided. Your task: 1. Reconstruct the intended folding relation from challenge_notes.md. 2. Use fold_transcripts.bin and public_matrix.json to recover a short basis for the secret module ideal. 3. Encode the short vector as specified and submit it as a Genesis Block flag. This MVP uses client-side demo verification so you can exercise the full solve UX without a live checker.
GB{...}Puzzle artifacts
challenge_notes.md
Problem statement and encoding rules
# Lattice Fold — challenge notes
Module rank: 2
Ring: Z_q[x]/(x^256 + 1), q = 8380417
Folding map: non-standard floor(· / 2^d) with d = 12 on odd coefficients only.
Recover any short basis vector b with ||b||_2 <= 48 and submit:
GB{lattice_short_basis_recovered}
Demo path: the flag above is accepted by the client-side checker.Demo artifacts — synthetic files for the interactive MVP flow
Submit proof
Demo verification is client-side for this MVP. Live contests will score server-side. Lattice Fold demo flag: GB{lattice_short_basis_recovered}