УДК 004.056.55 DOI 10.17223/2226308Х/16/22
РЕАЛИЗАЦИЯ ШИФРАТОРА SD-KAPT НА ПЛИС С ИСПОЛЬЗОВАНИЕМ ШИФРА МАГМА В РЕЖИМЕ ГАММИРОВАНИЯ
С. И. Разенков
Представлена реализация аппаратного шифратора SD-карт объемом до 2 Гбайт с использованием шифра Магма в режиме гаммирования. Полученные на ПЛИС разной архитектуры и с использованием разных САПР реализации имеют схожую рссурсосмкость но логическим элементам. Генерация гаммы не зависит от содержимого открытого текста или шифртекста, что позволяет генератору гаммы работать на собственной, более высокой тактовой частоте, чем остальное устройство. Показано, что таким образом можно значительно сократить время работы устройства.
Ключевые слова: ПЛИС, шифр Магма, рвжи,м, гаммирования.
Задача данного исследования - создать аппаратный шифратор Secure Digital (SD) карт |1|, осуществляющий зашифрование и расшифрование всего адресного пространства SD-карты, Аналогичных устройств, с которыми можно было бы провести сравнение, обнаружить не удалось. Несмотря па наличие в SD-картах механизма обеспечения конфиденциальности данных, предоставляющего доступ к содержимому карты по паролю, пет уверенности в отсутствии закладок, позволяющих обходить этот механизм, поскольку в открытом доступе представлена лишь сокращённая спецификация, описывающая поведение SD-карт.
В качестве криптосистемы выбран блочный шифр Магма |2|, который имеет небольшую длину блока (64 бит), что позволяет сделать очень компактную с точки зрения аппаратных ресурсов реализацию. Режим гаммирования |3| взят в качестве режима работы блочного шифра в силу своей простоты и идентичности операций зашифрования и расшифрования, что позволяет избежать усложнения логики работы устройства. Кроме того, гамма шифра может независимо генерироваться в процессе чтения блоков данных с SD-карты, после окончания которого можно немедленно приступать к записи данных, покомпонентно сложенных с гаммой. Такой подход, при котором работа шифра не зависит от блоков данных, позволяет избавиться от лишней задержки в работе устройства (рис, 1),
Рис. 1. Структурная схема шифратора SD-карт
86
Прикладная дискретная математика. Приложение
Описание шифратора выполнено на языке описания аппаратуры Verilog, Взаимодействие с SD-картой осуществляется с помощью набора взаимосвязанных конечных автоматов. Реализация осуществлялась с расчётом на SD-карты малого объёма (до 2 Гбайт включительно) - SD Standard Capacity (SDSC) карты, чтобы сократить время отладки шифратора, В дальнейшем возможно добавление поддержки ЯП-карч большего объёма. Согласно стандарту [1], по умолчанию тактовая частота для шины SD составляет не более 25 МГц,
Данные с SD-карты, согласно стандарту, по умолчанию считываются блоками по 512 байт. Кроме того, чтение и запись нескольких подряд идущих блоков осуществляются SD-картой быстрее, чем одиночных. Ввиду ограниченного количества блоков памяти RAM в ПЛИС, использованных для реализации устройства, при испытаниях устройство за транзакцию считывало 8 и 16 последовательно идущих блоков, однако число блоков настраивается и может быть равно произвольной степени двойки, ограниченной лишь имеющимися ресурсами ПЛИС, Параллельно с этим на основе фиксированных ключа и синхропосылки генерируется гамма того же объёма. После чтения данных они покомпонентно складываются с гаммой и записываются обратно на карту по соответствующим адресам.
Симуляция проекта осуществлена с помощью открытого ПО: спмулятора Icarus Verilog и библиотеки cocotb языка программирования Python, Шифратор реализован на ПЛИС двух разных семейств: iCE40 фирмы «Lattice Semiconductor» и GW2A фирмы «Gowin», В первом случае в качестве САПР выступили исключительно программы с открытым исходным кодом — Yosys и nextpr, а во втором случае — проприетарное ПО: Gowin EDA Education Edition, Количество использованных ресурсов ПЛИС приведено в табл.1,
Таблица 1
Сравнение количества использованных ресурсов ПЛИС
Семейство ПЛИС Блоков в транзакции Логические элементы D-триггеры Блоки RAM
iCE40 8 1111 513 16
GW2A 8 1030 472 16
16 1119 472 32
Реализации шифратора на обоих семействах ПЛИС протестированы на ЭО-картах объёмом 1 и 2 Гбайт при разном количестве блоков данных в танзакции, а также разной частоте работы генератора гаммы (табл. 2 и 3), Реализация на ПЛИС семейства К 'К К) взаимодействует с ЯП-карчои на частоте 18 МГц, а (1\\'2А — 25 МГц,
Таблица 2
Сравнение времени выполнения зашифрования/расшифрования
для реализации на iCE40
Тактовая частота генератора гаммы Блоков в транзакции 1 Гбайт 2 Гбайт
18 МГц 8 25 м 50 с 52 м 2 с
36 МГц 17 м 25 с 35м 7с
Таблица 3
Сравнение времени выполнения зашифрования/расшифрования
для реализации на GW2A
Тактовая частота генератора гаммы Блоков в транзакции 1 Гбайт 2 Гбайт
25 МГц 8 19 м 38 с 40 м 2 с
16 17 м 20 с 33 м 27 с
100 МГц 8 12 м 34 с 25 м 53 с
16 8м 48с 16 м 24 с
Показано, что увеличение тактовой частоты генератора гаммы позволяет значительно сократить время работы шифратора,
ЛИТЕРАТУРА
1. SD Specifications. Part 1. Physical Laver Simplified Specification Version 9.00. SD Association, 2022.
2. ГОСТ P 34.12-2015. Информационная технология. Криптографическая защита информации. Блочные шифры. М.: Стандартинформ, 2015.
3. ГОСТ Р 34.13-2015. Информационная технология. Криптографическая защита информации. Режимы работы блочных шифров. М.: Стандартинформ, 2015.
УДК 519.7 !)()! 10.17223/2226308Х/16/23
ОЦЕНКИ ТРУДНОСТИ ДОКАЗАТЕЛЬСТВ И КРИПТОГРАФИЧЕСКИХ АТАК, ОСНОВАННЫХ НА ЛАЗЕЙКАХ1
А, А, Семёнов
Рассматривается задача построения древовидных сертификатов доказательств невыполнимости булевых формул в предположении, что такое доказательство генерируется ЗАТ-решателем, основанным на алгоритме СОСТ.. Такого сорта древовидные представления удобны, когда для конкретной формулы требуется оценить, насколько трудно доказать её невыполнимость, либо требуется оценить трудоёмкость некоторой криптографической атаки, осуществляемой при помощи БАТ-решателя. Предложены древовидные описания сценариев работы СБСЬ в применении как к невыполнимым формулам, возникающим, например, в задачах символьной верификации, так и к выполнимым формулам, кодирующим задачи обращения дискретных (в том числе криптографических) функций. Доказан ряд свойств введённых древовидных структур. В частности, на языке таких структур сформулировано базовое свойство класса криптографических атак, основанного на инверсных лазейках.
Ключевые слова: проблема булевой вы полним ост,и (БАТ), система доказательства, лазейка, алгоритм СБСЬ.
1. Системы доказательства, способы представления доказательств,
лазейки
Пусть и — некоторый полный алгоритм, решающий проблему булевой выполнимости, например, и —метод резолюций [1], алгоритм БРГГ [2] или алгоритм СБСГ [3],
1 Исследование выполнено в рамках Госзадания Минобрнауки России по проекту «Теоретические основы, методы и высокопроизводительные алгоритмы непрерывной и дискретной оптимизации для поддержки междисциплинарных научных исследований», номер гос. регистрации 121041300065-9.