Электронная библиотека диссертаций и авторефератов России
dslib.net
Библиотека диссертаций
Навигация
Каталог диссертаций России
Англоязычные диссертации
Диссертации бесплатно
Предстоящие защиты
Рецензии на автореферат
Отчисления авторам
Мой кабинет
Заказы: забрать, оплатить
Мой личный счет
Мой профиль
Мой авторский профиль
Подписки на рассылки



расширенный поиск

Исследование вопросов построения и разработка матричных многофункциональных систем обнаружения ошибок и защиты данных Смикун, Петр Иванович

Исследование вопросов построения и разработка матричных многофункциональных систем обнаружения ошибок и защиты данных
<
Исследование вопросов построения и разработка матричных многофункциональных систем обнаружения ошибок и защиты данных Исследование вопросов построения и разработка матричных многофункциональных систем обнаружения ошибок и защиты данных Исследование вопросов построения и разработка матричных многофункциональных систем обнаружения ошибок и защиты данных Исследование вопросов построения и разработка матричных многофункциональных систем обнаружения ошибок и защиты данных Исследование вопросов построения и разработка матричных многофункциональных систем обнаружения ошибок и защиты данных
>

Диссертация - 480 руб., доставка 10 минут, круглосуточно, без выходных и праздников

Автореферат - бесплатно, доставка 10 минут, круглосуточно, без выходных и праздников

Смикун, Петр Иванович. Исследование вопросов построения и разработка матричных многофункциональных систем обнаружения ошибок и защиты данных : диссертация ... кандидата технических наук : 05.13.18 / Смикун Петр Иванович; [Место защиты: Ульян. гос. ун-т].- Ульяновск, 2011.- 175 с.: ил. РГБ ОД, 61 11-5/1850

Содержание к диссертации

Введение

1. Анализ и проектирование матричных систем преобразования кодов 11

1.1 Разработка подхода к алгоритмическому кодированию в числовом поле матрицы

1.1.1 Анализ систем матричного кодирования и их применение 11

1.1.2 Кодирование текста с использованием специальной матрицы А 17

1.1.3 Кодирование биграмм текста с использованием 26 модифицированной матрицы В

1.2 Графо-матричный подход к кодированию целых чисел 32

1.3 Разработка алгоритма матричного кодирования на основе модифицированной матрицы паскаля

1.4 Организация декодирования матричных кодов 45

1.5 Обеспечение биективности матричного кодирования 53

1.6 Выводы 54

2. Применение метода матрично-рангового кодирования для контроля ошибок при передаче данных по дискретным каналам связи

2.1 Передача данных по дискретному каналу на основе синхронизации передающего и приемного устройств

2.2 Обнаружение и исправление ошибок 63

2.3 Использование блоковых кодов 67

2.4 Разработка схем контроля и исправления ошибок матрично- ранговым кодированием

2.5 Выводы 79

3. Разработка систем шифрозащиты на основе матричного преобразования данных

3.1 Задачи построения скоростных шифров 80

3.2. Исследование шифрующих свойств циклического матричного кодирования

3.3. Разработка схем и алгоритма шифрования и дешифрования на базе управляемых перестановок и преобразования данных

3.4 Организация построения композиционного блочного шифра на основе матричного кодера и управляемых перестановок

3.5 Выводы 117

4. Моделирование матричных систем кодирования/декодирования и шифрования/дешифрования

4.1 Модель совмещения функций контроля ошибок и шифрования по зашумленному каналу связи

4.2 Разработка и реализация двухуровневого композиционного матричного шифрования текста

4.3 Моделирование матричной системы кодирования/декодирования и шифрования/дешифрования

4.4 Выводы 142

Заключение 143

Библиографический список используемой литературы

Введение к работе

Актуальность исследования. При передаче информации по каналам связи существуют две основные проблемы: защита передаваемой информации от влияния ошибок в каналах связи и защита информации от несанкционированного доступа – как правило, эти проблемы решаются независимо. При декодировании возникающие ошибки могут быть исправлены за счет избыточности кодирования. При алгебраическом дискретном кодировании информации вводится дискретное метрическое пространство и ошибки в сообщении определяются через расстояние в метрическом пространстве. Наиболее распространены помехоустойчивые коды, построенные в метрике Хэмминга, например, коды Рида-Соломона. Одни и те же ошибки в кодах с разными метриками могут быть исправлены в разных количествах из-за разного веса ошибки.

