Paper 2023/622

CLAASP: a Cryptographic Library for the Automated Analysis of Symmetric Primitives

Emanuele Bellini, Technology Innovation Institute
David Gerault, Technology Innovation Institute
Juan Grados, Technology Innovation Institute
Yun Ju Huang, Technology Innovation Institute
Mohamed Rachidi, Technology Innovation Institute
Sharwan Tiwari, Technology Innovation Institute

This paper introduces CLAASP, a Cryptographic Library for the Automated Analysis of Symmetric Primitives. The library is designed to be modular, extendable, easy to use, generic, efficient and \emph{fully} automated. It is an extensive toolbox gathering state-of-the-art techniques aimed at simplifying the manual tasks of symmetric primitive designers and analysts. CLAASP is built on top of Sagemath and is open-source under the GPLv3 license. The central input of CLAASP is the description of a cryptographic primitive as a list of connected components in the form of a directed acyclic graph. From this representation, the library can automatically: (1) generate the Python or C code of the primitive evaluation function, (2) execute a wide range of statistical and avalanche tests on the primitive, (3) generate SAT, SMT, CP and MILP models to search, for example, differential and linear trails, (4) measure algebraic properties of the primitive, (5) test neural-based distinguishers. In this work, we also present a comprehensive survey and comparison of other software libraries aiming at similar goals as CLAASP.

Available format(s)
Secret-key cryptography
Publication info
Cryptographic libraryAutomated analysisSymmetric primitives
Contact author(s)
emanuele bellini @ tii ae
david gerault @ tii ae
juan grados @ tii ae
yunju huang @ tii ae
mohamed rachidi @ tii ae
sharwan tiwari @ tii ae
2023-05-01: approved
2023-05-01: received
See all versions
Short URL
No rights reserved


      author = {Emanuele Bellini and David Gerault and Juan Grados and Yun Ju Huang and Mohamed Rachidi and Sharwan Tiwari},
      title = {CLAASP: a Cryptographic Library for the Automated Analysis of Symmetric Primitives},
      howpublished = {Cryptology ePrint Archive, Paper 2023/622},
      year = {2023},
      note = {\url{}},
      url = {}
Note: In order to protect the privacy of readers, does not use cookies or embedded third party content.