1. Основные определения
Криптология (от греческих корней: cryptos-тайный и logos-слово) как научная дисциплина оформилась в 1949 г. с появлением работы Шеннона, в которой устанавливалась связь криптологии с теорией информации. Криптология включает два направления: криптографию и криптоанализ. Задача криптографа - обеспечить как можно большие секретность и аутентичность (подлинность) передаваемой информации. Криптоаналитик, напротив, "взламывает " систему защиты, пытаясь раскрыть зашифрованный текст или выдать поддельное сообщение за настоящее.
Криптографическая защита - это защита данных с помощью криптографического преобразования, под которым понимается преобразование данных шифрованием и (или) выработкой имитовставки.
Чтобы скрыть смысл передаваемых сообщений применяются два типа преобразований: кодирование и шифрование. Для кодирования используется кодировочные книги и таблицы, содержащие наборы часто используемых фраз, каждой из которых соответствует кодовое слово. Для декодирования используется такая же книга.
Второй тип криптографического преобразования - шифрование -представляет собой процедуру (алгоритм) преобразования символов исходного текста в форму, недоступную для распознанная (зашифрованный текст).
Под шифром понимается совокупность обратимых преобразований множества открытых данных на множество зашифрованных данных, заданных алгоритмом криптографического преобразования. В шифре всегда различают два элемента: алгоритм и ключ.
Процесс передачи сообщений использует 2 алгоритма: шифрования E-Encipherment и дешифрования D-Decipherment, в которых для преобразования используется ключ К.
Ключ - конкретное секретное состояние некоторых параметров алгоритма криптографического преобразования данных, обеспечивающее выбор одного варианта из совокупности всевозможных для данного алгоритма.
Имитовставка - это последовательность данных фиксированной длины, полученная по определенному правилу из открытых данных и ключа, которая используется для защиты от навязывания ложных данных.
Криптостойкостью называется характеристика шифра, определяющая его стойкость к дешифрованию, которая обычно определяется необходимым для этого периодом времени.
Криптосистемы с закрытым ключом (одноключевые)
Модель одноключевой криптосистемы для передачи сообщенийсанкционированный получатель
Х У = Ек(Х) Х= Dк(У)
исходный
текст R К К
защищенный
канал связи для передачи ключа.
Источник сообщения передает "открытый текст" X, а рандомизатор формирует рандомизируюшую последовательность R. Задача рандомизатора состоит в том, чтобы выровнять частоты появления символов источника сообщения путем перехода к алфавиту большего объема. Источник ключа генерирует некоторый ключ К, а шифратор преобразует открытый текст Х в шифротекст (криптограмму), который является некоторой функцией X, а конкретный вид криптограммы определяется секретным ключом и рандомизирующей последовательностью.
Шифротекст передается по незащищенному каналу связи, и несанкционированный получатель имеет все технические возможности для ее перехвата. В соответствии с известным в криптологии "правилом Керхкоффа" предполагается, что алгоритм преобразования известен противнику, и надежность шифра определяется только ключом.
Дешифратор санкционированного получателя, зная секретный ключ, восстанавливает открытый текст.
При разработке практических шифров используются два принципа, которые выделил Шеннон: рассеивание и перемешивание. Рассеиванием он назвал распространение влияния одного знака открытого текста на множество знаков шифротекста, что позволяет скрыть статистические свойства открытого текста. Под перемешиванием Шеннон понимал использование таких шифрующих преобразований, которые усложняют восстановление взаимосвязи статистических свойств открытого и шифрованного текста. Однако шифр должен не только затруднять раскрытие, но и обеспечивать легкость шифрования и дешифрования при известном секретном ключе. Поэтому была принята идея использовать произведение простых шифров, каждый из которых вносит небольшой вклад в значительное суммарное рассеивание и перемешивание. Рассмотрим примеры шифрования.
Шифр простой подстановки.Это простейший метод шифрования, его называют также моноалфавитной подстановкой. Ключом является переставленный алфавит, буквами которого заменяют буквы нормального алфавита. Например, каждая буква заменяется на букву, стоящую на 3 позиции впереди: A®D, B®E и т.д. Тогда текст АВС заменяется на DEF. Все моноалфавитные подстановки можно представить в виде:
Y, = а хi + b( mod g),
а - некоторый постоянный десятичный коэффициент;
b - коэффициент сдвига;
g - длина используемого алфавита;
хi -i-й символ открытого текста (номер буквы в алфавите). Основным недостатком рассмотренного метода является то, что статистические свойства открытого текста (частоты повторения букв) сохраняются и в шифротексте.
Шифр перестановки (транспозиции) с фиксированным d (блок d -группа символов).Это блочный метод. Текст делят на блоки и в каждом производится перестановка символов открытого текста. Правило перестановки задается секретным ключом. Пусть перестановка задается таблицей:
123456
316524
Тогда открытый текст преобразуется в закодированный так: первый символ становится вторым, второй - пятым и так далее
MICROC | OMPUTE | R - открытый текст |
CMCOIR | POETMU | R - закодированный текст |
В случае перестановки переставляются не буквы алфавита, а буквы в сообщении открытого текста. Распределение частот отдельных символов оказывается в шифрованном тексте таким же, что и в открытом тексте, однако распределения более высоких порядков оказываются перемешанными, что улучшает криптостойкость данного шифра по сравнению с простой подстановкой.
Шифр ВижинераШифр, задаваемый формулой
уi = хi + ki(mod g),
где ki - i-я буква ключа, в качестве которого используется слово или фраза, называется шифром Вижинера. Воспользуемся таблицей кодирования букв русского алфавита:
Буква | А | Б | В | Г | Д | Е | Ж | 3 | И | И | К | Л |
Код | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
Буква | М | Н | О | П | Р | С | Т | У | Ф | X | Ц | Ч |
Код | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 |
Буква | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | (пробел) |
Код | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 |
Пусть имеется открытый текст "ЗАМЕНА" и подстановка шифра Вижинера задана таблицей:
3 | А | М | Е | Н | А |
К | Л | Ю | Ч | К | Л |
По формуле шифра Вижинера находим:
Y1= 8 + ll (mod33) = 19 Ю T;
Y2= l + 12 (mod33) = 13 Ю M;
Y3= 13 + 31 (mod 33) = 11 Ю К;
Y4= 6 + 24 (mod 33) = 30 Ю Ю;
Y5= 14 + 11 (mod 33) = 25 Ю Ш;
Y6 = 1 + 12 (mod 33) = 13 Ю М.
Шифротекст: "ТМКЭШМ".
Шифры Бофора используют формулы:
yi = ki - xi(mod g) и
yi = Xi - ki(mod g).
Гомофоническая замена одному символу открытого текста ставит в соответствие несколько символов шифротекста. Этот метод применяется для искажения статистических свойств текста.
Шифрование с помощью датчика случайных чисел (ПСЧ)Это довольно распространенный криптографический метод, принцип которого заключается в генерации гаммы шифра с помощью датчика ПСЧ и наложении полученной гаммы на открытые данные обратимым образом (например, при использовании логической операции "исключающее ПЛИ").
Процесс расшифрования данных сводится к повторной генерации гаммы шифра при известном ключе и наложению такой гаммы на зашифрованные данные. Полученный зашифрованный текст достаточно труден для раскрытия в том случае, когда гамма шифра не содержит повторяющихся битовых последовательностей. Фактически если период гаммы превышает длину всего зашифрованного текста и неизвестна никакая часть исходного текста, то шифр можно раскрыть только прямым перебором (подбором ключа).
На основе теории групп разработано несколько типов датчиков ПСЧ. Наиболее доступны и эффективны конгруэнтные генераторы ПСЧ. Например, линейный конгруэнтный датчик ПСЧ вырабатывает последовательности псевдослучайных чисел T(i), описываемые соотношением
T(i+l) = [AT(i) + C]mod M,
Где А и С - константы; Т(0) - исходная величина, выбранная в качестве порождающего числа.
Такой датчик ПСЧ генерирует псевдослучайные числа с определенным периодом повторения, зависящим от выбранных значений А и С. Значение М обычно устанавливается равным 25, где b - длинна слова ЭВМ в битах.
Одноключевая модель использует для шифрования и дешифрования один и тот же секретный ключ, который должен быть неизвестен криптоаналитику противника. Поэтому такая система называется одноключевой криптосистемой с секретными ключами. Проблема распространения этих секретных ключей является одной из главных трудностей при практическом использовании такой криптосистемы. Для распространения секретных ключей требуются защитные каналы связи. Стоимость и сложность распространения этих ключей оказываются очень большими.
ПП SHIFR_PLEYFER для определения координат символов матрицы Плэйфера.
SHIFR_PLEYFER(Alfavit, INDEX)
Alfavit, INDEX
Входные параметры:
INDEX - матрица символов Плэйфера, величина символьная.
Выходные параметры:
Alfavit - хранит координаты символов матрицы Плэйфера, величины целого типа.
Алгоритм
Начало ПП SHIFR_PLEYFER (Alfavit, INDEX)
Описание массивов: Alfavit[255], INDEX[6, 6]
I = 1
нет
I
0 комментариев