Evolutionary Computation Techniques for Constructing SAT-Based Attacks in Algebraic Cryptanalysis

In this paper we present the results on applying evolutionary computation techniques to construction of several cryptographic attacks. In particular, SAT-based guess-and-determine attacks studied in the context of algebraic cryptanalysis. Each of these attacks is built upon some set of Boolean variables, thus it can be specified by a Boolean vector. We use two general evolutionary strategies to find an optimal vector: (1+1)-EA and GA. Based on these strategies parallel algorithms (based on modern SAT-solvers) for solving the problem of minimization of a special pseudo-Boolean function are implemented. This function is a fitness function used to evaluate the runtime of a guess-and-determine attack. We compare the efficiency of (1+1)-EA and GA with the algorithm from the Tabu search class, that was earlier used to solve related problems. Our GA-based solution showed the best results on a number of test instances, namely, cryptanalysis problems of several stream ciphers (cryptographic keystream generators).

[1]  Antonio Castro Lechtaler,et al.  Model design for a reduced variant of a Trivium Type Stream Cipher , 2013 .

[2]  Stephen A. Cook,et al.  The complexity of theorem-proving procedures , 1971, STOC.

[3]  N. Metropolis,et al.  The Monte Carlo method. , 1949 .

[4]  N. Courtois,et al.  Contradiction Immunity and Guess-Then-Determine Attacks on Gost , 2012 .

[5]  Alexander A. Semenov,et al.  On Cryptographic Attacks Using Backdoors for SAT , 2018, AAAI.

[6]  James C. King,et al.  Symbolic execution and program testing , 1976, CACM.

[7]  Shahram Khazaei,et al.  Reduced Complexity Attacks on the Alternating Step Generator , 2007, Selected Areas in Cryptography.

[8]  Alfred Menezes,et al.  Handbook of Applied Cryptography , 2018 .

[9]  Dongdai Lin,et al.  Attacking Bivium and Trivium with the Characteristic Set Method , 2011, AFRICACRYPT.

[10]  Chung-Huang Yang,et al.  On the Linear Consistency Test (LCT) in Cryptanalysis with Applications , 1989, CRYPTO.

[11]  Martin Novotný,et al.  A Real-World Attack Breaking A5/1 within Hours , 2008, CHES.

[12]  Tobias Eibach,et al.  Optimising Gröbner Bases on Bivium , 2010, Math. Comput. Sci..

[13]  Inês Lynce,et al.  Conflict-Driven Clause Learning SAT Solvers , 2009, Handbook of Satisfiability.

[14]  Christophe De Cannière,et al.  Trivium: A Stream Cipher Construction Inspired by Block Cipher Design Principles , 2006, ISC.

[15]  Oleg Zaikin,et al.  Algorithm for finding partitionings of hard variants of boolean satisfiability problem with application to inversion of some cryptographic functions , 2016, SpringerPlus.

[16]  Tobias Eibach,et al.  Attacking Bivium Using SAT Solvers , 2008, SAT.

[17]  Endre Boros,et al.  Pseudo-Boolean optimization , 2002, Discret. Appl. Math..

[18]  Alex Biryukov,et al.  Two Trivial Attacks on Trivium , 2007, IACR Cryptol. ePrint Arch..

[19]  Alexander A. Semenov,et al.  Encoding Cryptographic Functions to SAT Using TRANSALG System , 2016, ECAI.

[20]  Mikhail Posypkin,et al.  Parallel Logical Cryptanalysis of the Generator A5/1 in BNB-Grid System , 2011, PaCT.

[21]  Gregory V. Bard,et al.  Algebraic Cryptanalysis of the Data Encryption Standard , 2007, IMACC.

[22]  Oleg Zaikin,et al.  An Improved SAT-Based Guess-and-Determine Attack on the Alternating Step Generator , 2017, ISC.

[23]  Bart Selman,et al.  Backdoors To Typical Case Complexity , 2003, IJCAI.

[24]  Christoph Günther,et al.  Alternating Step Generators Controlled by De Bruijn Sequences , 1987, EUROCRYPT.

[25]  Claude Castelluccia,et al.  Extending SAT Solvers to Cryptographic Problems , 2009, SAT.

[26]  Gregory V. Bard,et al.  Algebraic Cryptanalysis , 2009 .

[27]  Leonie Ruth Simpson,et al.  Algebraic analysis of Trivium-like ciphers , 2013, IACR Cryptol. ePrint Arch..