CLAASP: Cryptographic Library for Automated Analysis of Symmetric Primitives¶
This is a sample reference manual for CLAASP.
To use this module, you need to import it:
from claasp import *
This reference shows a minimal example of documentation of CLAASP following SageMath guidelines.
Cipher modules¶
- Algebraic tests
- Component analysis tests
- Generic word based c functions
- Evaluator
- Avalanche tests
- Tester
- Report
- Generic functions vectorized bit
- Generic functions vectorized byte
- Generic bit based c functions
- Graph generator
- Generic functions continuous diffusion analysis
- Generic word based c functions
- Continuous diffusion analysis
- Inverse cipher
- Generic functions
- Neural network tests
- Generic bit based c functions
- Code generator
Models¶
Cp¶
Cp models¶
Minizinc utils¶
Milp¶
Utils¶
- Dictionary containing truncated mds inequalities
- Generate inequalities for wordwise truncated mds matrices
- Generate sbox inequalities for trail search
- Dictionary that contains inequalities for sboxes with undisturbed bits
- Milp name mappings
- Dictionary that contains inequalities for large sboxes xor linear
- Mzn predicates
- Generate inequalities for and operation 2 input bits
- Generate inequalities for xor with n input bits
- Dictionary that contains inequalities for large sboxes
- Milp truncated utils
- Utils
- Dictionary containing truncated xor inequalities between n input bits
- Generate undisturbed bits inequalities for sboxes
- Dictionary that contains inequalities for small sboxes xor linear
- Dictionary containing xor inequalities between n input bits
- Generate inequalities for large sboxes
- Dictionary that contains inequalities for small sboxes
- Dictionary containing truncated input pattern inequalities
- Generate inequalities for wordwise truncated xor with n input bits
Tmp¶
Milp models¶
Sat¶
Cms models¶
Utils¶
Sat models¶
Smt¶
Smt models¶
Utils¶
Minizinc¶
Utils¶
Minizinc models¶
Algebraic¶
Statistical tests¶
Utils¶
Ciphers¶
Stream ciphers¶
Permutations¶
- Xoodoo invertible permutation
- Keccak invertible permutation
- Xoodoo permutation
- Gaston permutation
- Grain core permutation
- Photon permutation
- Spongent pi permutation
- Spongent pi fsr permutation
- Chacha permutation
- Tinyjambu permutation
- Gimli permutation
- Gimli sbox permutation
- Salsa permutation
- Xoodoo sbox permutation
- Gift permutation
- Tinyjambu fsr 32bits word permutation
- Spongent pi precomputation permutation
- Util
- Ascon permutation
- Keccak sbox permutation
- Ascon sbox sigma no matrix permutation
- Gaston sbox permutation
- Ascon sbox sigma permutation
- Gift sbox permutation
- Keccak permutation
- Sparkle permutation
- Tinyjambu 32bits word permutation
Block ciphers¶
- Des exact key length block cipher
- Bea1 block cipher
- Rc5 block cipher
- Speedy block cipher
- Des block cipher
- Speck block cipher
- Present block cipher
- Hight block cipher
- Aes block cipher
- Raiden block cipher
- Midori block cipher
- Simon block cipher
- Lea block cipher
- Scarf block cipher
- Lblock block cipher
- Tea block cipher
- Skinny block cipher
- Kasumi block cipher
- Identity block cipher
- Constant block cipher
- Qarmav2 block cipher
- Lowmc block cipher
- Twofish block cipher
- Qarmav2 with mixcolumn block cipher
- Lowmc generate matrices
- Fancy block cipher
- Sparx block cipher
- Threefish block cipher
- Xtea block cipher
Hash functions¶
Toys¶
Components¶
- Modadd component
- Theta xoodoo component
- Reverse component
- Xor component
- Cipher output component
- Multi input non linear logical operator component
- Linear layer component
- Theta keccak component
- Word permutation component
- Constant component
- Sbox component
- Variable rotate component
- Modular component
- Rotate component
- Fsr component
- Concatenate component
- Shift component
- Not component
- Or component
- Shift rows component
- And component
- Intermediate output component
- Mix column component
- Variable shift component
- Modsub component
- Permutation component
- Sigma component