The research of performance of the “Cypress” lightweight block cipher on different platforms - Родінко, М.Ю.; Олійников, Р.В. (Radiotekhnika, 2020)
The Cypress block cipher is a lightweight algorithm based on the Feistel network with ARX-transformation as a round function. The Cypress block cipher supports 256-bit and 512-bit block and key length. The paper presents results of researches on the performance of lightweight block ciphers Cypress-256 and Cypress-512 and it gives comparison of performance of other well-known block ciphers such as AES-256, SPECK-64/128, SPECK-128/128, SPARX-128/128, DSTU GOST 28147: 2009. Performance was evaluated on Windows, Linux and Android platforms by measuring the encryption speed in the Electronic Code Book mode, in Mbps. The Cypress block cipher has demonstrated high performance on all selected platforms. Cypress-256 showed the best result (almost 3.5 Gbps) on the Windows 10 platform with 32-bit architecture. Cypress-512 also showed the best result (almost 5 Gbps) on the Windows 10 platform with 64-bit architecture. On the Linux platform with a 64-bit architecture, Cypress-256 showed a very high speed result (more than 8 Gbps). Cypress-256 and Cypress-512 block ciphers were also the best (1.3 Gbps and 1 Gbps, respectively) on the Android platform. In terms of performance and simplicity of implementation on different software and hardware platforms, Cypress algorithm has several advantages. Two variants of cipher (Cypress-256 and Cypress-512) are oriented on 32-bit and 64-bit architectures, respectively; high speed and compact implementation of transformations regardless of the platform used (server, workstation or mobile device). Minimum amount of memory is required for high-speed implementation, there is no need in pre-computed tables; there is an ability to organize efficient secure high-speed communication channels between mobile systems and servers, including those using hardware accelerators.