Научная статья на тему 'Псевдослучайная функция pCollapser, обеспечивающая экстремальный параллелизм обработки информации'

Псевдослучайная функция pCollapser, обеспечивающая экстремальный параллелизм обработки информации Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
75
21
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ПСЕВДО-СЛУЧАЙНЫЕ ФУНКЦИИ / ЛЕГКОВЕСНАЯ КРИПТОГРАФИЯ / ПСЕВДО-ДИНАМИЧЕСКИЕ ПОДСТАНОВКИ / PSEUDO-RANDOM FUNCTIONS / LIGHTWEIGHT CRYPTOGRAPHY / PSEUDO-DYNAMIC SUBSTITUTIONS

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Поликарпов Сергей Витальевич, Прудников Вадим Александрович, Кожевников Алексей Алексеевич, Румянцев Константин Евгеньевич

Для решения проблемы удовлетворения требований к псевдо-случайным функциям для легковесной электроники, среди которых, помимо обеспечения математической стойкости, является обеспечение нескольких взаимоисключающих свойств максимизация скорости обработки информации, минимизация затрачиваемых вычислительных ресурсов и минимизация задержки при обработки информации, предлагается применение вместо фиксированных подстановок нового элемента псевдо-динамических подстановок PD-sbox. Наличие дополнительного управляющего входа в PD-sbox затрудняет прямую замену фиксированных подстановок в структурах на основе SP-сетей. Проанализированы и предъявлены требования к псевдо-случайным функциям для легковесной электроники с учётом особенностей PD-sbox. Определены основные недостатки известной псевдо-случайной функции на основе PD-sbox Collapser. По результатам научных изысканий предложена итерационная псевдо-случайная функция pCollapser, каждый раунд которой содержит слой из параллельно включенных PD-sbox и слои дополнительных простых линейных перемешивающих функций для обработки состояний PD-sbox. Эффектом от применения слоя из параллельно включенных PD-sbox, состоящих в свою очередь из параллельного набора фиксированных подстановок, является обеспечение экстремального параллелизма обработки информации. Тестовая 4 раундовая аппаратная реализация pCollapser для 64 битного входного блока информации позволяет за один раунд (такт) обрабатывать массив из 64 фиксированных подстановок, что в 6 раз больше аналогов, построенных на базе SP-сети (например, алгоритма PRESENT). Результатом является кардинальное (в 6 раз) снижение критического пути прохождения сигнала.To solve the problem of satisfying the requirements for pseudo-random functions for lightweight electronics, among which, in addition to ensuring cryptographic strength, several mutually exclusive properties are required maximizing information processing speed, minimizing computational resources and minimizing information processing delays, it is proposed to use a new substitution element pseudo-dynamic substitutions of PD-sbox. The presence of an additional control input in the PD-sbox makes it difficult to directly replace fixed substitutions in structures based on SP-networks. The requirements for pseudo-random functions for lightweight electronics are analyzed and presented, taking into account the features of PD-sbox. The main disadvantages of the known pseudo-random function based on PD-sbox are determined Collapser. Based on the results of scientific research, an iterative pseudo-random function pCollapser is proposed, each round of which contains a layer of PD-sbox connected in parallel and layers of additional simple linear mixing functions for processing PD-sbox states. The effect of using a layer of parallel-connected PD-sbox, which in turn consists of a parallel set of fixed substitutions, is to ensure extreme parallelism of information processing. The test 4-round hardware implementation of pCollapser for a 64-bit input information block allowed to process an array of 64 fixed substitutions in one round (clock cycle), which is 6 times more than analogs built on the basis of the SP network (for example, the PRESENT algorithm). The result is a dramatic (6-fold) decrease in the critical path of signal.

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Поликарпов Сергей Витальевич, Прудников Вадим Александрович, Кожевников Алексей Алексеевич, Румянцев Константин Евгеньевич

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

Текст научной работы на тему «Псевдослучайная функция pCollapser, обеспечивающая экстремальный параллелизм обработки информации»

Гушанский Сергей Михайлович - Южный федеральный университет; e-mail: smgushanskiy@sfedu.ru; 347928, г. Таганрог, пер. Некрасовский, 44; тел.: 88634371656; кафедра вычислительной техники; к.т.н.; доцент.

Потапов Виктор Сергеевич - e-mail: vitya- ota ov@rambler.ru; кафедра вычислительной техники; аспирант.

Gushanskiy Sergey Mikhailovich - Southern Federal University; е-mail: smgushanskiy@sfedu.ru; 44, Nekrasovskiy, Taganrog, 347928, Russia; phone: +78634371656; the department of computer engineering; cand. of eng. sc.; associate professor.

Potapov Viktor Sergeevich - е-mail: vitya-potapov@rambler.ru; the department of computer engineering; postgraduate.

УДК 004.056.55 DOI 10.23683/2311-3103-2019-5-88-100

С.В. Поликарпов, В.А. Прудников, А.А. Кожевников, К.Е. Румянцев

ПСЕВДОСЛУЧАЙНАЯ ФУНКЦИЯ PCOLLAPSER, ОБЕСПЕЧИВАЮЩАЯ ЭКСТРЕМАЛЬНЫЙ ПАРАЛЛЕЛИЗМ ОБРАБОТКИ ИНФОРМАЦИИ

