The Community for Technology Leaders
Green Image
Issue No. 11 - November (2008 vol. 57)
ISSN: 0018-9340
pp: 1498-1513
Martin Novotný , Ruhr-Universität Bochum, Bochum
Tim Güneysu , Ruhr-Universität Bochum, Bochum
Andy Rupp , Ruhr-Universität Bochum, Bochum
Christof Paar , Ruhr-Universität Bochum, Bochum
Timo Kasper , Ruhr-Universität Bochum, Bochum
ABSTRACT
Cryptanalysis of ciphers usually involves massive computations. The security parameters of cryptographic algorithms are commonly chosen so that attacks are infeasible with available computing resources. This contribution presents a variety of cryptanalytical applications utilizing the COPACOBANA (Cost-Optimized Parallel Code Breaker) machine which is a high-performance, low-cost cluster consisting of 120 Field Programmable Gate Arrays (FPGA). COPACOBANA appears to be the only such reconfigurable parallel FPGA machine optimized for code breaking tasks reported in the open literature. Depending on the actual algorithm, the parallel hardware architecture can outperform conventional computers by several orders of magnitude. In this work, we will focus on novel implementations of cryptanalytical algorithms, utilizing the impressive computational power of COPACOBANA. We describe various exhaustive key search attacks on symmetric ciphers and demonstrate an attack on a security mechanism employed in the electronic passport. Furthermore, we describe time-memory tradeoff techniques which can, e.g., be used for attacking the popular A5/1 algorithm used in GSM voice encryption. In addition, we introduce efficient implementations of more complex cryptanalysis on asymmetric cryptosystems, e.g., Elliptic Curve Cryptosystems (ECC) and number co-factorization for RSA.
INDEX TERMS
Special-Purpose and Application-Based Systems, Reconfigurable hardware, Cryptanalysis
CITATION
Martin Novotný, Tim Güneysu, Andy Rupp, Christof Paar, Timo Kasper, "Cryptanalysis with COPACOBANA", IEEE Transactions on Computers, vol. 57, no. , pp. 1498-1513, November 2008, doi:10.1109/TC.2008.80
100 ms
(Ver 3.3 (11022016))