A high-performance and energy-efficient exhaustive key search approach via GPU on DES-like cryptosystems


Recently, graphical processing units (GPUs) have found a prominent role in general-purpose applications. Specifically, in parallel processing applications where a considerable number of tasks should be processed while meeting specific design constraints. One of the most interesting subjects in this area is cipher breaking via brute-force attacks, which attracts the attention of many researchers to the field. In this paper, we introduce a novel exhaustive key search approach for block cipher cryptosystems. The key point is how to utilize the single instruction multiple thread architecture to improve the speed of the DES-like hardware-based cryptosystems. At first, the standard DES core is implemented while all operations like bit permutation, swapping, and general hardware data stream follow the original algorithm. Then, in order to maximize the usage of the memory bandwidth and to eliminate the bit access penalty in GPU architecture, we exploit the register permutation and swapping (instead of the conventional bit swapping) in our implementation. In this approach, each thread examines a set of 32 keys per each iteration and hence a considerable throughput is achieved. The experimental results demonstrate 24K\(\times \), 800\(\times \), and 400\(\times \) speed up over the traditional DES implementation on single-core CPU, the best previous work on multi-core CPU, and the conventional implementation on GPU, respectively. Furthermore, we measure the power and energy consumption of the best GPU and CPU approaches, where the GPU implementation proves to be more power efficient.

