DOI QR코드

DOI QR Code

High Performance Implementation of SGCM on High-End IoT Devices

  • Seo, Hwajeong (Department of IT Convergence Engineering, Hansung University)
  • Received : 2017.06.23
  • Accepted : 2017.08.07
  • Published : 2017.12.31

Abstract

In this paper, we introduce novel techniques to improve the high performance of AE functions on modern high-end IoT platforms (ARM-NEON), which support SIMD and cryptography instruction sets. For the Sophie Germain Counter Mode of operation (SGCM), counter modes of encryption and prime field multiplication are required. We chose the Montgomery multiplication for modular multiplication. We perform Montgomery multiplication in a parallel way by exploiting both the ARM and NEON instruction sets. Specifically, the NEON instruction performed 128-bit integer multiplication and the ARM instruction performed Montgomery reduction, simultaneously. This approach hides the latency for ARM in the NEON instruction set. For a high-speed counter mode of encryptions for both AE functions, we introduced two-level computations. When the tasks were large volume, we switched to the NEON instruction to execute the encryption operations. Otherwise, we performed the encryptions on the ARM module.

Keywords

References

  1. M. J. O. Saarinen, "SGCM: the Sophie Germain Counter Mode," 2011 [Internet], Available: https://eprint.iacr.org/2011/326.pdf.
  2. D. J. Bernstein and P. Schwabe, "NEON crypto," in Cryptographic Hardware and Embedded Systems-CHES 2012. Heidelberg: Springer, pp. 320-339, 2012.
  3. D. Camara, C. P. Gouvea, J. Lopez, and R. Dahab, "Fast software polynomial multiplication on ARM processors using the NEON engine," in CD-ARES 2013: Security Engineering and Intelligence Informatics. Heidelberg: Springer, pp. 137-154, 2013.
  4. J. W. Bos, P. L. Montgomery, D. Shumow, and G. M. Zaverucha, "Montgomery multiplication using vector instructions," in Selected Areas in Cryptography-SAC 2013. Heidelberg: Springer, pp. 471-489, 2013.
  5. H. Seo, Z. Liu, J. Groschadl, J. Choi, and H. Kim, "Montgomery modular multiplication on ARM-NEON revisited," in Information Security and Cryptology-ICISC 2014. Cham: Springer International Publishing, pp. 328-342, 2014.
  6. H. Seo, Z. Liu, J. Groschadl, and H. Kim, "Efficient arithmetic on ARM-NEON and its application for high-speed RSA implementation," Security and Communication Networks, vol. 9, no. 18, pp. 5401-5411, 2016. https://doi.org/10.1002/sec.1706
  7. R. Azarderakhsh, Z. Liu, H. Seo, and H. Kim, "NEON PQCryto: fast and parallel ring-LWE encryption on ARM NEON architecture," 2015 [Internet], Available: https://eprint.iacr.org/2015/1081.pdf.
  8. H. Seo, Z. Liu, T. Park, H. Kim, Y. Lee, J. Choi, and H. Kim, "Parallel implementations of LEA," in Information Security and Cryptology-ICISC 2013. Cham: Springer International Publishing, pp. 256-274, 2013.
  9. M. J. O. Saarinen and B. B. Brumley, "Lighter, faster, and constant-time: WhirlBob, the Whirlpool variant of StriBob," 2014 [Internet], Available: https://eprint.iacr.org/2014/501/20141108:160918.
  10. C. P. Gouvea and J. Lopez, "Implementing GCM on ARMv8," in Topics in Cryptology-CT-RSA 2015. Heidelberg: Springer, pp. 167-180, 2015.
  11. P. L. Montgomery, "Modular multiplication without trial division," Mathematics of computation, vol. 44, no. 170, pp. 519-521, 1985. https://doi.org/10.1090/S0025-5718-1985-0777282-X
  12. D. Hong, J. K. Lee, D. C. Kim, D. Kwon, K. H. Ryu, and D. G. Lee, "LEA: a 128-bit block cipher for fast encryption on common processors," in WISA 2013: Information Security Applications. Cham: Springer International Publishing, pp. 3-27, 2013.
  13. H. Seo, T. Park, S. Heo, G. Seo, B. Bae, Z. Hu, L. Zhou, Y. Nogami, Y. Zhu, and H. Kim, "Parallel implementations of LEA, revisited," in WISA 2016: Information Security Applications. Cham: Springer International Publishing, pp. 318-330, 2016.

Cited by

  1. Efficient Parallel Implementation of Matrix Multiplication for Lattice-Based Cryptography on Modern ARM Processor vol.2018, pp.None, 2017, https://doi.org/10.1155/2018/7012056