Особый интерес представляют метрики, в которых часть физических шумов имеет низкий вес. Матричные коды в ранговой метрике при передаче сигнала одновременно по нескольким частотам хорошо подходят для исправления ошибок, вызванными импульсными широкополосными или постоянными узкополосными шумами. Ошибки, обусловленные такими шумами, имеют более низкий вес в ранговой метрике, чем в метрике Хэмминга. Ранговые коды были предложены в 1985 г. Расширение классов кодов и создание новых кодов является важной задачей теории.

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

Пропускная способность открытого канала зависит от скоростей работы шифратора, узла избыточного помехоустойчивого кодирования и от их соотношения. Изыскание дополнительных возможностей повышения общей скорости этих операций может быть достигнуто несколькими путями: подбором методов кодирования и шифрования, обеспечивающих этот эффект, оптимальной организацией сочетания процедур избыточного кодирования и шифрования передаваемых данных (последовательность действий: «что раньше - что позже»?), а также рассмотрением возможностей совмещения этих операций в одном методе кодирования входных данных. Последний путь подразумевает, что методы кодирования должны обладать свойством многофункциональности. Сочетание двух подходов в одном методе обеспечения целостности может дать существенный выигрыш в быстродействии: вместо двух последовательных процедур шифрования и помехоустойчивого кодирования вводится одна, которая реализует сразу обе функции.

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

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

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

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

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

Объектом исследования являются системы передачи данных по небезопасным каналам связи с ошибками.

Предметом исследования являются методы кодирования/ декодирования, обеспечивающие выполнение и совмещение операций контроля ошибок и криптографической защиты данных.

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

Для достижения цели решаются следующие составные задачи:

  1. Исследование возможностей построения матричных кодов, обнаруживающих ошибки в каналах связи.

  2. Исследование возможностей построения системы криптографической защиты данных на основе матричного кодирования.

  3. Исследование возможностей совмещения функций контроля и криптографической защиты данных в одном методе матричного кодирования.

  4. Разработка матричных моделей контроля и криптографической защиты данных.

  5. Разработка средств моделирования и проведение моделирования систем контроля и криптографической защиты данных на базе матричного кодирования.

Методы исследования. Для решения поставленных задач и достижения намеченной цели использованы методы системного анализа, математического моделирования, теории вероятности, теории информационных систем, численные методы, а также методы программирования.

Научная новизна диссертационной работы определяется следующими результатами:

  1. Разработан подход и модели матрично-алгоритмического кодирования и декодирования в виде диаграмм формирования на числовом поле матрицы кода (пути) заданного веса (ранга) и восстановления исходного числа по двоичному коду. Доказана биективность выполняемых операций, приведены расчетные формулы для оценки сложности матрично-алгоритмического кодирования.

  2. На основе метода матрично-алгоритмического кодирования разработаны модели схемных решений по обнаружению не менее двух ошибок в передаваемых данных и созданы условия для прогнозирования при их передаче по каналам связи с ошибками.

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

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

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

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

Положения, выносимые на защиту:

  1. Подход и модели матрично-алгоритмического кодирования/ декодирования в виде диаграмм преобразования кодов заданного ранга (веса).

  2. Модели схемных решений по обнаружению ошибок на базе матрично-алгоритмического кодирования данных для каналов связи с ошибками без введения избыточности в передаваемый код.

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

  4. Рекурсивный способ и алгоритм вычисления веса (ранга) стандартного двоичного представления чисел без процедуры генерации кода за счет одной операции деления с остатком и порядка сложений.

  5. Комплекс программ моделирования и анализа характеристик систем, создаваемых на базе матрично-алгоритмического преобразования данных и предложенных моделей.

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

Внедрение результатов работы. Результаты, полученные в ходе выполнения диссертационной работы, приняты к использованию в проектных работах ФНПЦ ОАО «НПО «Марс», г. Ульяновск, ОАО «Интелтех», г. Санкт-Петербург, ЗАО «Центрпрограммсистем», г.Тверь .

Достоверность результатов, приведенных в диссертационной работе, определяется корректностью применения математического аппарата и результатами компьютерного моделирования.

Апробация работы. Результаты диссертационной работы докладывались и обсуждались на следующих семинарах и конференциях:

  1. Девятая международная научно-техническая конференция. Проблемы техники и технологий телекоммуникаций. ПТиТТ-2008 (Казань, 2008).

  2. Шестая международная конференция «Оптические технологии в телекоммуникациях. ОТТ-2008 (Казань-2008).

  3. Научные семинары факультета математики и информационных технологий Ульяновского государственного университета.
    (г. Ульяновск, 2007-2010гг.).

Публикации. По теме диссертации опубликовано 6 работ, в том числе 3 – в изданиях из перечня ВАК.

Личный вклад автора. Постановка задачи исследований осуществлена совместно с научным руководителем. Все основные установленные в диссертации результаты получены соискателем самостоятельно.

Структура и объем диссертации. Диссертация состоит из введения, четырех глав, заключения, списка используемой литературы из 114 наименований и одного приложения. Основной текст диссертации изложен на 154 страницы и содержит 47 рисунков и 9 таблиц.

Кодирование текста с использованием специальной матрицы А

Использование матрицы для кодирования и преобразования входных данных не является новым и во многих случаях оправдано. К входным данным относятся числа, буквы, символы, представленные как отдельно, так и структурированные по некоторым правилам. Привлекательность матричного преобразования состоит, прежде всего, в высокой скорости получения результата, сравнимой с аппаратной реализацией алгоритма. Это достоинство может быть обеспечено тремя внешними факторами: - организацией самой матрицы (выбором структуры); - организацией поля данных матрицы; - организацией функционирования матрицы для получения нужного результата. Структура матрицы определяется ее «геометрией»: прямоугольные, треугольные, диагональные, мономиальные и др. «Геометрия» определяет положение данных внутри матрицы, влияет на организацию выборки данных, может определять значения матричных данных через значения координат (индексы). Структура матрицы также связана с такими свойствами, как расширяемость ее границ, преобразование форм и др.

Матрица заполняется числами и данными, которые числами не являются. К числовым матрицам относятся вероятностные, интервальные, матрицы коэффициентов, представляющие целые и дробные числа, двоичные матрицы, состоящие из элементов 1 и 0.

К нечисловым матрицам относятся матрицы букв и символов текста, шифров, обозначений, подматрицы и другие объекты специального назначения. Организация чисел в матрице имеет принципиальное значение с точки зрения формирования кода, например, двоичная матрица, строки которых состоят из битовых элементов позволяет определить схему кодирования по правилу умножения строки на кодирующую матрицу справа и определяет (т, її) -код [66].

Двоичные матрицы для получения кодов Голомба, Риса, «проколотых» кодов [74] построены по треугольному принципу.

Другие двоичные матрицы, например, для низкоплотностных кодов проверки четности, имеют прямоугольный вид [66] и характеризуются расположением 1 и 0 в соответствии с идеей обнаружения ошибок.

В зависимости от содержания — заполнения матрицы данными вводятся дополнительные параметры, такие как определитель матрицы, строчный и столбцовый ранги, интервалы по строкам и столбцам, размеры самой матрицы, диапазоны представления матричных данных.

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

В основу матричного кодирования положены два принципа: координатный и алгоритмический («путевой»). В первом случае матричное преобразование базируется на формировании из кодируемых данных координат (индексов) матричного числа, которое является результатом преобразования. Это самый быстрый матричный способ кодирования.

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

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

Здесь может происходить чисто техническая замена алфавитов по некоторому правилу. Для алгоритмического («путевого») варианта целое число, символ или пиксел заменяются, как правило, двоичным кодом, в то время, как в координатном способе, данное, полученное в результате замены затем представляется двоичным стандартным кодом.

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

Декодирование не должно ухудшать скорость матричного преобразования, отсюда проектирование матричного кодера неразрывно связано с построением не менее быстрого декодера.

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

Обнаружение и исправление ошибок

Пусть имеется некоторая бинарная последовательность, подлежащая передаче по каналам связи. Пусть р — вероятность появления единицы в данной последовательности. Разработанный подход для передачи информации с использованием метода матрично-рангового кодирования заключается в следующем: разбиваем бинарную последовательность на п блоков длины L. Предположим, что блоки длины L не повторяются, т.е. не существует двух или более одинаковых блоков.

Тогда вероятность р того, что среди двоичных блоков длины L не существует повторяющихся, равна CJL-I 2L k=0 i=l где Xi - z -я компонента равномерного кода длины 2L числа к, полученного методом матрично-рангового кодирования с рангом п, pi=pRiqL Ri, Rf количество единиц в двоичном представлении числа і, вычисляемое по рекурсивной формуле Ri=g(x), где функция g(x) определяется следующим образом: rg(0) = О g(D = 1 . = K[ lD + g(X-2[l0g2X])-Пронумеруем все возможные двоичные последовательности длины L при помощи перевода в десятичный код с использованием стандартной процедуры. Пусть / -десятичное число, полученное в результате операции декодирования, Rt - ранг /-го блока длины L. Определим рекурсивную функцию g(x) следующим образом: 0(0) = 0, (1) = 1,д(х) = I ( пгЫ) + ЗІ 2[г52х])-Тогда ранг /-го блока длины L может быть вычислен при помощи построенной функции: Ri = СО-Очевидно, исходя из независимости появления символов в блоке, по теореме умножения вероятностей, вероятность появления блока длиной L, содержащего R І единиц, будет равна Pi=pRi(l -p)L Ri. Таким образом, имеется 2L исходов с соответствующими вероятностями Рі, і = 1,..., 2L. Пусть х = (%i, х\,..., X2L), - произвольный двоичный вектор, со держащий п единиц (о значении индекса к — в последующих рассуждениях). Воспользовавшись полиномиальной формулой в схеме Бернулли, получим ве роятность конкретного набора х = {х\,х\, ...д2\), равную гп —1 і к к Я- Х Іо Щ=ІРЇ 1 ЧІ l Далее, для того, чтобы пронумеровать все вектора х, содержащие п единиц, воспользуемся методом матрично-рангового кодирования. Согласно свойству монотонного неубывания длины кода по кодируемому десятичному числу при фиксированном ранге, все возможные комбинации бинарных блоков длины L, содержащие п единиц, будут являться кодами чисел от О до CL — 1 с рангом п, полученными методом матрично-рангового кодирования. Следовательно, искомая вероятность может быть найдена по формуле С5,_1 2" к=0 i=l здесь xf - і-я компонента равномерного кода длины 2L числа к, полученного методом матрично-рангового кодирования с рангом п. Предположим, что, согласно закону больших чисел при росте L в каждом блоке длины L от [Lp — А] до [Lp + А] единиц, то есть ранг варьируется в диапазоне ([Lp — A], [Lp + А]). Сразу заметим, что [Lp — А] I и [Lp + А] L. Объединив эти два неравенства, получим А rain (Lp — l,Lq).

Всего кодов длины L, полученных методом матрично-рангового кодирования, 2L-1 (нулевой байт не входит в допустимое множество, и, кроме того, код меньшей длины может быть корректно приведен к равномерному коду длины L). Это следует, например, из свойства монотонности длины кода по кодируемому десятичному числу при фиксированном ранге. При ограничении на диапазон ранга количество кодов сокращается до Д(А). [Lp+Д] fL(A)= СИ. i=[Lp-A] Очевидно, что функция fL (А) является монотонно возрастающей.

Итак, существует Д(А) потенциально возможных кодов. Пронумеруем данные коды произвольным образом и зафиксируем данный порядок как первоначальный. Каждый блок, полученный в результате разбиения исходной последовательности, является кодом некоторого числа N с рангом R. Следовательно, согласно данной нумерации, ему может быть присвоен некоторый номер. Номер блока 1 2 ... п Номер согласно нумерации i х2 Хп Осуществим перестановку множества {1,2,..., fL(A)} так, чтобы хг -» 1 х2- 2 хп п. Сразу отметим, что для корректной передачи количество не должно превышать //,(Д)!, то есть п fL(A)\. Пусть М-код необходимой перестановки по алгоритму генерации перестановок. Очевидно, что 0 М Д(А)!

Идея передачи информации заключается в синхронизации таймеров приемного и передающего устройств. Пусть і - показания таймера передатчика. В мантиссе времени отводится z разрядов для заполнения их информацией о числе М. Число Мтребует, очевидно, \lg М] десятичных разрядов.

Далее, начиная со времени t, осуществляется п посылок с произвольным интервалом (или только одна посылка, а число блоков передается другим способом или заранее согласовано). Декодирование осуществляется по времени t первой посылки и количеству п блоков (длина L заранее задается приемным и передающим устройствами). Для этого по t восстанавливается М (код перестановки), затем непосредственно сама перестановка. Определяются прообразы 1,2, ... ,п. Это числа х1,х2, ...,хп. Затем по первоначальной нумерации восстанавливаются сами блоки.

Пусть р - надежность передачи, характеризующая четкость синхронизации установленных z разрядов таймеров. Зададимся вопросом: сколько необходимо импульсов в установленное время, чтобы с вероятностью, большей или равной ft по принципу «большинства голосов» была осуществлена правильная передача. Обозначим через к необходимое количество импульсов.

Исследование шифрующих свойств циклического матричного кодирования

Метод матрично-рангового кодирования, обладает свойством обнаружения ошибок (об этом подробно представлен материал в главе 2). Дальнейший анализ показал, что этот метод обладает и возможностью криптозащиты, и впервые об этом упоминается в диссертации Ю. Ю. Терентьевой [113]. Занимаясь вопросами сжатия данных, она установила, что, используя матрично-ранговый метод, можно сжимать источники данных, порождаемые системами импульсной регистрации, что косвенно указывает на возможность его использования для криптографической защиты информации. Сокращение избыточности приводит к трудностям восстановления данных после сжатия при условии секретности самого алгоритма сжатия. Эффект сжатия непосредственно зависит от квазиэнтропии источника.

Такие системы обрабатывают последовательности данных, полученные в результате проведения технологических испытаний и контроля приборов в условиях производства. Эти последовательности разбиваются на блоки определённой длины, причём сами последовательности представляют собой реализации некоторой случайной величины. Показано, что в последовательности от 84 сутствуют блоки с преобладающей относительной частотой, отличные от тривиальных.

Рассмотрим шифрование на примере симметричных криптосистем. Симметричные криптосистемы - криптосистемы с симметричными (секретными) ключами. Симметричность означает, что ключи задают пару взаимнообратных криптографических преобразований. Стойкость симметричной криптосистемы определяется трудоемкостью, с которой противник может вычислить любой из секретных ключей.

Требования к длине ключа определяются исходя из требований к безопасности защищаемой информации.

Исходными данными для шифрования являются данные из бинарного потока с = (сг, с2, ...,сп), который разбивается на блоки. Каждый отдельно взятый блок является объектом, над которым производится ряд обязательных действий Процесс разработки криптографического кода на основе матричных преобразований, связан со следующими этапами: 1. Разбиение исходной последовательности на блоки. 2. Вычисление N = тр{с). Это кодирование исходного бинарного блока с = (сг, с2,..., сп) на основе метода, подробно изложенного в разделе 1. 3. Вычисление длины числа без учета старших нулевых разрядов. 4. Вычисление ранга блока с = (с1; с2, ...,сп) производится по формуле R = 2?=i СІ, где п — длина исходного бинарного блока. Значение ранга блока необходимо на дальнейших этапах разработки криптографического примитива. Из формулы видно, что значение ранга определяется путем подсчета единиц в бинарном блоке cL. 5. Вычисление значения вспомогательной функции С%, которое необходимо для вычисления подключа, производится по формуле 71 Я!(п-Я)! 6. Вычисление подключа к из ключа к. Эта процедура является наибо лее важной при разработке криптографической системы защиты ин 85 формации. Разрабатываемый криптографический примитив позволяет работать с ключами до 256 бит.

Структура подключа определяется рангом бинарного блока и структурой самого ключа. Выбираемый подключ является функцией к = f(R,k). Вычисление подключа к из ключа к производится по формуле к — к mod С%, где R - ранг блока. Полученный подключ определяет перестановку с в зависимости от преобразуемых данных. 7. Вычисление N = /(7V,/е ) представляет собой шифрование данных, полученных на предыдущем этапе в зависимости от ранга блока преобразуемых данных. В результате выполнения данного преобразования получаем выходную бинарную последовательность С = \С-1, C2J ..., сп). Применение циклического сдвига шифркода, полученного на выходе матрицы, в качестве криптографического примитива [114] не может дать хорошего эффекта по стойкости, т. к. имеет малое количество возможных модификаций и не обеспечивает высокую стойкость. Число различных модификаций операции циклического сдвига составляет всего п, а над двоичным вектором длины п может быть выполнено п\ различных вариантов операции перестановки. Кроме этого, сдвиги влево увеличивают длину шифркода, т. к. при кодировании ММРК длины кодов могут быть разными.

Отсюда требуется фиксировать после сдвига длину шифра с тем, чтобы на стадии дешифрования правильно воссоздать раундовую функцию С . Для хранения длины шифра введён дополнительный байт, обеспечивающий фиксацию длины до 255 бит. В результате увеличения общей длины шифра скорость его передачи по каналу связи уменьшается. Это является существенным недостатком шифра.

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

Первый путь: используя матрицу и выбор ранга (веса) как предшифр, заменить операцию сдвига на процедуры перестановки битов шифра, т. к. они обеспечивают большее перемешивание и рассеивание.

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

Моделирование матричной системы кодирования/декодирования и шифрования/дешифрования

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

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

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

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

Второе свойство метода матричного кодирования, а именно возможность обнаружения ошибок, рассмотрено в главе 2. Доказано, что двоичные коды целых неотрицательных десятичных чисел, полученные методом матрично-рангового кодирования, позволяют обнаружить по меньшей мере одну ошибку. Указанное свойство базируется на способности выявлять наличие неверной передачи данных, основываясь на учете двух факторов: - данные передаются по каналу, кодированные двоичными словами постоянной длины; - вес всех кодовых слов одинаков и равен выбранному режиму кодирования. Исходя из структуры матричного кода можно не только обнаруживать ошибки, но и исправлять их. Эффект применения предлагаемого подхода состоит в использовании особенностей кода наряду с реализацией возможности одновременного диагностирования полос связи параллельных каналов.

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

При обнаружении ошибок, основываясь на структуре матричного кода, ранг не меняется (остается неизменным). Это необходимое условие. Однако процедура шифрования может изменить установленный ранг. Образовавшееся противоречие порождает задачу - как удовлетворить требованиям вариативности ранга при шифровании и сохранить его неизменность при контроле ошибок в рамках одной системы подготовки данных для передачи по параллельному каналу связи.

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

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

Получаемые блоки криптограммы конкатенируются и поступают в канальный кодер модема, где осуществляется помехоустойчивое кодирование зашифрованного сообщения [73].

Блоки данных кодируются заданным (п,к) - кодом, которое поступают на вход модулятора, а затем их сигнальные конструкции передаются по каналу связи.

При установке шифратора между канальным кодером и модемом сообщения с выхода источника разбиваются на блоки длины Lk, кодируются и повторно разбиваются на блоки длины L для выполнения шифрования, в результате которого формируются блоки Le L, которые конкатенируются и поступают на вход модулятора аналогично первой схеме с передачей по каналу связи.

На приемной стороне после декодирования сообщения в первом случае выполняется канальное декодирование и декодирование источника сообщения с последующим дешифрованием. Во втором случае дешифрование выполняется перед канальным декодированием.

Похожие диссертации на Исследование вопросов построения и разработка матричных многофункциональных систем обнаружения ошибок и защиты данных