Для решения проблемы удовлетворения требований к псевдо-случайным функциям для легковесной электроники, среди которых, помимо обеспечения математической стойкости, является обеспечение нескольких взаимоисключающих свойств - максимизация скорости обработки информации, минимизация затрачиваемых вычислительных ресурсов и минимизация задержки при обработки информации, предлагается применение вместо фиксированных подстановок нового элемента - псевдо-динамических подстановок PD-sbox. Наличие дополнительного управляющего входа в PD-sbox затрудняет прямую замену фиксированных подстановок в структурах на основе SP-сетей. Проанализированы и предъявлены требования к псевдо-случайным функциям для легковесной электроники с учётом особенностей PD-sbox. Определены основные недостатки известной псевдо-случайной функции на основе PD-sbox - Collapser. По результатам научных изысканий предложена итерационная псевдо-случайная функция pCollapser, каждый раунд которой содержит слой из параллельно включенных PD-sbox и слои дополнительных простых линейных перемешивающих функций для обработки состояний PD-sbox. Эффектом от применения слоя из параллельно включенных PD-sbox, состоящих в свою очередь из параллельного набора фиксированных подстановок, является обеспечение экстремального параллелизма обработки информации. Тестовая 4 раундовая аппаратная реализация pCollapser для 64 битного входного блока информации позволяет за один раунд (такт) обрабатывать массив из 64 фиксированных подстановок, что в 6 раз больше аналогов, построенных на базе SP-сети (например, алгоритма PRESENT). Результатом является кардинальное (в 6 раз) снижение критического пути прохождения сигнала.

Псевдо-случайные функции; легковесная криптография; псевдо-динамические подстановки.

S.V. Polikarpov, V.A. Prudnikov, A.A. Kozhevnikov, K.E. Rumyantsev

PSEUDO-RANDOM FUNCTION PCOLLAPSER, PROVIDING EXTREME PARALLELISM OF INFORMATION PROCESSING

To solve the problem of satisfying the requirements for pseudo-random functions for lightweight electronics, among which, in addition to ensuring cryptographic strength, several mutually exclusive properties are required - maximizing information processing speed, minimizing computational resources and minimizing information processing delays, it is proposed to use a new substitution element - pseudo-dynamic substitutions of PD-sbox. The presence of an additional control input in the PD-sbox makes it difficult to directly replace fixed substitutions in structures based on

SP-networks. The requirements for pseudo-random functions for lightweight electronics are analyzed and presented, taking into account the features of PD-sbox. The main disadvantages of the known pseudo-random function based on PD-sbox are determined - Collapser. Based on the results of scientific research, an iterative pseudo-random function pCollapser is proposed, each round of which contains a layer of PD-sbox connected in parallel and layers of additional simple linear mixing functions for processing PD-sbox states. The effect of using a layer of parallel-connected PD-sbox, which in turn consists of a parallel set offixed substitutions, is to ensure extreme parallelism of information processing. The test 4-round hardware implementation of pCollapser for a 64-bit input information block allowed to process an array of 64 fixed substitutions in one round (clock cycle), which is 6 times more than analogs built on the basis of the SP network (for example, the PRESENT algorithm). The result is a dramatic (6-fold) decrease in the critical path of signal.

Pseudo-random functions; lightweight cryptography; pseudo-dynamic substitutions.

Введение. Псевдо-случайные функции, а также тесно связанные с ними псевдо-случайные перестановки, являются в современных информационных технологиях базовым элементом логической защиты информации. Важнейшим требованием к современным PFR, помимо обеспечения математической стойкости, является обеспечение нескольких взаимоисключающих свойств - максимизация скорости обработки информации, минимизация затрачиваемых вычислительных ресурсов, минимизация потребляемой мощности, минимизация задержки при обработки информации, противодействие атакам на программные и аппаратные реализации, основанных на анализе физических утечек внутреннего состояния. Последнее свойство предопределяется широким внедрением в повседневную жизнь защищённых RFID меток, смарт-карт, устройств IoT и других электронных устройств с ограниченными аппаратными ресурсами.

Проблемам создания псевдо-случайных функций, удовлетворяющих указанным требованиям, уделяется много внимания. Так, в [1-3] приведён обширный обзор псевдо-случайных функций для легковесной электроники. Академическим сообществом и коммерческими компаниями за последние годы было предложено более 50 легковесных блочных криптоалгоритмов, десятки поточных криптоалгоритмов и хеш-функций.

Постановка задачи. К легковесной стандартизированной псевдо-случайной перестановке относится отечественный алгоритм Магма из ГОСТ Р 34.12-2015 «Информационная технология. Криптографическая защита информации. Блочные шифры» [4]. В [5] приведён пример его легковесной реализации. Так как алгоритм Магма построен по сети Фейстеля и содержит 32 раунда преобразования информации, то это может существенно ограничить его применение в различных устройствах легковесной электроники, требующих минимизацию задержки при обработке информации (например, в системах, работающих в реальном масштабе времени). Эта же проблема касается алгоритма PRESENT из стандарта ISO/IEC 29192-2:2012 [6], который построен на основе SP-сети и содержит 32 раунда преобразования информации. Важность этой проблемы подтверждается тем, что институтом NIST США был запущен процесс по конкурсному отбору и стандартизации легковесных псевдо-случайных функций [7] для легковесной электроники.

Наиболее часто псевдо-случайные функции и перестановки используют структуру SP-сети - сети операций подстановок и перестановок [1-3, 8]. На рис. 1 показан пример 6-раундовой SP-сети.

Приведённая структура в каждом однотипном раунде содержит слой смешивания входного 64 битного блока исходного открытого сообщения (in ut) с секретным 64 битным раундовым ключом (round ey). Блок открытого сообщения разбивается на отдельные 4 битные слова, в качестве операции смешивания практически всегда применяют операцию побитового XOR (mix ey). После смешива-

