Проектирование криптографической системы для поточного зашифровывания информации
Дипломная работа - Компьютеры, программирование
Другие дипломы по предмету Компьютеры, программирование
мым алгоритмом необходимо, чтобы:
.(3.5)
Для выбора последовательности полиномов воспользуемся генератором ПСП с одинаковым начальным заполнением на отправляющей и приемной стороне.
Имеется банк неприводимых полиномов, пронумерованных по порядку. Последовательность, выдаваемую генератором, разделим на группы одинаковой разрядности, так чтобы каждая из групп, в двоичном виде, представляла один из номеров полиномов, и при этом разрядности группы хватило для представления наибольшего номера. Полиномы выбираются с помощью генератора ПСП, пока не выполнится условие (3.4), если полином с определенным номером уже выбран или номер не найден в банке, берется следующая группа значений последовательности генератора.
Таким образом, в этой системе любой многочлен, степени меньше m, имеет единственное представление в виде его вычетов по модулям рабочих оснований соответственно [8]. Тогда сообщение длины N бит можно интерпретировать как последовательность остатков от деления некоторого многочлена F(x) на рабочие основания, соответственно: , то есть:
,(3.6)
где i=1..t.
Остатки выбираются так, чтобы первым l1 битам сообщения соответствовали двоичные коэффициенты остатка , следующим l2 битам - двоичные коэффициенты остатка и так далее, последним lt двоичным разрядам - двоичные коэффициенты вычета .
Следующим этапом генерируется ключ длиной N бит, способ генерации ключа возможен любой.
Сам процесс шифрования состоит из двух этапов:
-перевод полученного информационного сообщения и ключа в последовательности вычетов, с помощью метода непосредственного суммирования;
-наложение гамма-функции на информационное сообщение в ПСКВ путем побитного суммирования по модулю двойки.
Работу блока прямого преобразования можно представить следующим образом (рисунок 3.2):
Рисунок 3.2 - Принцип работы блока прямого преобразования для системы нелинейного шифрования
Сам алгоритм шифрования представлен на рисунке 3.3:
Рисунок 3.3 - Схема алгоритма работы блока прямого преобразования для системы нелинейного шифрования
Таким образом, операции, проводимые в алгоритме, сводятся к суммированию по модулю двойки и в блоке суммирования с гаммой и при переводе в ПСКВ. Поэтому реализация алгоритма не требует значительных программно-аппаратных затрат и он может быть использован как при шифровании информации, при передаче по сети интернет (программная реализация), так и при шифровании цифровых сигналов в сотовых, теле-, радиосетях (аппаратная реализация).
3.4 Исследование стойкости алгоритма шифрования
Стойкость предложенного метода сокрытия информации определяется не только длиной ключа, но и используемыми полиномами. С ростом порядка неприводимых многочленов их количество быстро увеличивается.
Так как для шифрования информации с ключом длиной N бит порядок рабочего диапазона также должен быть не ниже N в соответствии с неравенством (3.4), то стойкость алгоритма шифрования, разработанного на базе непозиционных полиномиальных систем iисления, определяется общим числом всех возможных и отличающихся друг от друга вариантов выбора ключевых последовательностей и систем рабочих оснований. Также для выбранного множества оснований имеет значение их взаимное расположение.
Тогда с учетом перестановок оснований число комбинаций формирования системы из t выбранных оснований конкретных степеней будет определяться выражением:
,(3.7)
гдеV - число комбинаций;i - число выбранных неприводимых полиномов степени mi;- количество всех неприводимых полиномов степени mi.
Шифрование осуществляется путем наложения на электронное сообщение сгенерированной ключевой последовательности также длины N бит. Тогда полное количество перестановок:
.(3.8)
Исходя из полученных формул, стойкость шифрования сообщения длины N бит находится из формулы:
.(3.9)
Кроме прямого перебора ключей, для поточных шифров применяют аналитические и статистические методы криптоанализа направленные на выявление внутренней структуры генератора шифра или корреляции между ключом и гамма-функцией. Так как, полиномы выбираются случайным образом и возможна смена набора оснований, а ключ генерируется независимо от них, эффективность данных методов не доказана.
.5 Демонстрация работы блока прямого преобразования для системы нелинейного шифрования на примере
Рассмотрим пример реализации предложенного алгоритма для N=9.
Пусть информационное сообщение 011000001, также сгенерирован ключ К=110101011 и, в качестве оснований с помощью генератора ПСП, выбраны следующие неприводимые полиномы: , , .
Так как этого набора полиномов хватит для зашифрования сообщения.
Так как , тогда
Значение остатков степеней оснований и коэффициентов при них по модулю :
Тогда, в соответствии с выражением (3.3), остаток по основанию :
.
Значение остатков степеней оснований и коэффициентов при них по модулю :
Остаток по основанию :
.
Значение остатков степеней оснований и коэффициентов при них по модулю :
Остаток по основанию :
.
В виде остатков по основаниям, полином , в виде двоичного кода в ПСКВ: .
Для ключа К=110101011, .
Аналогично произведем формирование гамма-последовательности из ключа.
Остаток по основанию , ; по основанию , ; по основанию , .
В виде остатков по основаниям,