Tools for the algebraic cryptanalysis of cryptographic primitives
- Author: Martin Albrecht
- Download: http://bitbucket.org/malb/algebraic_attacks
Algebraic cryptanalysis of cryptographic primitives such as block ciphers, stream ciphers and hash functions usually proceeds in two steps. (A) The algorithm is expressed as a system of multi-variate equations F over some field (usually F2). (B) The system F is solved using some technique such as Grëbner basis algorithms, SAT solvers or mixed integer programming solvers. We provide scripts and tools for the mathematics software Sage to construct polynomial systems of equations for various block ciphers and conversion routines from algebraic normal form (ANF) to conjunctive normal form (CNF) and mixed integer programmes.