ния 4 битные слова подаются на слой нелинейных 4 битных подстановок (sbox) и далее на перемешивающий линейный слой ( ermutation). SP-сеть предполагает возможность параллельного выполнения операций в каждом из слоёв. Так как один раунд не обеспечивает достаточной нелинейности преобразования, то нелинейность (и, соответственно, стойкость) набирается количеством последовательно выполняемых раундов преобразования. Например, в стандарте PRESENT [6] используется 32 раунда преобразования информации.

output, 64 bit

Рис. 1. Пример 6-раундовой SP-сети

В приведённом примере каждый слой подстановок содержит по 16 операций 4 битовых подстановок (sbox), которые можно выполнить за один такт. Соответственно 6 последовательно выполняемых раундов содержит 96 операций 4 битовых подстановок (sbox).

Требование по последовательному выполнению раундов преобразования является ограничением SP-сети и на практике может привести к значительному снижению потребительских качеств псевдо-случайных функций. Особенно это касается систем легковесной электроники, работающей в реальном масштабе времени, где одновременно присутствуют требования как по минимизации затрачиваемых аппаратных ресурсов, так и минимизации задержки при преобразовании информации.

Для удовлетворения требований легковесной электроники, при построении псевдо-случайных функций, закладывают следующие принципы [1-3]:

1. Для соответствия легковесности аппаратная реализация должна занимать площадь менее 3000 GE (в других источниках 2000 GE). Где GE - Gate Equivalent или площадь, занимаемая на кристалле ASIC одним логическим элементом 2И-НЕ;

2. Для достижения требований легковесности осуществляется максимальная экономия затрачиваемых ресурсов, в том числе, уменьшение длины обрабатываемых блоков информации и длины секретного значения (в ущерб стойкости).

3. Типовая длина преобразуемого блока Lblock = 64 бит.

4. Типовая длина секретного значения от Lkey = 48 до Lkey = 80 бит.

5. Основная структура функции - SP-сеть (более 80% всех алгоритмов), сеть Фейстеля или ARX-структура;

6. Наиболее часто используемый нелинейный элемент - фиксированные подстановки. Размерность фиксированных подстановок - 4 бит. Фиксированные подстановки являются наиболее ресурсоёмкими операциями.

7. Возможность параллельной и последовательной реализаций.

8. Частое применение упрощённой процедуры расширения секретного ключа, вплоть до прямого использования секретного ключа в раундовом преобразовании.

9. Эффективность реализации как в программном виде, так и в аппаратном.

Таким образом, существует актуальная проблема поиска структуры псевдослучайной функции, удовлетворяющей требованиям легковесной электроники, в том числе, противоречивым требованиям нелинейности, легковесности аппаратной реализации и минимизации задержки при обработки информации.

Предлагаемый подход. Возможным решением проблемы удовлетворения требований по одновременной минимизации затрачиваемых аппаратных ресурсов и минимизации задержки при преобразовании информации, является применение псевдо-динамических подстановок PD-sbox [9].

Изначально PD-sbox была предложена как альтернатива фиксированным подстановкам, обладающих известными недостатками [10-13]. Структура псевдодинамической подстановки PD-sbox (рис. 2) основана на базе обычных фиксированных подстановок (узлов замены) sbox. Входное значение каждой фиксированной подстановки параметризуется своим индивидуальным значением состояния (state), где i - номер фиксированной подстановки (от 0 до K-1). Текущее значение состояния S = S0,S1,S2,...,SN~1 задаёт одну эквивалентную (порождаемую) подстановку из всего множества возможных подстановок PD-sbox. Общий вид выражения, описывающего структуру псевдо-динамической таблицы подстановки, имеет вид

N - 1

Y= 0 sboxtiX^S1). (1)

i = 0

где sbox - фиксированные подстановки, N - количество фиксированных подстановок, X - входные биты, Y - выходные биты, S - биты состояния псевдодинамической подстановки.

Рис. 2. Структура псевдо-динамической подстановки PD-sbox

В [14-16] была проведена первичная оценка криптографических свойств псевдо-динамических подстановок РО-^Ьох, которая показала возможность их применения в качестве основного элемента псевдо-случайных функций.

Параллельная структура псевдо-динамической подстановки, в купе с использованием псевдо-динамических подстановок РВ-зЬох в подстановочных слоях (по аналогии с SP-сетями), создаёт возможность построения псевдо-случайной функции с экстремальным параллелизмом обработки информации. Однако, структура РВ-зЬох (а именно, наличие входа состояния) не позволяет простым способом осуществить замену фиксированных подстановок в SP-сети на РО-^Ьох.

В [17] была впервые приведена структура псевдо-случайной функции СоНар^'вг, состоящая из псевдо-динамических подстановок РО-^Ьох. Основной целью работы [17] было показать, что структура псевдо-случайной функции

Collapser на основе псевдо-динамических подстановок PD-sbox может обладать высокой нелинейностью и иметь такое распределение дифференциалов для выходных значений, которое неотличимо от распределения случайных подстановок.

Предложенная в [17] структура псевдо-случайной функции Collapser имеет следующие очевидные недостатки:

1. Последовательное включение всех псевдо-динамических подстановок PDsbox. В случае с размером блока 64 бит, выходное значение для 4 раундового Collapser будет получено только после последовательного прохождения информации через 64 псевдо-динамических подстановок PD-sbox. Это значение в 2 раза превышает количество раундов алгоритмов PRESENT [6] и Магма [5] и кардинально сказывается на вычислительной эффективности.

