**Nikiforov**

Vladimir O.

D.Sc., Prof.

Vladimir O.

D.Sc., Prof.

DOI: 10.17586/2226-1494-2018-18-4-646-653

DOI: 10.17586/2226-1494-2018-18-4-646-653

# STUDY OF HIGH-SPEED REALIZATION TECHNICS FOR ELEMENTS OF SYMMETRIC ENCRYPTION ALGORITHMS DURING CALCULATIONS ON GRAPHICS PROCESSOR

**Read the full article**';

**Article in**Russian

**For citation:**Udaltsov V.A., Karmanovskiy N.S. Study of high-speed realization technics for elements of symmetric encryption algorithms during calculations on graphics processor.

*Scientific and Technical Journal of Information Technologies, Mechanics and Optics*, 2018, vol. 18, no. 4, pp. 646–653 (in Russian). doi: 10.17586/2226-1494-2018-18-4-646-653

**Abstract**

**Subject of Research. **The paper deals with the research of transformations used in up-to-date symmetric algorithms aimed at definition of the most high-speed ways of their realization on the graphics processor with the use of CUDA and OpenCL technologies. **Method. **To achieve this goal, we considered LSX and ARX structures of block algorithms on the example of the following ciphers: AES, «Kuznyechik», LEA, Rectangle, Simon and Speck. The main types of transformations were detected, which include: multiplication in Galois fields, the use of lookup tables, bitwise operations, long number addition and data exchange with the global memory as an integral part of the calculations on graphics devices. The variants of the implementation of these calculations were considered and synthetic tests were carried out to determine their execution time. **Main Results**. The best ways for implementation of these transformations were determined. When performing multiplication in Galois fields, if one of the multipliers is constant, the best time was shown by the method using the pre-calculation table. It was also found that the most effective in terms of speed is the storage of replacement tables in shared memory and the implementation of bitwise operations with the division of input data into 8-bit elements, as in the case of long numbers addition. The result approbation was carried out by CLEFIA algorithm realization.The encryption time of 1 GB of data was 1542 mc. This result is 16 times less than the encryption time on the general-purpose processor. The application of realization variants for studied transformations that show the worst time results during synthetic tests on graphics processors gives fourfold speed increase compared with the central processor. **Practical Relevance. **The study results are applicable for the speedy and efficient use of graphics processors in the implementation of existing encryption algorithms. The results can become the basis for the development of new encryption algorithms with the use of graphics processors.

**Keywords:**CUDA, OpenCL, cryptographic transformations, symmetric algorithms, encryption acceleration

**References**

*I*

*nternational Journal of Applied Mathematics and Informatics*, 2011, vol. 5, pp. 71–81.

*Proc. IEEE Pacific RIM Conference on Communications, Computers and Signal Processing*. Victoria, Canada, 2015, pp. 507–512. doi: 10.1109/PACRIM.2015.7334889

*Proc. 9*. Nanjing, China, 2010, pp. 174–178 doi: 10.1109/GCC.2010.44

^{th}IEEE Int. Conf. on Grid and Cooperative Computing*Mezhdunarodnyi Zhurnal Prikladnykh i Fundamental'nykh Issledovanii*, 2015, no. 12, pp. 789–793. (in Russian)

*Proc. 26*. Novosibirsk, 2017, pp. 174–178. (in Russian)

^{th}Int. Conf. on Prospects for the Development of Information Technology*International Journal of Networking and Computing*, 2012, vol. 2, no. 1, pp. 131–145. doi: 10.15803/ijnc.2.1_131

*Vestnik Kazanskogo Tekhnologicheskogo Universiteta*, 2017, no. 12, pp. 97–103. (in Russian)

*Voprosy Kiberbezopasnosti*, 2015, no. 1, pp. 26–43. (in Russian)

*Voprosy Kiberbezopasnosti*, 2015, no. 2, pp. 2–10. (in Russian)

*Lecture Notes in Computer Science*, 2012, vol. 7428, pp. 426–446. doi: 10.1007/978-3-642-33027-8_25

*Lecture Notes in Computer Science*, 2011, vol. 6917,

pp. 312–325. doi: 10.1007/978-3-642-23951-9_21

*International Journal of Advanced Computer Science and Applications*, 2017, vol. 8, no. 1, pp. 402–411. doi: 10.14569/IJACSA.2017.080151

*Proc. 9*. Kazan, Russia, 2015, pp. 183–195.

^{th}Workshop on Current Trends in Cryptology*Mathematical Aspects of Cryptography*, 2014, vol. 5, pp. 71–78. doi: 10.4213/mvk118

*Lecture Notes in Computer Science*, 2015, vol. 8540, pp. 546–570. doi: 10.1007/978-3-662-46706-0_28

*State of the Art in Lightweight Symmetric Cryptography*. Available at: http://orbilu.uni.lu/handle/10993/31319 (accessed 24.05.2018).

*Proc. 52*. San Francisco, USA, 2015, pp. 1–10. doi: 10.1145/2744769.2747946

^{nd}ACM/EDAC/IEEE design Automation Conference*Proc. NIST Lightweight Cryptography Workshop*. Gaithersburg, USA, 2015, pp. 1–15.

*Lecture Notes in Computer Science*, 2014, vol. 8267, pp. 3–27. doi: 10.1007/978-3-319-05149-9_1

*Science China Information Sciences*, 2015,vol. 58, pp. 1–15. doi: 10.1007/s11432-015-5459-7

*Proc. 13*. Delft, Netherlands, 2013,pp. 136–143. doi: 10.1109/CCGrid.2013.12

^{th}IEEE/ACM Int. Symposium on Cluster, Cloud and Grid Computing*Teoriya, Praktika, Innovatsii*, 2017, no. 4, pp. 5–11. (in Russian)

*Proc. 17*. Massachusetts, USA, 2005, pp. 164–171. doi:10.1109/ARITH.2005.34

^{th}IEEE Symposium on Computer Arithmetic^{8}) in the error-correcting coding technology.

*Mezhdunarodnyi Zhurnal Prikladnykh i Fundamental'nykh Issledovanii*, 2016, no. 7, pp. 360–365. (in Russian)

*Prikladnaya diskretnaya matematika. Prilozhenie*, 2017, no. 10, pp. 102–104. (in Russian) doi: 10.17223/2226308X/10/41

*Lecture Notes in Computer Science*, 2016, vol. 9665, pp. 372–402. doi: 10.1007/978-3-662-49890-3_15