implementations.md - Open-CP/OCP GitHub Wiki

OCP provides implementations in both Python and C for a wide range of cryptographic primitives, supporting both unrolled=True and unrolled=False modes, as summarized in the table below. All implementations are verified against test vectors to ensure correctness. The testing framework is located in OCP/TEST/test_implementation.py, where users can validate existing implementations or integrate new primitives for testing.

No. Cipher Python Implementation C Implementation
1 SPECK (Permutation, Block_Cipher)
2 SIMON (Permutation, Block_Cipher)
3 AES (Permutation, Block_Cipher)
4 SKINNY (Permutation, Block_Cipher)
5 GIFT (Permutation, Block_Cipher)
6 PRESENT (Permutation, Block_Cipher)
7 ASCON_Permutation
8 ROCCA_AD_Permutation
9 SipHash