2. Вторым недостатком, вытекающим из первого, является то, что у криптоа-налитика появляются дополнительные возможности по анализу отдельных псевдодинамических подстановок (применяя принцип "разделяй и властвуй"). При этом, нелинейность всего преобразования в целом набирается достаточно медленно.

Предъявляемые требования к структуре псевдо-случайной функции. Для эффективного применения псевдо-динамических подстановок PD-sbox в итерационных (раундовых) преобразованиях, к структуре псевдо-случайной функции были предъявлены следующие основные требования, которые соответствуют современным тенденциям по построению псевдо-случайных функций для легковесной электроники:

♦ высокая нелинейность преобразования;

♦ длина преобразуемого блока открытого сообщения L_bloc = 64 бит;

♦ длина секретного значения L_ ey = 48 бит;

♦ размерность фиксированных подстановок 4 бит;

♦ минимизация раундов / итераций преобразования информации;

♦ возможность параллельной и последовательной реализаций;

♦ минимизация затрачиваемых программных и/или аппаратных ресурсов;

♦ прямое использование секретного состояния в раундовом преобразовании (исключение операций расширения секрета);

♦ псевдо-динамические подстановки в одном раунде не должны влиять друг на друга;

♦ псевдо-динамические подстановки текущего раунда формируют обновлённое состояние для псевдо-динамических подстановок следующего раунда;

♦ формирование обновлённого состояния (для псевдо-динамических подстановок следующего раунда) осуществляется отдельным перемешивающим слоем на выходе текущего раунда.

На основе предъявленных требований и ограничений была разработана структура раунда псевдо-случайной функции pCollapser (parallel Collapser), который представляет из себя (рис. 3) набор параллельно включённых псевдодинамических подстановок, на которые подаются соответствующие 4 битные слова исходного сообщения m. Одновременно с этим, на управляющие входы псевдодинамических подстановок подаются значения состояния s и значения секрета k. Выходным значениям c соответствуют значения выходов y псевдо-динамических подстановок. Обновлённые значения состояний, сформированные в псевдодинамических подстановках, подаются на отдельный перемешивающий слой на выходе раунда.

output, 64 bit

Рис. 3. Раунд псевдо-случайной функции pCollapser

Для обеспечения оптимального распределения ключевой информации и значений состояния раунд разбит на 4 параллельных независимых модуля (блока). Каждый модуль (рис. 4) содержит 4 псевдо-динамические подстановки PD-sbox 6x4x4 (рис. 5) и линейные операции перемешивания состояния permutation I и permutation II.

Рис. 4. Модуль раунда псевдо-случайной функции pCollapser

На вход модуля подаётся 4 слова входного сообщения m0...m3 (message, размерностью по 4 бита каждый), 4 слова ключа k0...k3 (round key, размерностью по 24 бита каждый, причём k2 = k0 и k3 = k1) и 4 слова входного состояния s0...s3 (in state, размерностью по 24 бита каждый). Результатом работы модуля являются 4 слова преобразованного сообщения с0...с3 (crypted, размерностью по 4 бита каждый) и 4 слова обновлённого состояния s*0...s*3 (new state, размерностью по 24 бита каждый).

Дополнительной особенностью раунда псевдо-случайной функции pCollapser является то, что на входы каждого модуля подаются одинаковые значения ключа k0...k3 и состояния s0...s3. Отличие между модулями заключается в линейных функциях permutation I и permutation II.

Линейная функция permutation III обеспечивает перемешивание обновлённых состояний, полученных от каждого модуля, в результирующее 96 битное состояние (new state), подаваемое на следующий раунд.

Структура псевдо-динамических подстановок. Псевдо-динамическая подстановка PD-sbox 6x4x4 состоит из 6 фиксированных подстановок, каждая фиксированная подстановка имеет размерность входа 4 бит и выхода - 4 бит (рис. 5).

Количество фиксированных 4 битных подстановок в данном случае является оптимальным, так как длина вектора состояния s (24 бит) кратна длине секрета (48 бит), а также исходя из других условий [14-16].

Рис. 5. Структура псевдо-динамической подстановки PD-sbox для pCollapser

Представленная псевдо-динамическая подстановка PD-sbox 6x4x4 содержит 4 слоя операций:

1. Смешивание входного 4 битного слова сообщения m с шестью 4 битными словами входного состояния s. Кроме смешивания, данный слой отвечает за расширение размерности входа из 4 бит в 24 бита.

2. Смешивание с шестью 4 битными словами секретного значения к

3. Слой из шести фиксированных 4 битовых подстановок sbox.

4. Операция редуцирования размерности выхода из 24 бита в 4 бита, предназначенная для формирования выходного 4 битного значения у.

Выражение, описывающее выходное значение псевдо-динамической подстановки PD-sbox 6x4x4:

5

сг = ф бЬох/ (т^ ф я/ ф й/), (2)

7 = 0

где sbox - фиксированные подстановки, m - входные биты, c - выходные биты, s -биты состояния псевдо-динамической подстановки.

Функции перемешивания. Функции перемешивания состояний играют основную роль обеспечения взаимодействия псевдо-динамических подстановок между раундами. В ходе проведённых исследований, были найдены подходящие простые функции перемешивания, отвечающие как требованиям перемешивания, так и эффективности программной и аппаратной реализаций.

Результирующее описание для раундового преобразования для pCollapser в виде псевдокода программы будет иметь вид:

