Analysis of hardware support for cryptography in the construction of information security of the university
Authors: Пристансков Е.И. , Кудрявцев О.А. , Андреев Д.Е. , Таран Ю.В. , Соловьев Н.С. 
Published: September 2022

Проблему имплементации традиционных криптоалгоритмов во встроенных системах сначала пытались решить на программном уровне, для чего максимально оптимизировали код за счет использования языка ассемблера и особенностей архитектуры процессора. Сформировался ряд криптобиблиотек, ориентированных на ВС и IoT, самые известные из которых WolfSSL, OpenSSL, GUARD TLS. Tiny / Toolkit, Cifra, содержат реализации как отдельных алгоритмов так и целых протоколов с умеренными требованиями к ресурсам вычислителя. Вместе с тем и сама криптография пыталась подстроиться под требования ИОТ, и в начале 2000-х годов выделилось такое отдельное направление как легковесная или малоресурсная криптография (Lightweight Cryptography) для устройств с ограниченными ресурсами. При создании легковесных криптоалгоритмов на первое место выходит стоимость реализации при адекватном уровне защиты и нужной производительности, то есть важен компромисс между этими тремя параметрами, который зависит от конкретных требований к устройству. По сравнению с классическими алгоритмами, легковесные алгоритмы за счет уменьшения размера ключа, количества раундов, замены более сложных операций проще или отказа от них позволяют существенно увеличить производительность и снизить требования к ресурсам реализации. В качестве примера программно-ориентированных легковесных алгоритмов, получивших значительную популярность в последние годы можно указать шифры ChaCha20, Speck, хэш Blake2, Мас-функцию Poly1305 и др. Кроме того появились режимы работы шифров, призванные комплексно и с минимальными накладными расходами обеспечить конфиденциальность, целостность и аутентификацию пакетизированных данных.

At first, they tried to solve the problem of implementing traditional crypto algorithms in embedded systems at the software level, for which they optimized the code as much as possible by using assembly language and processor architecture features. A number of crypto libraries focused on VS and IoT have been formed, the most famous of which are wolfSSL, OpenSSL, GUARD TLS. Tiny/ Toolkit, Cifra, contain implementations of both individual algorithms and entire protocols with moderate requirements for computing resources. At the same time, cryptography itself tried to adapt to the requirements of IOT, and in the early 2000s, such a separate direction as lightweight or low-resource cryptography (Lightweight Cryptography) for devices with limited resources stood out. When creating lightweight crypto algorithms, the cost of implementation comes first with an adequate level of protection and the necessary performance, that is, a compromise between these three parameters is important, which depends on the specific requirements for the device. Compared to classical algorithms, lightweight algorithms by reducing the key size, the number of rounds, replacing more complex operations with simpler ones or abandoning them can significantly increase performance and reduce the requirements for implementation resources. As an example of software-oriented lightweight algorithms that have gained considerable popularity in recent years, you can specify the ciphers ChaCha20, Speck, hash Blake2, Mac function Poly1305, etc. In addition, there are modes of operation of ciphers designed to comprehensively and with minimal overhead ensure the confidentiality, integrity and authentication of packaged data.