Сучасні інформаційні технології

Інформаційна безпека

А.Ю. Швец, Р.В. Бараненко, В.В. Лазаренко

Херсонский национальный технический университет

ПРИМЕНЕНИЕ СИММЕТРИЧНЫХ КРИПТОЛОГИЧЕСКИХ СИСТЕМ ДЛЯ ЗАЩИТЫ ИНФОРМАЦИИ

 

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

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

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

-               Проверка целостности информации;

-               Исключение несанкционированного доступа к ресурсам персонального компьютера, а также к программам и данным, которые хранятся в нем;

Средства защиты информации можно разделить на следующие категории [1]:

-      Средства собственной защиты;

-      Средства защиты как часть вычислительной системы;

-      Средства защиты с запросом информации;

-      Средства активной защиты;

-      Средства пассивной защиты.

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

Криптографическая защита – это защита при помощи криптографического преобразования: кодирования и шифрования.

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

-      за­шиф­ро­ван­ное сообщение дол­жно под­да­вать­ся чте­нию толь­ко при на­ли­чии клю­ча;

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

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

-      зна­ние ал­го­рит­ма шиф­ро­ва­ния не долж­но вли­ять на на­деж­ность за­щи­ты;

-      не­зна­чи­тель­ное из­ме­не­ние клю­ча долж­но при­во­дить к су­ще­ст­вен­но­му из­ме­не­нию ви­да за­шиф­ро­ван­но­го сообщения да­же при ис­поль­зо­ва­нии од­но­го и то­го же клю­ча;

-      струк­тур­ные эле­мен­ты ал­го­рит­ма шиф­ро­ва­ния долж­ны быть не­из­мен­ны­ми;

-      до­пол­ни­тель­ные би­ты, вво­ди­мые в сообщение в про­цес­се шиф­ро­ва­ния, должен быть пол­но­стью и на­деж­но скры­ты в шиф­ро­ван­ном тек­сте;

-      дли­на шиф­ро­ван­но­го тек­ста долж­на быть рав­ной дли­не ис­ход­но­го тек­ста;

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

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

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

Современная криптография включает в себя четыре крупных раздела [4]:

1. Симметричные криптосистемы.

2. Криптосистемы с открытым ключом.

3. Системы электронной подписи.

4. Управление ключами.

Все мно­го­об­ра­зие су­ще­ст­вую­щих крип­то­гра­фи­че­ских ме­то­дов мож­но све­сти к сле­дующим клас­сам пре­об­ра­зо­ва­ний (рис. 1):

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

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

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

Блочные шифры представляют со­бой по­сле­до­ва­тель­ность (с воз­мож­ным по­вто­ре­ни­ем и че­ре­до­ва­ни­ем) ос­нов­ных ме­то­дов пре­об­ра­зо­ва­ния, при­ме­няе­мую к блоку (части) шиф­руе­мого­ тек­ста. Блочные шифры на прак­ти­ке встре­ча­ют­ся ча­ще, чем “чис­тые” пре­об­ра­зо­ва­ния то­го или ино­го клас­са в си­лу их бо­лее вы­со­кой крип­то­стой­ко­сти. Рос­сий­ский и аме­ри­кан­ский стан­дар­ты шиф­ро­ва­ния ос­но­ва­ны имен­но на этом классе шифров [4].

Перестановкой s набора целых чисел (0,1,...,N-1) называется его переупорядочение. Для того чтобы показать, что целое i пере­мещено из позиции i в позицию s(i), где 0 £ (i) < n, будем использовать запись

s=(s(0), s(1),..., s(N-1)).

Число перестановок из (0,1,...,N-1) равно n!=1*2*...*(N-1)*N. Введем обозначение s для взаимно-однозначного отображения (гомо­морфизма) набора S={s0,s1, ...,sN-1}, состоящего из n элементов, на себя.

s: S ® S

s: si ® ss(i), 0 £ i < n