1 round fiincfl] m, [] с. [] key, [] 6. [] s next) {

2 for(i = 0; i< 16: i++) {

3 y = 0; key_offset= (i*6)?/012: stateoffset = (i » 2)*6:

4 for (uint j = 0 : j < б ; j ++) { //work PD- sbox

5 jj = ((i%4)+j)%6:

6 rstate[j] =m[i] Лkey[offset + j] л s[state_offset +jj]: rstate[j] = sbox[j][row_state[j]]:

8 y = rstatel.i |; }

9 c[i]=y:

10 for ( j = 0: j < 6: j++) { rstate[j] y: }

11 for (j = 0: j < 6: j++) {

12 jj=((i%4>4]+(i»2))%6;

13 s_next[state_offset+j] rstate[jj] :

14 }}

15 Clear(tinp):

16 for( k = 0; k < 4: k++)

17 for ( j = 0: j < 6: j++) {tmp|j] "= s next[k*6+j]; }

18 for( k = 0: k < 4: k++)

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

19 for ( j = 0: j < 6: j++) { s nextlk+ô+j] - tinp[j] As_iiexl[k+64j ];}

20 }

Основные операции, приведённые в псевдокоде программы: «+» - арифметическое сложение; «*» - арифметическое умножение; «%» - вычисление остатка от деления; «>>2» - нециклический сдвиг вправо на 2 бита; «л» - сложение по модулю 2 (XOR); «[.]» - обращение к элементу массива.

Основные переменные, приведённые в псевдокоде программы: «m» - массив слов сообщения; «с» - массив слов преобразованного сообщения; « ey» - массив слов 48 битного ключа; «s» - массив слов входного состояния; «s_next» - массив слов обновлённого состояния;

Функция permutation I реализуется в строках 3, 5 и частично в 6 (перестановка входных слов путём манипуляции индексами слов состояния). Функция permutation II реализуется в строках 10-13. Функция permutation III реализуется в строках 16-19.

Результаты синтеза тестовой аппаратной реализации pCollapser для

ПЛИС. Использовалась среда разработки Xilinx Vivado, а в качестве ПЛИС -Xilinx xc7a35tftg256-1 (Xilinx Artix 7). Для синтеза использовалась 4 раундовая версия pCollapser. В качестве операций фиксированных подстановок, в тестовых целях, были выбраны следующие подстановки:

sbox0: {13, 14, 10, 1, 12, 4, 3, 15, 7, 2, 0, 5, 9, 6, 11, 8}; sbox1: {5, 0, 7, 2, 8, 11, 9, 6, 15, 3, 12, 4, 1, 10, 13, 14}; sbox2: {14, 9, 15, 0, 1, 11, 4, 7, 10, 8, 12, 2, 13, 6, 3, 5}; sbox3: {14, 11, 5, 12, 9, 1, 3, 2, 0, 4, 13, 8, 15, 7, 6, 10}; sbox4: {6, 10, 7, 15, 13, 8, 4, 0, 5, 12, 11, 14, 3, 2, 1, 9}; sbox5: {6, 2, 14, 4, 7, 9, 12, 13, 10, 3, 11, 0, 15, 1, 5, 8}.

В табл. 1 приведено количество затрачиваемой логики ПЛИС xc7a35tftg256-1 для реализации 4 раундов преобразования рСоИарзег.

Таблица 1

Затрачиваемая логика ПЛИС для реализации 4 раундов преобразования

pCollapser

Site_Type Used Fixed Available Util%

Slice_LUTs* 1047 0 20800 5.03

LUT_as_Logic 1047 0 20800 5.03

Slice_Registers 231 0 41600 0.56

Register_as_Flip_Flop 231 0 41600 0.56

Приведённые в табл. 1 результаты показывают соответствие функции рСоНар^'вг требованиям легковесной электроники.

На рис. 6 приведена временная диаграмма работы 4 раундов преобразования рСоНар^'вг. Для временной диаграммы период тактовых импульсов задан равным 13 нс (что, соответствует частоте 27,7 МГц и является наиболее приближенным вариантом к частоте 28,5 МГц).

Рис. 6. Временная диаграмма работы 4 раундов преобразования pCollapser

В табл. 2 приведено количество затрачиваемых ресурсов при реализации Colla ser в сравнении с другими функциями (символом * - обозначены значения, приведенные к частоте 28,5 МГц). Параметр GE (площадь на кристалле логического элемента 2И-НЕ) относится к аппаратной реализации на заказной микросхеме (ASIC). Параметры LUT (таблицы подстановки) и Latches (регистры) относятся к аппаратной реализации на программируемой логической интегральной схеме (FPGA). В таблице приведены результаты для обоих случаев, так как однозначного перевода между этими параметрами не существует.

Таблица 2

Сравнение затрачиваемых ресурсов с известными аналогами

Наименование Lkey Lblock Площадь кристалла, GE LUTs Latches Частота, МГц Задержка, нс Скорость, Мб/с

PRESENT [18] 80 64 1570 - - 28,5* 1120 57,0*

PRESENT [19] 80 64 - 222 201 28,5* 10325 6,2*

МАГМА [5] 256 64 1930 - - 28,5* - 6,84*

"Кузнечик" [20] 256 128 - 8810 2167 28,5 1526,2 83,9

pCollapser 4 rounds 48 64 - 1047 231 28,5 144 456

Анализ полученных результатов. Предложенная реализация раунда псевдослучайной функции pCollapser, благодаря экстремальному параллелизму, по количеству затрачиваемых фиксированных подстановок эквивалентна 6 раундам существующих псевдо-случайных функций, построенных на основе SP-сети (при сравнении, например, с PRESENT [18]). Однако, критический путь (путь прохождения одного из сигналов раунда, вносящего максимальную задержку) будет соответствовать не 6, а только 1 раунду псевдо-случайной функции, построенной на основе SP-сети.

