Genetic programming for improved cryptanalysis of elliptic curve cryptosystems

Public-key cryptography is a fundamental component of modern electronic communication that can be constructed with many different mathematical processes. Presently, cryptosystems based on elliptic curves are becoming popular due to strong cryptographic strength per small key size. At the heart of these schemes is the intractability of the elliptic curve discrete logarithm problem (ECDLP). Pollard's Rho algorithm is a well known method for solving the ECDLP and thereby breaking ciphers based on elliptic curves. It has the same time complexity as other known methods but is advantageous due to smaller memory requirements. This paper considers how to speed up the Rho process by modifying a key component: the iterating function, which is the part of the algorithm responsible for determining what point is considered next when looking for a collision. It is replaced with an alternative that is found through an evolutionary process. This alternative consistently and significantly decreases the number of iterations required by Pollard's Rho Algorithm to successfully find a solution to the ECDLP.

[1]  Ping Wang,et al.  Speeding up elliptic curve discrete logarithm computations with point halving , 2013, Des. Codes Cryptogr..

[2]  Adi Shamir,et al.  A method for obtaining digital signatures and public-key cryptosystems , 1978, CACM.

[3]  Alfred Menezes,et al.  Guide to Elliptic Curve Cryptography , 2004, Springer Professional Computing.

[4]  J. Pollard A monte carlo method for factorization , 1975 .

[5]  Whitfield Diffie,et al.  New Directions in Cryptography , 1976, IEEE Trans. Inf. Theory.

[6]  Donald E. Knuth,et al.  The art of computer programming, volume 3: (2nd ed.) sorting and searching , 1998 .

[7]  Charlie Obimbo,et al.  Solving for the RC4 stream cipher state register using a genetic algorithm , 2014 .

[8]  Fangguo Zhang,et al.  Improved Pollard rho method for computing discrete logarithms over finite extension fields , 2012, J. Comput. Appl. Math..

[9]  Edlyn Teske,et al.  Speeding Up Pollard's Rho Method for Computing Discrete Logarithms , 1998, ANTS.

[10]  Ping Wang,et al.  Computing elliptic curve discrete logarithms with the negation map , 2012, Inf. Sci..

[11]  Ram Ratan,et al.  Applications of Genetic Algorithms in Cryptology , 2013, SocProS.

[12]  Paul C. van Oorschot,et al.  Parallel Collision Search with Cryptanalytic Applications , 2013, Journal of Cryptology.

[13]  John R. Koza,et al.  Genetic programming - on the programming of computers by means of natural selection , 1993, Complex adaptive systems.

[14]  Ping Wang,et al.  Improving the Parallelized Pollard Rho Method for Computing Elliptic Curve Discrete Logarithms , 2013, 2013 Fourth International Conference on Emerging Intelligent Data and Web Technologies.

[15]  Ping Wang,et al.  An Efficient Collision Detection Method for Computing Discrete Logarithms with Pollard's Rho , 2012, J. Appl. Math..

[16]  Donald Ervin Knuth,et al.  The Art of Computer Programming , 1968 .

[17]  Charlie Obimbo,et al.  An evolutionary computation attack on one-round TEA , 2011, Complex Adaptive Systems.

[18]  Marc Parizeau,et al.  DEAP: evolutionary algorithms made easy , 2012, J. Mach. Learn. Res..

[19]  N. Koblitz Elliptic curve cryptosystems , 1987 .

[20]  Victor S. Miller,et al.  Use of Elliptic Curves in Cryptography , 1985, CRYPTO.

[21]  Michael N. Vrahatis,et al.  Cryptography and Cryptanalysis Through Computational Intelligence , 2007, Computational Intelligence in Information Assurance and Security.

[22]  Sheridan K. Houghten,et al.  Genetic algorithm cryptanalysis of a substitution permutation network , 2009, 2009 IEEE Symposium on Computational Intelligence in Cyber Security.

[23]  Bethany Delman Genetic algorithms in cryptography , 2004 .