Будем говорить, что в этом смысле s является перестановкой элементов S. И, наоборот, автоморфизм S соответствует пере­становке целых чисел (0,1,2,.., n-1).

Криптографическим преобразованием T для алфавита Zm называется последовательность автоморфизмов: T={T(n):1£n<¥}

T(n): Zm,n®Zm,n, 1£n<¥

Каждое T(n) является, таким образом, перестановкой n-грамм из Zm,n.

Поскольку T(i) и T(j) могут быть определены независимо  при i¹j, число криптографических преобразований исходного текста размерности n равно (mn)!. Оно возрастает непропорционально при увеличении m и n: так, при m=33 и n=2 число различных криптографических преобразований равно 1089!. Отсюда следует, что потенциально существует большое число отображений исходного текста в шифрованный.

Практическая реализация криптографических систем требует, чтобы преобразо­вания {Tk: kÎK} были определены алгоритмами, зависящими от относительно небольшого числа параметров (ключей) [5].

Подстановкой p на алфавите Zm называется автоморфизм Zm, при котором буквы исходного текста t замещены буквами шифрованного текста p(t):

Zm à Zm; p: t à p(t).

Набор всех подстановок называется симметрической группой Zm и будет в дальнейшем обозначаться как SYM(Zm).

SYM(Zm) c операцией произведения является группой, т.е. операцией, обладающей следующими свойствами:

      Замкнутость: произведение подстановок p1p2 является подста­новкой:

p: tàp1(p2(t)).

      Ассоциативность: результат произведения p1p2p3 не зависит от порядка расстановки скобок:

(p1p2)p3=p1(p2p3)

      Существование нейтрального элемента: постановка i, опре­деляемая как i(t)=t, 0£t<m, является нейтральным элементом SYM(Zm) по операции умножения: ip=pi для "pÎSYM(Zm).

      Существование обратного: для любой подстановки p существует единственная обратная подстановка p-1, удовлетворя­ющая условию

pp‑1=p‑1p=i.

Число возможных подстановок в симметрической группе Zm называется порядком SYM(Zm) и равно m! .

Ключом подстановки k для Zm называется последовательность элементов симметрической группы Zm:

k=(p0,p1,...,pn-1,...), pnÎSYM(Zm), 0£n<¥

Подстановка, определяемая ключом k, является криптогра­фи­ческим преобразованием Tk, при помощи которого осуществляется преоб­разование n-граммы исходного текста (x0 ,x1 ,..,xn-1) в n-грамму шифрованного текста (y0 ,y1 ,...,yn-1):

yi=p(xi),   0£i<n

где n – произвольное (n=1,2,..). Tk называется моноалфавитной под­ста­новкой, если p неизменно при любом i, i=0,1,..., в  противном случае Tk называется многоалфавитной подстановкой.

К наиболее существенным особенностям подста­новки Tk относятся следующие:

1. Исходный текст шифруется посимвольно. Шифрования n-граммы (x0 ,x1 ,..,xn-1) и ее префикса (x0 ,x1 ,..,xs-1) связаны соотношениями

Tk(x0 ,x1 ,..,xn-1)=(y0 ,y1 ,...,yn-1)

Tk(x0 ,x1 ,..,xs-1)=(y0 ,y1 ,...,ys-1)

2. Буква шифрованного текста yi является функцией только i-й компоненты ключа pi  и i-й буквы исходного текста xi.

Подстановка Цезаря является самым простым вариантом подстановки. Она относится к группе моноалфавитных подстановок.

Подмножество Cm={Ck: 0£k<m} симметрической группы SYM(Zm), содержащее m подстановок

Ck: j®(j+k) (mod m), 0£k < m,

называется подстановкой Цезаря.

Умножение коммутативно, CkCj=CjCk=Cj+k, C0 – идентичная подстановка, а обратной к Cк является Ck-1=Cm-k, где 0<k<m. Семейство подстановок Цезаря названо по имени римского императора Гая Юлия Цезаря, который поручал Марку Туллию Цицерону составлять послания с использованием 50-буквенного алфавита и подстановки Ck.