Соответственно четырёх раундовая реализация псевдо-случайной функции pCollapser по количеству затрачиваемых фиксированных подстановок эквивалентна 24 раундам существующих псевдо-случайных функций (а критический путь будет соответствовать только 4 раундам аналогичной псевдослучайной функции, построенной на основе SP-сети).

Существует практическая возможность снижения затрачиваемых на pCollapser аппаратных ресурсов (при пропорциональном снижении скорости преобразования). Для этого в структуре pCollapser заложены одинаковые псевдодинамические подстановки и подобранная структура перемешивающего слоя.

Заключение. Предложена структура псевдо-случайной функции pCollapser на основе псевдо-динамических подстановок PD-sbox, позволяющая осуществить её аппаратную реализацию с экстремальным параллелизмом - параллельную обработку информации массивом псевдо-динамических подстановок, при этом каждая псевдо-динамическая подстановка реализуется набором параллельно исполняемых фиксированных подстановок. Реализация тестовой версии псевдослучайной функции pCollapser размерностью 64х64 бит на основе 6-элементных псевдо-динамических подстановок, позволяет осуществить обработку информации за 4 такта, что в 6 раз быстрее псевдо-случайной функции, построенной на основе SP-сети и содержащей аналогичное количество операций фиксированных подстановок (без учёта влияния операций перемешивания состояний).

БИБЛИОГРАФИЧЕСКИЕ ССЫЛКИ

1. Biryukov A., Perrin L. State of the Art in Lightweight Symmetric Cryptography // IACR Cryp-tology ePrint Archive. - 2017. - Vol. 2017. - P. 511.

2. Жуков А.Е. Легковесная криптография. Ч. 1 // Вопросы кибербезопасности. - 2015.

- Т. 9, № 1. - С. 26-43.

3. Жуков А.Е. Легковесная криптография. Ч. 2 // Вопросы кибербезопасности. - 2015.

- Т. 10, № 2. - С. 2-10.

4. ГОСТ Р 34.12-2015. Информационная технология. Криптографическая защита информации. Блочные шифры. - М.: Стандартинформ, 2016. - С. 15. - URL: https://tc26.ru.

5. Poschmann A., Ling S., WangH. 256 Bit Standardized Crypto for 650 GE - GOST Revisited // CHES. - 2010.

6. ISO/IEC 29192-2:2012. Information technology - Security techniques - Lightweight cryptography. Part 2: Block ciphers. - 2012. - С. 41. - URL: https://www.iso.org/standards-catalogue.

7. NIST Issues First Call for 'Lightweight Cry togra hy' to Protect Small Electronics. - 2018. -URL: https://www.nist.gov.

8. Preneel B. [and other]. Final report of European project number IST-1999-12324, named New European Schemes for Signatures, Integrity, and Encryption. - Berlin Heidelberg NewYork London Paris Tokyo Hong Kong Barcelona Budapest: Springer-Verlag, 2004.

9. Поликарпов С.В., Румянцев К.Е., Кожевников АА. Псевдо-динамические таблицы подстановки: основа современных симметричных криптоалгоритмов // Научное обозрение. - 2014.

- № 12. - С. 162-166. - URL: http://www.sced.ru/ru/files/7_12_1_2014/7_12_1_2014.pdf.

10. Ahmad M., Khan P.M., Ansari M.Z. A Simple and Efficient Key-Dependent S-Box Design Using Fisher-Yates Shuffle Technique // Recent Trends in Computer Networks and Distributed Systems Security - Second International Conference, SNDS 2014, Trivandrum, India, March 13-14, 2014, Proceedings. - 2014. - P. 540-550. - DOI: 10.1007/978- 3- 642- 54525- 2_48. - URL: http://dx.doi.org/10.1007/978-3-642-54525-2_48.

11. Pradeep L.N., Bhattacharjya A. Random Key and Key Dependent S-box Generation for AES Cipher to Overcome Known Attacks // Security in Computing and Communications - International Symposium, SSCC 2013, Mysore, India, August 22-24, 2013. Proceedings. - 2013. - P. 63-69.

- DOI: 10.1007/978-3-642-40576-1_7. - URL: http://dx.doi.org/10.1007/978-3-642-40576-1_7.

12. Hosseinkhani R. [и др.]. Using Cipher Key to Generate Dynamic S-Box in AES Cipher System. - 2012.

13. Schneier B. Description of a New Variable-Length Key, 64-bit Block Cipher (Blowfish) // Fast Software Encryption, Cambridge Security Workshop. - London, UK, UK: Springer-Verlag, 1994.

- P. 191-204. - ISBN 3-540-58108-1. - URL: http://dl.acm.org/citation.cfm?id=647930.740558.

14. Поликарпов С.В., Румянцев К.Е., Кожевников А.А. Исследование линейных характеристик псевдо-динамических подстановок // Известия ЮФУ. Технические науки. - 2015.

- № 5 (166). - С. 111-123.

15. Поликарпов С.В., Кожевников А.А. Псевдо-динамические подстановки: исследование линейных свойств // Известия ЮФУ. Технические науки. - 2015. - № 8 (169). - С. 19-31.

16. Polikarpov S., Petrov D., Kozhevnikov A. On A Class Pseudo-Dynamic Substitutions PDSbox, With A Perfect Averaged Distribution of Differentials in Static Mode of Work // Proceedings of the 2017 International Conference on Cryptography, Security and Privacy. - Wuhan, China: ACM, 2017. - P. 17-21. - (ICCSP 17). - ISBN 978-1-4503-4867-6. - DOI: 10.1145/3058060.3058087. - URL: http://doi.acm.org/10.1145/3058060.3058087.

