Сучасні інформаційні технології
Інформаційна
безпека
А.Ю. Швец, Р.В. Бараненко,
В.В. Лазаренко
Херсонский национальный технический университет
ПРИМЕНЕНИЕ СИММЕТРИЧНЫХ КРИПТОЛОГИЧЕСКИХ СИСТЕМ ДЛЯ ЗАЩИТЫ ИНФОРМАЦИИ
Усложнение методов и
средств организации машинной обработки информации, а также широкое
использование вычислительных сетей приводит к тому, что информация становится
все более уязвимой.
В связи с этим защита
информации в процессе ее сбора, обработки и хранения приобретает исключительно
важное значение (особенно в коммерческих и военных отраслях).
Под защитой информации
понимают совокупность мероприятий, методов и средств, которые обеспечивают
решение следующих основных задач:
-
Проверка целостности
информации;
-
Исключение
несанкционированного доступа к ресурсам персонального компьютера, а также к
программам и данным, которые хранятся в нем;
Средства защиты
информации можно разделить на следующие категории [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)
= (p0(х0), p1(х1), ..., 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.