Подстановка определяется по таблице замещения, содержащей пары соответствующих букв “исходный текст – шифрованный текст”. Системой Цезаря называется моноалфа­витная подстановка, преобразующая n-грамму исходного текста (x0, x1 ,..,xn-1) в n‑грамму шифрованного текста (y0 ,y1 ,...,yn-1) в соответствии с правилом

yi=Ck(xi), 0£i<n.

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

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

Слабая криптостойкость моноалфавитных подстановок преодолевается с применением подстановок многоалфавитных.

Многоалфавитная подстановка определяется ключом p=(p1, p2, ...), содержащим не менее двух различных подстановок. Вначале необходимо рассмотреть многоалфавитные системы подстановок с нулевым начальным смещением. Пусть {Ki: 0£i<n} – независимые случайные переменные с одинаковым распределением вероятностей, принимающие значения на множестве Zm

Pкл{(K0, K1, ..., Kn-1)=(k0, k1, ..., kn-1)}=(1/m)n

Система одноразового использования преобразует исходный текст

X=(X0, x1, ..., xn-1)

в шифрованный текст

Y=(Y0, y1, ..., yn-1)

при помощи подстановки Цезаря

Yi=CKi(xi)=(Ki+Xi) (mod m)   i=0...n-1                                                (1)

Для такой системы подстановки используют также термин “одноразовая лента” и “одноразовый блокнот”. Пространство ключей К системы одноразовой подстановки является вектором рангов (K0, K1, ..., Kn-1) и содержит mn точек.

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

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

Начнем с конечной последовательности ключа

k = (k0 ,k1 ,...,kn),

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

k = (k0 ,k1 ,...,kn), kj = k(j mod r, 0 £ j < ¥ .

Подстановка Вижинера VIGk определяется как

 VIGk : (x0, x1, ..., xn-1) ® (y0, y1, ..., yn-1) = (x0+k, x1+k,. .., xn-1+k).

Таким образом:

1) исходный текст x делится на r фрагментов

 xi = (xi , xi+r , ..., xi+r(n-1)), 0 £ i < r;

2) i-й фрагмент исходного текста xi шифруется при помощи подстановки Цезаря Ck :

(xi , xi+r , ..., xi+r(n-1)) ® (yi , yi+r , ..., yi+r(n-1)),

Вариант системы подстановок Вижинера при m=2 называется системой Вернама (1917 г.). В то время ключ k=(k0 ,k1 ,...,kк-1) записывался на бумажной ленте. Каждая буква исходного переводилась с использованием кода Бодо в пятибитовый символ. К исходному тексту Бодо добавлялся ключ (по модулю 2). Старинный телетайп фирмы AT&T со считывающим устройством Вернама и оборудованием для шифрования, использовался корпусом связи армии США [7].

Очень распространена плохая с точки зрения секретности практика использовать слово или фразу в качестве ключа для того, чтобы k=(k0 ,k1 ,...,kк-1) было легко запомнить. В информационных системах для обеспечения безопасности информации это недопустимо. Для получения ключей должны использоваться программные или аппаратные средства случайной генерации ключей.

Можно выдвинуть и обобщенную систему Вижинера. Ее можно сформулировать не только при помощи подстановки Цезаря.

Пусть x – подмножество симметрической группы SYM(Zm).

r – многоалфавитный ключ шифрования есть r-набор p = (p0, p1, ..., pr-1) с элементами в x.

Обобщенная система Вижинера преобразует исходный текст (x0, x1 ,..., xn-1) в шифрованный текст (y0 ,y1 ,...,yn-1) при помощи ключа p = (p0, p1, ..., pr-1) по правилу

VIGk : (x0 ,x1 ,...,xn-1) ® (y0 ,y1 ,...,yn-1) = (p00), p11), ..., pn-1(xn-1)), где используется условие pi = pi mod r. Следует признать, что и многоалфавитные подстановки в принципе доступны криптоаналитическому исследованию. Криптостойкость многоалфавитных систем резко убывает с уменьшением длины ключа.

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

Рассмотренные основные методы криптографической защиты при помощи симметрических систем просты в понимании и достаточно надежны. На сегодняшний день они являются классикой защиты информации. Учитывая это, на кафедре Информационных технологий Херсонского национального университета был разработан алгоритм криптографического преобразования информации, криптостойкость которого превышает на порядок все вышеизложенные методы [8]. В предложенном способе преобразования информации и на его основе криптоалгоритме является важным то, что на подготовительном этапе генерируют ключ, который, на решающем этапе, накладывают на исходную информацию по заданному закону, обратное преобразование для получения исходного текста выполняют повторным генерированием ключа, который накладывают на преобразованную информацию по тому же закону, на подготовительном этапе из битовых элементов исходной информации и ключа дискретно формируют массивы в виде трехмерных геометрических объектов (2) и (3) соответственно, каждый из которых, по крайней мере, один, с заданной дискретной ориентацией в трехмерном пространстве, причем все элементы с действительными значениями пространственного распределения в системах координат, т.е.  дополнительно содержит промежуточный этап, предшествующий решающему этапу — операции взаимодействия между битовыми элементами указанных трехмерных геометрических объектов.

;

(2)

 

;

(3)

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

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

Разработанный алгоритм имеет программную реализацию [9,10].

 

Литература:

1.   О.Ю. Швець, В.В. Лазаренко Аналіз методів і засобів захисту інформації та сучасних вимог до них //Матеріали IV Міжнародної конференції «Дні науки-2008». – Том 12. – Софія, 2008. – С.29-30.

2.   Р.В. Бараненко, В.В. Лазаренко, А.Ю. Швец Разработка современных средств защиты информации //Матеріали ІV Міжнародної науково-практичної конференції „Науковий прогрес на рубежі тисячоліть-2008”. – Том 15. – Пржмишль, 2008. – С.73-79.

3.   Герасименко В.А. Защита информации в автоматизированных системах обработки данных. Кн. 1. М.: Энергоатомиздат, 1994.400 с.

4.   Грегори С. Смит. Программы шифрования данных //Мир ПК. 1997. – №3. – С.58-68.

5.   Вербицький О.В. Вступ до криптології. – Львів.: Видавництво науково-технічної літератури, 1998. – 300 с.

6.   Герасименко В.А., Скворцов А.А., Харитонов И.Е. Новые направления применения криптографических методов защиты информации. М.: Радио и связь, 1989.360 с.

7.   Галатенко В.А. Информационная безопасность. – М.: Финансы и статистика, 1997. –158 с.

8.   Патент України на винахід №84125 „Спосіб перетворення інформації та пристрій для його здійснення”. Авторы: Пилипенко М.В., Ходаков В.Є., Eressko Oleg (Netherlands, NL), Lunegov Maksim (Germany, DE), Бараненко Р.В., Шаганян С.М., Цивільський Ф.М., Рабчевська К.В., Корчевська Л.О. МПК-(2006) H03M7/46. Опубл. 25.09.2008, Бюл. №18.

9.   Свідоцтво про реєстрацію авторського права на програмний продукт №12097 „Комп’ютерна програма криптографічного перетворення інформації "Wonderful Key" ("WOLKEY")”. Автори: Граб М.В., Пилипенко М.В., Бараненко Р.В., Цивільський Ф.М., Шаганян С.М., Lunegov Maksim (Лунегов Максим). Опубл. 24.01.2005, Бюл. №1.

10.                 Свідоцтво про реєстрацію авторського права на програмний продукт №15686 „Комп’ютерна програма "WOLKEY Demo". Автори: Нікітін І.В., Пилипенко М.В., Бараненко Р.В., Жарікова М.В. Опубл. 17.02.2006, Бюл. №1.