Выполнил студент группы 9ИнфБ101 Фоминцев.А.И
Криптография и шифрование Шифрование это способ изменения сообщения или другого документа, обеспечивающее искажение (сокрытие) его содержимого. (Кодирование – это преобразование обычного, понятного, текста в код. При этом подразумевается, что существует взаимно однозначное соответствие между символами текста(данных, чисел, слов) и символьного кода – в этом принципиальное отличие кодирования от шифрования. Часто кодирование и шифрование считают одним и тем же, забывая о том, что для восстановления закодированного сообщения, достаточно знать правило подстановки(замены). Для восстановления же зашифрованного сообщения помимо знания правил шифрования, требуется и ключ к шифру. Ключ понимается нами как конкретное секретное состояние параметров алгоритмов шифрования и дешифрования. Знание ключа дает возможность прочтения секретного сообщения.
Основные понятия и определения криптографии Алфавит - конечное множество используемых для кодирования информации знаков. В качестве примеров алфавитов, используемых в современных ИС можно привести следующие: алфавит Z буквы русского алфавита и пробел; алфавит Z символы, входящие в стандартные коды ASCII и КОИ-8; бинарный алфавит - Z 2 = {0,1}; восьмеричный алфавит или шестнадцатеричный алфавит; Текст - упорядоченный набор из элементов алфавита. Шифрование - преобразовательный процесс: исходный текст, который носит также название открытого текста, заменяется шифрованным текстом. Дешифрование - обратный шифрованию процесс. На основе ключа шифрованный текст преобразуется в исходный. Ключ - информация, необходимая для беспрепятственного шифрования и дешифрования текстов.
Основные современные методы шифрования Алгоритмы замены или подстановки символы исходного текста заменяются на символы другого (или того же) алфавита в соответствии с заранее определенной схемой, которая и будет ключом данного шифра. Отдельно этот метод в современных криптосистемах практически не используется из-за чрезвычайно низкой криптостойкости. Алгоритмы перестановки символы оригинального текста меняются местами по определенному принципу, являющемуся секретным ключом. Алгоритм перестановки сам по себе обладает низкой криптостойкостью, но входит в качестве элемента в очень многие современные криптосистемы. Алгоритмы гуммирования символы исходного текста складываются с символами некой случайной последовательности. Самым распространенным примером считается шифрование файлов «имя пользователя.рwl», в которых операционная система Microsoft Windows 95 хранит пароли к сетевым ресурсам данного пользователя (пароли на вход в NT-серверы, пароли для DialUр-доступа в Интернет и т.д.). Когда пользователь вводит свой пароль при входе в Windows 95, из него по алгоритму шифрования RC4 генерируется гамма (всегда одна и та же), применяемая для шифрования сетевых паролей. Простота подбора пароля обусловливается в данном случае тем, что Windows всегда предпочитает одну и ту же гамму.
Алгоритмы шифрования Рассмотрим подробнее методы криптографической защиты данных, о которых было сказано в предыдущем пункте Алгоритмы замены(подстановки) В этом наиболее простом методе символы шифруемого текста заменяются другими символами, взятыми из одного- (одно- или моноалфавитная подстановка) или нескольких (много- или полиалфавитная подстановка) алфавита. Самой простой разновидностью является прямая (простая) замена, когда буквы шифруемого сообщения заменяются другими буквами того же самого или некоторого другого алфавита. Таблица замены может иметь следующий вид(таблица 3.1.1):
Алгоритмы шифрования Таблица Таблица простой замены
Алгоритмы шифрования При полиалфавитной одноконтурной обыкновенной подстановке для замены символов исходного текста используется несколько алфавитов, причем смена алфавитов осуществляется последовательно и циклически, т.е. первый символ заменяется соответствующим символом первого алфавита, второй символом второго алфавита и т.д., пока не будут использованы все выбранные алфавиты. После этого использование алфавитов повторяется. Схема шифрования Вижинера. Таблица Вижинера представляет собой квадратную матрицу с n 2 элементами, где n число символов используемого алфавита. На Рис показана верхняя часть таблицы Вижинера для кириллицы. Каждая строка получена циклическим сдвигом алфавита на символ. Для шифрования выбирается буквенный ключ, в соответствии с которым формируется рабочая матрица шифрования.
Алгоритмы шифрования Таблица Вижинера Осуществляется это следующим образом. Из полной таблицы выбирается первая строка и те строки, первые буквы которых соответствуют буквам ключа. Первой размещается первая строка, а под нею строки, соответствующие буквам ключа в порядке следования этих букв в ключе шифрования.
Алгоритм перестановки Этот метод заключается в том, что символы шифруемого текста переставляются по определенным правилам внутри шифруемого блока символов. Рассмотрим некоторые разновидности этого метода, которые могут быть использованы в автоматизированных системах. Самая простая перестановка написать исходный текст задом наперед и одновременно разбить шифрограмму на пятерки букв.
Алгоритм перестановки Если строки укоротить, а количество строк увеличить, то получится прямоугольник-решетка, в который можно записывать исходный текст. Но тут уже потребуется предварительная договоренность между адресатом и отправителем посланий, поскольку сама решетка может быть различной длины-высоты, записывать к нее можно по строкам, по столбцам, по спирали туда или по спирали обратно, можно писать и по диагоналями, а для шифрования можно брать тоже различные направления. В общем, здесь масса вариантов.
Алгоритм гуммирования Суть этого метода состоит в том, что символы шифруемого текста последовательно складываются с символа последовательности, которая называется гаммой. Иногда такой метод представляют как наложение гаммы на исходный текст, поэтому он получил название «гуммирование».
Алгоритм гуммирования Процедуру наложения гаммы на исходный текст можно осуществить двумя способами. При первом способе символы исходного текста и гаммы заменяются цифровыми эквивалентами, которые затем складываются по модулю k, где k число символов в алфавите, т.е. R i = ( S i + G ) mod (k –1), где R i, S i, G символы соответственно зашифрованного, исходного текста и гаммы. ми некоторой специальной
СПАСИБО ЗА ВНИМАНИЕ