17. Kozhevnikov A.A., Polikarpov S.V., Rumyantsev K.E. On differential properties of a symmetric cryptoalgorithm based on pseudo-dynamic substitutions // Математические вопросы криптографии. - 2016. - Т. 7:2. - С. 91-102. - URL: https://doi.org/10.4213/mvk186.

18. Bogdanov A. et al. PRESENT: An ultra-lightweight block cipher // in Cryptographic Hardware and Embedded Systems (Lecture Notes in Computer Science). Vol. 4727. - Berlin, Germany: Springer, 2007. - P. 450-466.

19. Tay J.J. [и др.]. Compact FPGA implementation of PRESENT with Boolean S-Box // 2015 6th Asia Symposium on Quality Electronic Design (ASQED). - 08.2015. - P. 144-148. - DOI: 10.1109/ACQED.2015.7274024.

20. Filiol E., Истомин А.А., Cedric D. «Кузнечик» - оптимизированные внедрения на ПЛИС и микроконтроллерах и их сопротивление анализу DPA // XXI научно-практическая конференция «РусКрипто'2019». - 2019. - URL: https://www.ruscrypto.ru/resource/archive/ rc2019/files/ 02_Istomin_Filiol_Delaunay.pdf.

REFERENCES

1. Biryukov A., Perrin L. State of the Art in Lightweight Symmetric Cryptography, IACR Cryp-tology ePrintArchive, 2017, Vol. 2017, pp. 511.

2. Zhukov A.E. Legkovesnaya kriptografiya [Lightweight cryptography]. Part 1, Voprosy kiberbezopasnosti [Cybersecurity issues], 2015, Vol. 9, No. 1, pp. 26-43.

3. Zhukov A.E. Legkovesnaya kriptografiya [Lightweight cryptography]. Part 2, Voprosy kiberbezopasnosti [Cybersecurity issues], 2015, Vol. 10, No. 2, pp. 2-10.

4. GOST R 34.12-2015. Informatsionnaya tekhnologiya. Kriptograficheskaya zashchita informatsii. Blochnye shifry [GOST R 34.12-2015. Information technology. Cryptographic protection of information. Block cipher]. Moscow: Standartinform, 2016, pp. 15. Available at: https://tc26.ru.

5. Poschmann A., Ling S., Wang H. 256 Bit Standardized Crypto for 650 GE - GOST Revisited, CHES, 2010.

6. ISO/IEC 29192-2:2012. Information technology - Security techniques - Lightweight cryptography. Part 2: Block ciphers, 2012, pp. 41. Available at: https://www.iso.org/standards-catalogue.

7. NIST Issues First Call for 'Lightweight Cry togra hy' to Protect Small Electronics, 2018. Available at: https://www.nist.gov.

8. PreneelB. [and other]. Final report of European project number IST-1999-12324, named New European Schemes for Signatures, Integrity, and Encryption. Berlin Heidelberg NewYork London Paris Tokyo Hong Kong Barcelona Budapest: Springer-Verlag, 2004.

9. Polikarpov S.V., Rumyantsev K.E., Kozhevnikov A.A. Psevdo-dinamicheskie tablitsy podstanovki: osnova sovremennykh simmetrichnykh kriptoalgoritmov [Pseudo-dynamic substitution tables: the basis of modern symmetric crypto-algorithms], Nauchnoe obozrenie [Scientific review], 2014, No. 12, pp. 162-166. Available at: http://www.sced.ru/ru/files/7_ 12_1_2014/7_12_1_2014.pdf.

10. Ahmad M., Khan P.M., Ansari M.Z. A Simple and Efficient Key-Dependent S-Box Design Using Fisher-Yates Shuffle Technique // Recent Trends in Computer Networks and Distributed Systems Security - Second International Conference, SNDS 2014, Trivandrum, India, March 13-14, 2014, Proceedings. - 2014. - P. 540-550. - DOI: 10.1007/978- 3- 642- 54525-2_48. - URL: http://dx.doi.org/10.1007/978-3-642-54525-2_48.

11. Pradeep L.N., Bhattacharjya A. Random Key and Key Dependent S-box Generation for AES Cipher to Overcome Known Attacks, Security in Computing and Communications - International Symposium, SSCC 2013, Mysore, India, August 22-24, 2013. Proceedings, 2013, pp. 6369. - DOI: 10.1007/978-3-642-40576-1_7. Available at: http://dx.doi.org/10.1007/978-3-642-40576-1_7.

12. Hosseinkhani R. [and other]. Using Cipher Key to Generate Dynamic S-Box in AES Cipher System, 2012.

13. SchneierB. Description of a New Variable-Length Key, 64-bit Block Cipher (Blowfish), Fast Software Encryption, Cambridge Security Workshop. London, UK, UK: Springer-Verlag, 1994, pp. 191-204. - ISBN 3-540-58108-1. Available at: http://dl.acm.org/ cita-tion.cfm?id=647930.740558.

14. Polikarpov S.V., Rumyantsev K.E., Kozhevnikov A.A. Issledovanie lineynykh kharakteristik psevdo-dinamicheskikh podstanovok [The study of the linear characteristics of the pseudo-dynamic lookup], Izvestiya YuFU. Tekhnicheskie nauki [Izvestiya SFedU. Engineering Sciences], 2015, No. 5 (166), pp. 111-123.

15. Polikarpov S.V., Kozhevnikov A.A. Psevdo-dinamicheskie podstanovki: issledovanie lineynykh svoystv [Pseudo-dynamic substitutions: a study of linear properties], Izvestiya YuFU. Tekhnicheskie nauki [Izvestiya SFedU. Engineering Sciences], 2015, No. 8 (169), pp. 19-31.

