Skip to content

Conversation

@rony-ramos
Copy link
Collaborator

This PR adds the IDEA block cipher, including:

  • Implementation of the MODMUL component (a * b) mod (2^16 + 1) with special zero mapping.
  • NumPy-based vectorized evaluation (byte_vector_MODMUL).
  • Extended IDEA cipher documentation and test coverage with NESSIE vectors.
  • Code generator update to include MODMUL in vectorized builds.

@rony-ramos rony-ramos requested a review from peacker November 15, 2025 15:14
@rony-ramos rony-ramos force-pushed the add_IDEA_block_cipher branch from f6b9096 to aa1a943 Compare December 2, 2025 05:16
- Implement IDEA (International Data Encryption Algorithm) block cipher
- Add IDEA_MODMUL component for modular multiplication with 02^16 mapping
- Support for 64-bit and 128-bit key sizes
- Include key schedule generation
- Add comprehensive test suite with NESSIE test vectors (36 tests)
- Implement vectorized evaluation (bit and byte-based)
- All tests pass including official test vectors
@rony-ramos rony-ramos force-pushed the add_IDEA_block_cipher branch from 36177c0 to 2e3c026 Compare December 10, 2025 02:19
@rony-ramos rony-ramos requested a review from juaninf December 10, 2025 02:51
@juaninf juaninf changed the title Implement IDEA Block Cipher and MODMUL component with vectorized evaluation Implement IDEA Block Cipher and IDEAMODMUL component with vectorized evaluation Dec 11, 2025
@sonarqubecloud
Copy link

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants