УДК 003.26 Б01 10.17223/2226308Х/16/19
НИЗКОРЕСУРСНАЯ СИММЕТРИЧНАЯ КРИПТОГРАФИЯ: ПРИНЦИПЫ, ПОДХОДЫ И КОМПРОМИССЫ
С. П. Панасенко
Настоящая работа является обзорной и посвящена вопросам разработки и стандартизации низкоресурсных симметричных криптографических алгоритмов. Кратко описаны причины выделения низкоресурсных криптоалгоритмов в отдельный класс алгоритмов, рассчитанных на применение в устройствах с ограниченными ресурсами. Перечислены основные направления стандартизации низкоресурсных криптоалгоритмов как на уровне общемировых, так и национальных стандартов ряда стран. Описаны основные методы разработки низкоресурсных криптоалгоритмов как на основе существующих алгоритмов общего назначения, так и оригинальных. Сформулированы основные тенденции предполагаемого дальнейшего развития направления низкоресурсной симметричной криптографии: возможный уход от универсальных низкоресурсных криптостандартов в сторону специализированных, усиление требований к низкоресурсным криптографическим алгоритмам в части их криптостойкости и появление новых применений подобных алгоритмов, что может повлиять на методы их разработки и предъявляемые к ним требования.
Ключевые слова: низкоресурсная криптография, симметричное шифрование, хеширование.
Введение
Появление и широкое распространение различных видов вычислительных устройств, обладающих небольшими ресурсами (это, в частности, метки радиочастотной идентификации (РЧИ), имплантируемые медицинские приборы, сенсоры и актуато-ры различного назначения), привело к выделению класса низкоресурсных криптографических алгоритмов, В качестве примеров вычислителей с крайне ограниченными ресурсами в [1] приводятся 4-битные микроконтроллеры, а также микроконтроллеры с крайне малым объёмом оперативной памяти —от 16 байт.
Несмотря на отсутствие значительных ресурсов у подобных устройств, во многих из областей их применения требуется обеспечение безопасного обмена данными, поэтому применение криптографических алгоритмов в таких устройствах остается востребованным, Однако, как сказано в [2], «в большинстве обычных криптографических стандартов компромиссы между безопасностью, производительностью и требованиями к ресурсам решены путём оптимизации для деектопных и серверных применений, что делает стандарты сложными или невозможными для применения в устройствах с ограниченными ресурсами». Даже в случаях, когда реализация существующих криптостандартов в подобных устройствах возможна, их быстродействие может быть недопустимо низким (или затраты энергии — слишком большими для устройства), И то и другое, в частности, особенно критично для пассивных РЧИ-меток, работающих на энергии электромагнитного поля, генерируемого считывателем, при этом метка должна успеть сформировать и передать ответ за (возможно, короткое) время нахождения в зоне действия считывателя.
Совокупность изложенных факторов и стала причиной выделения низкоресурсных криптоалгоритмов в отдельный класс, а также обоснованием необходимости разработки низкоресурсных криптографических стандартов, описывающих криптоалгоритмы,
специально предназначенные для использования в устройствах с ограниченными ресурсами,
1. Стандартизация низкоресурсных криптоалгоритмов
Как и разработка обычных криптографических стандартов, стандартизация низкоресурсных криптоалгоритмов преследует задачи выбора хорошо изученных и исследованных алгоритмов с определённым уровнем криптографической стойкости и достаточными показателями быстродействия, а также для обеспечения совместимости различных реализаций, основанных на стандартных криптоалгоритмах.
На текущий момент существует семейство международных стандартов ISO/IEC 29192 (Information technology — Security techniques — Lightweight cryptography), описывающих низкоресурсные криптографические алгоритмы и протоколы следующих категорий: алгоритмы симметричного шифрования (блочные и поточные), асимметричные криптоалгоритмы, функции хеширования, коды аутентификации сообщений и протоколы аутентификации, В Евросоюзе и в ряде стран на национальном уровне также ведутся работы по стандартизации низкоресурсных криптоалгоритмов, в частности:
— завершившийся в 2023 г, конкурс Национального института стандартов и технологий США (MST — National Institute of Standards and Technology) по выбору алгоритмов хеширования и блочного шифрования в режиме аутентифицированного шифрования с использованием ассоциированных данных (AEAD — Authenticated Encryption with Associated Data);
— прошедший с 2013 по 2019 г, более широкий по целям европейский проект CAESAR (Competition for Authenticated Encryption: Security, Applicability, and Robustness) no выбору портфолио алгоритмов аутентифицированного шифрования; одно из трёх направлений конкурса было посвящено выбору низкоресурсных алгоритмов;
— в рамках работы организации по выбору криптоетандартов Японии CRYPTREC (Cryptography Research and Evaluation Committees) также проводится оценка низкоресурсных криптоалгоритмов с целью выработки рекомендаций по их использованию в государственных организациях Японии,
Отметим, что перечисленные проекты имеют сильно различающуюся значимость: по результатам конкурса, проведенного MST. ожидается выход соответствующего стандарта США на основе выбранного семейства алгоритмов Aseon [3] (аналогичные предыдущие стандарты относительно быстро становились де-факто мировыми), тогда как выводы проекта CAESAR являются только рекомендательными,
2. Основные методы разработки низкоресурсных криптоалгоритмов
При разработке низкоресурсных алгоритмов в качестве «строительных блоков» используются как элементы криптоалгоритмов общего назначения, так и специфические для низкоресурсной криптографии преобразования. Можно выделить несколько основных методов разработки симметричных низкоресурсных криптоалгоритмов:
1) Экстенсивное «упрощение» существующих алгоритмов общего назначения — снижение их ресурсоёмкое™ за счёт уменьшения размерности основных параметров или упрощения используемых в алгоритмах операций, в частности:
— уменьшение размеров ключей, блоков данных, выходных значений и внутреннего состояния;
— уменьшение разрядности и количества таблиц замен, количества раундов преобразований,
В качестве примера приведём известный алгоритм DESL — низкоресурсный вариант алгоритма DES, использующий единственную таблицу замен вместо восьми, за счёт чего достигается значительная экономия ресурсов, требуемых для хранения таблиц [4].
2) Упрощение или полное отсутствие процедур расширения ключей для алгоритмов симметричного шифрования; в ряде случаев — ориентация на «прошитые» ключи, т, е, загруженные в устройство изначально и не подлежащие замене. Прошитые ключи, в частности, используются в алгоритме KTANTAN [5].
3) Использование известных (хорошо проверенных с точки зрения криптоетойко-сти при относительно малом потреблении ресурсов) конструкций в качестве внутренних преобразований, в частности:
— sponge-структура, свойственная алгоритмам хеширования и лежащая в основе, в частности, стандарта хеширования SHA-3 [6]; из низкоресурсных криптоалгоритмов с подобной структурой можно привести в пример алгоритм Xoodyak [7];
— Л KS-подобные преобразования (в ряде случаев использование раундов AES целиком); пример: ряд вариантов алгоритма COMET [8];
— ARX-конетрукции (Add-Rotate-XOR), подразумевающие применение простых раундов, включающих операции сложения по модулю, соответствующему размерности операндов, циклического сдвига и XOR; пример: семейство алгоритмов Sparkle [9].
4) Изначальная ориентация на небольшие размеры основных параметров, а также использование внутренних преобразований с незначительными требованиями к ресурсам, в частности:
— сдвиговых регистров с линейной обратной связью (LFSR);
— фиксированных или управляемых битовых перестановок,
В качестве примера такого алгоритма можно привести алгоритм симметричного шифрования Hummingbird с 16-битным размером блока, основанный на применении LFSR [10].
3. Перспективы дальнейшего развития
В результате анализа текущих требований к низкоресурсным криптоалгоритмам, подходов по их созданию и усилий по стандартизации криптоалгоритмов данного класса, а также происходящих в последние годы изменений в данной области можно сделать ряд предположений о дальнейшем развитии низкоресурсной криптографии.
Во-первых, в течение последних лет мы могли наблюдать смещение спектра устройств, в которых применяются низкоресурсные криптоалгоритмы, в сторону всё более широкого их использования в киберфизичееких системах различного назначения, т, е, расширяется область применения криптоалгоритмов в устройствах, находящихся в нижней части спектра устройств с точки зрения наличия у них вычислительных ресурсов. Это даёт основание предполагать появление следующих трендов в развитии низкоресурсной криптографии, связанных с возможным уходом от универсальных низкоресурсных криптостандартов в сторону специализированных:
— возможное выделение подкласса алгоритмов с крайне малыми требованиями к ресурсам для применения в минимально оснащённых устройствах; показательным является изначальное выделение подобных криптоалгоритмов в отдельный профиль в рамках конкурса NIST [11];
— возможное разделение низкорееуреных криптоалгоритмов на предназначенные для программной или для аппаратной реализации; здесь также уместно вспомнить про один из профилей алгоритмов конкурса NIST, подразумевавший требования только по аппаратной реализации алгоритмов — участников конкурса [11]; фундаментальные различия между направлениями минимизации ресурсоёмкое™ при программных или аппаратных реализациях криптоалгоритмов были описаны ещё в 2007 г. в работе [12].
Во-вторых, по сравнению с требованиями по криптостойкости, предъявляемыми ранее к низкоресурсным криптоалгоритмам и подразумевавшими наличие компромисса между уровнем криптостойкости и быстродействием при низких требованиях к ресурсам, современные требования к низкоресурсным криптоалгоритмам подразумевают достаточно высокий уровень криптостойкости (но ниже предъявляемых к криптоалгоритмам общего назначения — в частности, одно из требований конкурса NIST подразумевало минимум 2112 операций для успешной атаки на 256-битный алгоритм хеширования или на алгоритм шифрования со 128-битным ключом) при сохранении высоких требований к скорости обработки данных. Кроме того, если раньше экспертами могли высказываться предположения (например, в [13]), что атаки с использованием утечек данных по побочным каналам не обязаны приниматься во внимание при оценке низкоресурсного криптоалгоритма, то требования того же конкурса NIST включают в себя наличие у будущих низкоресурсных стандартов встроенных механизмов противодействия подобным атакам.
В-третьих, с появлением новых технологий сфера применения низкоресурсных криптоалгоритмов расширяется, что может в дальнейшем повлиять на требования к таким алгоритмам. В качестве примера относительно нового применения низкоресурсных криптоалгоритмов приведём низкоресурсный блокчейн (lightweight bloekehain), одним (но не единственным) из методов построения которого является применение низкоресурсных криптоалгоритмов [14].
ЛИТЕРАТУРА
1. NISTIR 8114. Report on Lightweight Cryptography. https://doi.org/10.6028/NIST.IR. 8114. 2017.
2. Announcing Request for Nominations for Lightweight Cryptographic Algorithms. Federal Register. 2018/08/27.
3. Dobraunig C., Eichlseder M., Mendel F., and Schlaffer M. Ascon vl.2. Submission to NIST. https://ascon.iaik.tugraz.at. 2021.
4. Leander G., Paar C., Poschmann A., and Schramm K. New lightweight DES variants // LNCS. 2007. V. 4593. R 196-210.
5. De Canniere G., Dunkelman O., and Knezevic M. KATAN k KTANTAN — A family of small and efficient hardware-oriented block ciphers // LNCS. 2009. V.5747. P. 272-288.
6. FIPS PUB 202. SHA-3 Standard: Permutation-Based Hash and Extendable-Output Functions, https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.202.pdf. 2015.
7. Daemen J., Hoffert S., Peeters M., et al. Xoodvak, a lightweight cryptographic scheme // IACR Trans. Symmetric Cryptologv. 2020. No. SI. P. 60-87.
8. GueronS., JhaA., and Nandi M. COMET: COunter Mode Encryption with authentication Tag. https://www.isical.ac.in/\~lightweight/comet/cometvl_spec.pdf. 2019.
9. Beierle C., Biryukov A., dos Santos L. C., et al. Lightweight AEAD and hashing using the Sparkle permutation family // IACR Trans. Symmetric Cryptologv. 2020. No. SI. P. 208-261.
10. Engels D., Fan X., Gong G., et al. Hummingbird: Ultra-lightweight cryptography for resource-constrained devices 11 LNCS. 2010. V.6054. P. 3-18.
11. Profiles for the Lightweight Cryptography Standardization Process. Draft White Paper. https://csrc.nist.gov/CSRC/media/Publications/white-paper/2017/04/26/ profiles-for-lightweight-cryptography-standardization-process/draft/ documents/profiles-lwc-std-proc-draft.pdf. 2017.
12. Poschmann A. Lightweight Cryptography from an Engineers Perspective. Workshop ECC. https://maths.ucd.ie/~gmg/ECC2007Talks/poschmann_LWC.pdf. 2007.
13. Bogdanov A., Knudsen L. R., Leander G., et al. PRESENT: An ultra-lightweight block cipher 11 LNCS. 2007. Y. 1727. P. 450-466.
14. Stefanescu D., Montalvillo L., Galan-Garcia P., et al. A systematic literature review of lightweight blockchain for IoT 11 IEEE Access. 2022. No. 10. P. 123138-123159.
УДК 519.7 + 004.056.55 DOI 10.17223/2226308X/16/20
ДОПОЛНИТЕЛЬНАЯ ОПТИМИЗАЦИЯ АЛГОРИТМА ПОИСКА ГАРАНТИРОВАННОГО ЧИСЛА АКТИВАЦИЙ В КРИПТОГРАФИЧЕСКИХ XS-CXEMAX1
Д. Р. Парфенов, А. О. Бахарев
Предложена дополнительная оптимизация алгоритма вычисления гарантированного числа активаций, предполагающая замену вычисления ранга матрицы соответствующей XS-схемы на проверку префикса пути в дереве перебора. Алгоритм был реализован и дал двукратный прирост производительности по сравнению с предыдущим вариантом. С использованием оптимизированной версии алгоритма проведено несколько вычислительных экспериментов, направленных на перебор XS-схем размерности меньше 8 и найдены их гарантированные числа активаций. На основе полученных данных предложена конструкция XS-схем переменной размерности, обладающая оптимальными числами активации.
Ключевые слова: гарантированное число активаций, XS-схемы, разностный криптоанализ.
При построении блочных шифров используются простые операции, имеющие од-нобуквенные обозначения, такие, как: 1) R — циклический сдвиг (rotation); X
3) А — сложение слов как целых чисел по модулю 2m (add);
4) L — побитовые логические операции И или ИЛИ;
5) М — умножение слов как элементов по ля порядка 2m; S
XS
XS
SM I. Skipjack, сеть Фейстеля. В данной работе рассматривается задача оптимизации алгоритма поиска гарантированного числа активаций [1], позволяющего получить
XS
Отметим, что алгоритм связан с исследованием линейного кода определённого вида, который строится на основе рассматриваемого шифра. Для каждого шифра из
1 Работа выполнена при поддержке Математического центра в Академгородке, соглашение с Министерством науки и высшего образования Российской Федерации №075-15-2022-282.