16. Polikarpov S., Petrov D., Kozhevnikov A. On A Class Pseudo-Dynamic Substitutions PDSbox, With A Perfect Averaged Distribution of Differentials in Static Mode of Work, Proceedings of the 2017 International Conference on Cryptography, Security and Privacy. Wuhan, China: ACM, 2017, pp. 17-21. (ICCSP 17). ISBN 978-1-4503-4867-6. DOI: 10.1145/3058060.3058087. Available at: http://doi.acm.org/10.1145/3058060.3058087.

17. Kozhevnikov A.A., Polikarpov S.V., Rumyantsev K.E. On differential properties of a symmetric cryptoalgorithm based on pseudo-dynamic substitutions, Matematicheskie voprosy kriptografii [Mathematical questions of cryptography], 2016, Vol. 7:2, pp. 91-102. Available at: https://doi.org/10.4213/mvk186.

18. Bogdanov A. et al. PRESENT: An ultra-lightweight block cipher, in Cryptographic Hardware and Embedded Systems (Lecture Notes in Computer Science), Vol. 4727. Berlin, Germany: Springer, 2007, pp. 450-466.

19. Tay J.J. [and other]. Compact FPGA implementation of PRESENT with Boolean S-Box, 2015 6th Asia Symposium on Quality Electronic Design (ASQED), 08.2015, pp. 144-148. DOI: 10.1109/ACQED.2015.7274024.

20. Filiol E., Istomin A.A., Cedric D. «Kuznechi » - optimizirovannye vnedreniya na PLIS i mikrokontrollerakh i ikh soprotivlenie analizu DPA ["Grasshopper" - optimized implementations on FPGAs and microcontrollers and their resistance to DPA analysis], XXI nauchno-prakticheskaya konferentsiya «RusKripto'2019» [XXI scientific-practical conference "RusCrypto'2019"], 2019. Available at: https://www.ruscrypto.ru/resource/archive/rc2019/files/ 02_Istomin_Filiol_Delaunay.pdf.

Статью рекомендовал к опубликованию д.т.н., профессор О.И. Шелухин.

Поликарпов Сергей Витальевич - Южный федеральный университет; e-mail:

polikarpovsv@sfedu.ru; 347900, г. Таганрог, ул. Чехова 2, корпус «И»; тел.: 89085159762; к.т.н.

Прудников Вадим Александрович - e-mail: ruvad@yandex.ru; тел.: 89198961427.

Кожевников Алексей Алексеевич - e-mail: leha.kozhevnikov@gmail.com; тел.: 89044470807.

Румянцев Константин Евгеньевич - e-mail: r e2004@mail.ru; тел.: 89281827209; д.т.н.;

профессор.

Polikarpov Sergey Vitalievich - Southern Federal University; e-mail: polikarpovsv@sfedu.ru,

347900, Taganrog, Chekhov street, 2; phone: +79085159762; cand. of eng. sc.

Prudnikov Vadim Aleksandrovich - e-mail: pruvad@yandex.ru; phone: +79198961427.

Kozhevnikov Aleksey Alekseyevich - e-mail: leha.kozhevnikov@gmail.com; phone: +79044470807.

Rumyantsev Konstantin Evgenyevich - e-mail: rke2004@mail.ru; phone: +79281827209; dr. of

eng. sc.; professor.

УДК 004.9:004.8 DOI 10.23683/2311-3103-2019-5-100-113

Д.М. Елькин, В.В. Вяткин

НА ПУТИ К ИНТЕРНЕТУ ВЕЩЕЙ В УПРАВЛЕНИИ ТРАНСПОРТНЫМИ ПОТОКАМИ: ОБЗОР СУЩЕСТВУЮЩИХ МЕТОДОВ УПРАВЛЕНИЯ ДОРОЖНЫМ ДВИЖЕНИЕМ*

Интернет вещей (IoT) - это одна из важнейших технологий будущего, позволяющая сделать окружающую инфраструктуру разумной и адаптируемой к потребностям пользователей. Один из типов подобных инфраструктур - транспорт. Связь между дорогами и городами очевидна. Основными особенностями дорожной инфраструктуры являются длительный срок службы и высокая стоимость, а это значит, что эту проблему можно решить в настоящий момент, сохранив эти объекты в их первоначальном состоянии. Экономические расчеты показывают, что эффективно управлять движением на существующих дорогах выгоднее, чем строить новые, хотя это и не очень дешево с экономической точки зрения. Исследуя опыт многих крупных мегаполисов мира можно сделать вывод, что строительство новых и реконструкция существующих автомобильных дорог из-за постоянного увеличения количества транспортных средств не позволяет полностью сократить разницу между пропускной способностью дорог и уровнем спроса необходимого для автомобильного транспорта. Высокие затраты на строительство новой дорожной инфраструктуры, постоянные транспортные заторы и экологические факторы подталкивают компании и правительство к поиску решений для более эффективного управления транспортными потоками. Мы ищем возможности для минимизации негативных последствий заторов и оптимизации использования ограниченных государственных средств. В этой статье рассматриваются существующие методы и алгоритмы для автоматического управления транспортными потоками с целью определения точек воздействия на них и методов для применения IoT в транспортном секторе. Обсуждаются преимущества и недостатки существующих методов, в том числе оценивается их эффективность.

IoT; управление дорожным движением; интеллектуальные транспортные системы; ИТС; транспортные потоки; транспортные заторы.

* Исследование выполнено при финансовой поддержке РФФИ в рамках научного проекта № 19-37-90102.

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