Кодирование
Использование системы условных обозначений элементов информации (кодов)
Кодирование проводится с помощью специальных кодовых таблиц, которые должны быть у всех участников информационного обмена.
Кодирование используется в системах военной, разведывательной и дипломатической связи
Шифрование
Преобразование исходного сообщения с помощью специальной процедуры (с использованием ключа)
· Симметричные системы шифрования
Для шифрования и расшифрования используются одинаковые ключи
· Несимметричные системы шифрования
Для шифрования и расшифрования используются разные ключи
Шифрование + Расшифрование = Криптосистема
Другие методы криптографической защиты
Использование различных физических принципов для преобразования информации в форму, непонятную для постороннего
Замена (подстановка)
Идея метода: один алфавит заменяется другим
Пример 1
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ ЫЬ Э Ю Я
Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ ЫЬ Э Ю Я А Б В Г Д Е
Ключ: число символов, на которое сдвигается алфавит (- 6)
Исходная фраза: будьте осторожны с представителем фирмы феникс
Зашифрованная фраза: зщквшл фчшфцфмуб ч хцлкчшжиошлслт ъоцтб ълуорч
Недостаток: легко дешифровать с помощью частотного анализа текста
Повышение надежности: каждый символ шифруется с помощью нового алфавита (таблицы Вижинера)
Перестановка
Идея метода: шифруемый текст разбивается на блоки, которые перемешиваются между собой
Пример 2
Исходная фраза: будьте осторожны с представителем фирмы феникс
Ключ: 58137462
Шифрование
5 – 8 – 1 – 3 – 7 – 4 – 6 – 2
Б У Д Ь Т Е @* О
С Т О Р О Ж Н Ы
@ С @ П Р Е Д С
Т А В И Т Е Л Е
М @ Ф И Р М Ы@
Ф Е Н И К С @ @
* - пробел
Зашифрованная фраза:
до@вфноысе@@ьрпиииежеемсбс@тмф@ндлы@тортркутса@е
Расшифрование
Зашифрованная фраза:
до@вфноысе@@ьрпиииежеемсбс@тмф@ндлы@тортркутса@е
Ключ: 58137462
Зашифрованная фраза разбивается на блоки.
Длина каждого блока равна числу символов в сообщении, деленному на длину ключа
Гаммирование
Идея метода: символы шифруемого текста последовательно складываются с символами некоторой специальной последовательности, которая называется гаммой
Процедура наложения гаммы:
tш = (tи + tг)mod(k), tш, tи, tг – символы соответственно зашифрованного, исходного текста и гаммы; k – число символов в алфавите
Гамма – любая последовательность случайных символов, например, последовательность цифр числа π, числа e и т.д.
Пример 3
Исходная фраза: будьте осторожны с … (01010010 10000010 11001011 …)
Шифрование
Расшифрование – обратная операция (вычитание)
Аналитическое преобразование
Идея метода: использование методов алгебры матриц
Пример 4
Расшифрование
Умножение на обратную матрицу
Правило: обратная матрица образуется из присоединенной делением всех элементов на определитель. Присоединенная матрица составляется из алгебраических дополнений А к элементам данной матрицы.
Комбинированные методы
Идея методов: комбинирование различных элементарных методов шифрования
Все реальные алгоритмы используют только комбинированные методы!!!
Пример 5
Алгоритм DES
Наиболее распространенная криптосистема – стандарт США на шифрование информации DES (Data Encription Standard). Разработан фирмой IBM, длина ключа 64 бита (российский аналог: ГОСТ – 28147 – 89, длина ключа 256 бит)
Особенность алгоритма DES
Шифруются 64-битовые блоки с применением ключа длиной 64 бита. Из основного ключа образуются 16 вспомогательных 48-битовых ключей.
Последовательность работы алгоритма DES
1)Начальная перестановка битов исходного блока
2)16 промежуточных циклов шифрования:
· перестановка блоков в определенной последовательности
· подстановка, результат которой зависит как от значения битов сообщения, так и от значения битов промежуточного ключа
3)Перестановка битов, обратная начальной
Усовершенствованный алгоритм DES: длина ключа 128 бит
Несимметричные системы шифрования
Теоретическая основа – понятие «односторонней функции с потайной дверью»
Определение. Функция называется односторонней, если легко может быть вычислено значение f(x), но по известному значению функции крайне трудно вычислить x.
Пример – умножение простых чисел
367589023156 … × 64379021345 … = … … … … … … … …
100 знаков 100 знаков 200 знаков
Разложение на множители
200-значного числа потребует десятков лет непрерывной работы мощной ЭВМ
Для расшифрования односторонняя функция должна иметь как бы «потайную дверь», т.е. способ эффективного вычисления функции в обоих направлениях
Ключи шифрования пользователей известны всем, а ключи расшифрования все пользователи хранят в тайне.
На основе классической теории информации -
Криптосистема является стойкой, если у криптоаналитика отсутствует возможность получения необходимого количества информации для восстановления зашифрованного сообщения
На основе теории вычислительной сложности -
Криптосистема является стойкой, если даже при наличии всей необходимой информации криптоаналитик не может восстановить зашифрованное сообщение в заданный срок из-за большого объема расчетов
Вскрытие современных криптоалгоритмов требует от 5 до 20 человеколет
Стойкость криптосистем зависит от следующих основных свойств криптоалгоритмов:
· Сложность
Более сложные криптоалгоритмы труднее поддаются дешифрованию
· Симметричность
Несимметричные криптоалгоритмы труднее поддаются дешифрованию
· Длина ключа
Длинные ключи обеспечивают большую стойкость
· Метод реализации
Аппаратный метод реализации обеспечивает большую стойкость по сравнению с программным
Основное требование к криптосистеме – наличие очень большого числа возможных ключей, чтобы не допустить восстановления исходного сообщения путем их прямого перебора.