Об одном способе гиперсетевого кодирования с учетом криптозащиты и имитостойкости
Автор: Легкий Дмитрий Сергеевич, Попков Владимир Константинович
Журнал: Проблемы информатики @problem-info
Рубрика: Средства и системы защиты информации и сетевых ресурсов
Статья в выпуске: 2 (19), 2013 года.
Бесплатный доступ
Рассматриваются вопросы создания принципа шифрования на основе сложной многоуровневой сетевой структуры — гиперсети. Предлагаемый принцип включает непосредственную защиту от различных видов нарушения целостности данных.
Гиперсеть, блочный алгоритм шифрования, гиперсетевая основа, защита информации, имитостойкость
Короткий адрес: https://sciup.org/14320203
IDR: 14320203
Текст научной статьи Об одном способе гиперсетевого кодирования с учетом криптозащиты и имитостойкости
Введение. Шифрование данных не является гарантией их целостности, поэтому в криптографии используются дополнительные методы обеспечения целостности данных. Под нарушениями целостности данных понимаются инверсия битов, добавление новых битов (в частности, новых данных) третьей стороной, удаление битов данных, изменение порядка следования битов или их групп.
В криптографии решение задачи целостности информации предполагает применение мер, позволяющих обнаруживать не столько случайные искажения информации, сколько целенаправленное изменение информации активным криптоаналитиком. Процесс контроля целостности обеспечивается введением в передаваемую информацию избыточности [1].
Теория гиперсетей позволяет моделировать любой математический процесс, связанный с описанием и применением структур, поскольку обеспечивает наглядность процесса моделирования. Решение задачи защиты информации в процессе шифрования на основе сложной структуры позволяет не только надежно защитить данные, но и упростить аппаратнопрограммную реализацию алгоритма шифрования, так как процесс шифрования совпадает с процессом дешифрования, отличием является только порядок выполнения “раундов”.
Большинство современных блочных шифров, таких как Blowfish, Camellia, CAST-128, CAST-256, CIPHERUNICORN-A, CIPHERUNICORN-E идр. [1], в качестве основы используют сеть Фейстеля.
Альтернативой сети Фейстеля является подстановочно-перестановочная сеть, на основе которой построены такие шифры, как 3-Way, ABC, AES (Rijndael), Akelarre. Anubis, ARIA, BaseKing, BassOmatic и др.
Рассмотрим вариант алгоритма, в котором основой служит гиперсетевая структура и который является еще одной альтернативой блочным шифрам.
Описание алгоритма. Разобьем сообщение Z , записанное в двоичном коде, на блоки b j = { kli } , где { kli } — матрица из q столбцов и g строк, в которой \ b j | = N . Каждый блок b j , в свою очередь, разобьем на d частей.
Пусть задана гиперсеть S = ( X, V, R ) , являющаяся долгосрочным ключом. Каждой вершине x i из множества вершин X = ( x 1 , x 2 , ...,x n ) гиперсети S и каждой ветви v p из множества ветвей V = ( v 1 , v 2 , ...,v g ) гиперсети S присваивается вес d , а именно часть секретного ключа (в двоичном виде). Во множестве R = ( r 1 , r 2 , ...,r f ) каждому ребру r j ставится в соответствие цепь в графе первичной сети PS = ( X, V ) .
Пусть матричное представление гиперсети S задано матрицами инциденций M xv ( S ) = { a ij } , M vr ( S ) = { b jk } , M xr ( S ) = { c ik } , данные из которых будут использованы в процессе шифрования [2].
С использованием данных, описанных в { k l i } , текущего ключа K ( Z ) = ( h 1 ... h ( qxg ) ) и гиперсети S построим кодировку следующим образом.
-
1. Первый раунд формирования шифротекста. Имеется три типа матриц:
-
1) N матриц b j ={ k l i } j , соответствующих исходным данным размерностей n х q ( n — число столбцов; q — число строк);
-
2) матрица гиперсети S размерностей M xv — ( n х g ) ;
-
3) матрица K ( Z ) временного ключа размерностью g х q .
Для каждой строки z очередного блока { k l i } j матрицы b j выполним следующую операцию: каждой ее строке поставим в соответствие строку того же размера новой матрицы { h l i } j по следующему правилу:
-
1) выполнив сложение по модулю 2 строки z матрицы M xv с соответствующим столбцом матрицы K ( Z ) , получаем матрицу D размерностью n х g ;
-
2) полученную матрицу D складываем по модулю 2 с матрицей b j = { k l i } j .
-
2. Второй раунд формирования шифротекста. Определим веса ребер вторичной сети по следующему правилу: вес ребра равен сумме весов инцидентных данному ребру ветвей. Результат данной операции — матрица весов ребер графа вторичной сети WM размерностью q x g .
-
3. Третий раунд формирования шифротекста. Выполним операции, аналогичные операциям первого раунда, для следующих матриц:
В результате для всего сообщения Z получаем систему матриц H j = { h l i } j размерностью n х q .
-
1) N матриц H j ={ h l i } j — матрицы размерностей q х n ;
-
2) матрица M xr гиперсети S размерностей n х f ;
-
3) матрица WM весов ребер размерностью q х f .
В результате получаем матрицу WH j = { h l i } j размерностью q х n .
Аналогичные операции можно выполнить для гиперсетей S произвольного вида, что позволит увеличить криптостойкость данного алгоритма шифрования.
Процесс дешифрования полученного шифротекста осуществляется с помощью аналогичных операций.
Процесс шифрования с помощью гиперсети имеет следующие особенности:
-
1. Важным отличием гиперсети от сетей Фейстеля и подстановочно-перестановочных сетей является то, что гиперсетевая основа влияет на длину блока исходного текста: существует четкая зависимость длины исходного блока от количества вершин используемой гиперсети.
-
2. За счет введения в первичную сеть мультиветвей для блока исходного сообщения произвольной длины длина ключа может быть сколь угодно большой, но не меньше n - 1 ( n — число вершин гиперсети).
-
3. Условием достижения максимального “лавинного эффекта” [3] с помощью гиперсети является включение в нее максимально возможного количества вторичных сетей.
-
4. При шифровании очередной блок шифротекста полностью определяется только соответствующим блоком открытого текста и значением секретного ключа, поэтому одинаковые блоки открытого текста будут преобразовываться в одинаковые блоки шифротекста. Данный эффект нежелателен, так как может дать подсказку при анализе содержания сообщения. Необходимо использовать режим шифрования, отличный от режима ECB (electronic code book). В качестве примера, требующего подробного исследования, рассмотрим следующий режим обратной связи: зашифрованный блок сообщения суммируется по модулю 2 с предыдущим блоком, точнее, с его исходной (незашифрованной) формой. В итоге работы такого режима получаем зашифрованное сообщение, в котором каждый блок (кроме первого) зависит от предыдущего и любая ошибка в единичном бите влияет на сообщение в целом. Таким образом, за счет чувствительности даже к единичным ошибкам данный режим предоставляет исходному сообщению имитозащиту от нежелательной информации.
Заключение. Описанная в данной работе основа блочного симметричного шифрования на базе гиперсети является безызбыточной, что позволяет использовать данный метод шифрования в режиме он-лайн. Предлагаемый метод предоставляет возможность создания новых гибких алгоритмов шифрования, которые можно применять в различных системах защиты информации.
Список литературы Об одном способе гиперсетевого кодирования с учетом криптозащиты и имитостойкости
- FeistelH. Cryptography and computer privacy//Sci. Amer. 1973. V. 228, N 5. P.15-23.
- Попков В. К. Математические модели связности. Новосибирск: ИВМиМГ СО РАН, 2006.
- Шеннон К. Теория связи в секретных системах//Работы по теории информации и кибернетике. М.: Иностр. лит., 1963.