This is a preview of subscription content, log in to check access.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16


  1. 1.

    Barbieri D, Cardellini V, Filippone S (2014) Exhaustive key search on clusters of GPUS. In: Parallel and Distributed Processing Symposium Workshops (IPDPSW), 2014 IEEE International, pp 1160–1168

  2. 2.

    Biham E (1997) A fast new des implementation in software. In: International Workshop on Fast Software Encryption. Springer, pp 260–272

  3. 3.

    Biham E, Shamir A (1991) Differential cryptanalysis of des-like cryptosystems. J Cryptol 4(1):3–72

    MathSciNet  Article  MATH  Google Scholar 

  4. 4.

    Cianfriglia M, Guarino S, Bernaschi M, Lombardi F, Pedicini M (2017) A novel GPU-based implementation of the cube attack. In: International Conference on Applied Cryptography and Network Security. Springer, pp 184–207

  5. 5.

    Dimitrov M (2015) Intel. https://software.intel.com/en-us/articles/intel-power-governor

  6. 6.

    Fips P (1999) 46–3: Data encryption standard (des). Natl Inst Stand Technol 25(10):1–22

    Google Scholar 

  7. 7.

    Gilmore J (1998) Cracking des: secrets of encryption research, wiretap politics and chip design, vol 272. Electronic Frontier Foundation, San Francisco

  8. 8.

    Granado-Criado JM, Vega-Rodríguez MA (2017) Hardware coprocessors for high-performance symmetric cryptography. J Supercomput 73(6):2456–2482

    Article  Google Scholar 

  9. 9.

    Güneysu T, Kasper T, Novotnỳ M, Paar C, Rupp A (2008) Cryptanalysis with copacobana. IEEE Trans Comput 57(11):1498–1513

    MathSciNet  Article  MATH  Google Scholar 

  10. 10.

    Harris M (2014) Maxwell: the most advanced CUDA GPU ever made. In: Nvidia

  11. 11.

    Intel: Intel processor specifications (2016). http://www.intel.com

  12. 12.

    Kakarla S, Mandava S, Saha D, Chowdhury DR (2017) On the practical implementation of impossible differential cryptanalysis on reduced-round AES. In: International Conference on Applications and Techniques in Information Security. Springer, pp 58–72

  13. 13.

    Kasichayanula K, Terpstra D, Luszczek P, Tomov S, Moore S, Peterson GD (2012) Power aware computing on GPUS. In: Application Accelerators in High Performance Computing (SAAHPC), 2012 Symposium on IEEE, pp 64–73

  14. 14.

    Kumar S, Paar C, Pelzl J, Pfeiffer G, Schimmler M (2006) Breaking ciphers with copacobana—a cost-optimized parallel code breaker. In: International Workshop on Cryptographic Hardware and Embedded Systems. Springer, pp 101–118

  15. 15.

    Kwan M (2000) Reducing the gate count of bitslice des. IACR Cryptol ePrint Arch 2000:51

    Google Scholar 

  16. 16.

    Li Q, Zhong C, Zhao K, Mei X, Chu X (2012) Implementation and analysis of AES encryption on GPU. In: High Performance Computing and Communication & 2012 IEEE 9th International Conference on Embedded Software and Systems (HPCC-ICESS), 2012 IEEE 14th International Conference on IEEE, pp 843–848

  17. 17.

    Lindholm E, Nickolls J, Oberman S, Montrym J (2008) NVIDIA Tesla: a unified graphics and computing architecture. IEEE Micro 28(2):39–55

  18. 18.

    Luo C, Fei Y, Luo P, Mukherjee S, Kaeli D (2015) Side-channel power analysis of a GPU AES implementation. In: Computer Design (ICCD), 2015 33rd IEEE International Conference on IEEE, pp 281–288

  19. 19.

    Paar IC, Pelzl IJ (2010) The data encryption standard (des) and alternatives. In: Understanding cryptography. Springer, pp 55–86

  20. 20.

    Rahmani S, Ahmadzadeh A, Hajihassani O, Mirhosseini S, Gorgin S (2016) An efficient multi-core and many-core implementation of k-means clustering. In: ACM-IEEE International Conference on Formal Methods and Models for System Design (MEMOCODE)

  21. 21.

    Stallings W, Tahiliani MP (2014) Cryptography and network security: principles and practice, 6th edn. Pearson, London

    Google Scholar 

  22. 22.

    Steube J (2016) Hashcat advanced password recovery. https://hashcat.net

  23. 23.

    Wiener MJ (1994) Efficient DES key search. School of Computer Science, Carleton University, Ottawa

    Google Scholar 

  24. 24.

    Wittenbrink CM, Kilgariff E, Prabhu A (2011) Fermi GF100 GPU architecture. IEEE Micro 31(2):50–59

    Article  Google Scholar 

  25. 25.

    Yan C, Zhang Y, Xu J, Dai F, Li L, Dai Q, Wu F (2014) A highly parallel framework for hevc coding unit partitioning tree decision on many-core processors. IEEE Signal Process Lett 21(5):573–576

    Article  Google Scholar 

  26. 26.

    Yang N, Wang L, Geraci G, Elkashlan M, Yuan J, Di Renzo M (2015) Safeguarding 5g wireless communication networks using physical layer security. IEEE Commun Mag 53(4):20–27

    Article  Google Scholar 

  27. 27.

    Zou Y, Zhu J, Wang X, Hanzo L (2016) A survey on wireless security: technical challenges, recent advances, and future trends. Proc IEEE 104(9):1727–1765

    Article  Google Scholar 

  28. 28.

    Zou Y, Zhu J, Wang X, Leung VC (2015) Improving physical-layer security in wireless communications using diversity techniques. IEEE Netw 29(1):42–48

    Article  Google Scholar 

Download references


We are grateful to Prof. Hamid Sarbazi Azad, head of the school of computer science, for his support and useful guidance. We also would like to acknowledge Mr. Reza Mirzaei and Mr. Mohsen Mahmoudi Aznaveh and all the other members of HPC lab at IPM.

Author information



Corresponding author

Correspondence to Saeid Gorgin.

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Ahmadzadeh, A., Hajihassani, O. & Gorgin, S. A high-performance and energy-efficient exhaustive key search approach via GPU on DES-like cryptosystems. J Supercomput 74, 160–182 (2018). https://doi.org/10.1007/s11227-017-2120-9

Download citation


  • Brute-force attacks
  • DES
  • Multi/many-core
  • CUDA
  • MPI