Научная статья на тему 'РЕАЛИЗАЦИЯ ШИФРАТОРА SD-KAPT НА ПЛИС С ИСПОЛЬЗОВАНИЕМ ШИФРА МАГМА В РЕЖИМЕ ГАММИРОВАНИЯ'

РЕАЛИЗАЦИЯ ШИФРАТОРА SD-KAPT НА ПЛИС С ИСПОЛЬЗОВАНИЕМ ШИФРА МАГМА В РЕЖИМЕ ГАММИРОВАНИЯ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
32
23
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ПЛИС / шифр Магма / режим гаммирования / FPGA / Magma cipher / counter mode

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Разенков Семен Игоревич

Представлена реализация аппаратного шифратора SD-карт объёмом до 2 Гбайт с использованием шифра Магма в режиме гаммирования. Полученные на ПЛИС разной архитектуры и с использованием разных САПР реализации имеют схожую ресурсоёмкость по логическим элементам. Генерация гаммы не зависит от содержимого открытого текста или шифр-текста, что позволяет генератору гаммы работать на собственной, более высокой тактовой частоте, чем остальное устройство. Показано, что таким образом можно значительно сократить время работы устройства.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

FPGA IMPLEMENTATION OF AN SD-CARD ENCRYPTOR BASED ON MAGMA CIPHER IN COUNTER MODE

A hardware implementation of an SDSC card encryptor based on Magma cipher in counter mode is described. Implementations using two different FPGA architectures and synthesis software have similar hardware resource utilization. Keystream generation does not depend on the data which allows to increase the clock frequency of the generator. It was shown that this approach significantly reduces device operation time.

Текст научной работы на тему «РЕАЛИЗАЦИЯ ШИФРАТОРА SD-KAPT НА ПЛИС С ИСПОЛЬЗОВАНИЕМ ШИФРА МАГМА В РЕЖИМЕ ГАММИРОВАНИЯ»

УДК 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.

i Надоели баннеры? Вы всегда можете отключить рекламу.