Автор: Пользователь скрыл имя, 18 Декабря 2011 в 14:12, реферат
История криптографии насчитывает несколько тысяч лет. Потребность скрывать написанное появилась у человека почти сразу, как только он научился писать. По некоторым теориям, сам язык возник не тогда, когда появилась потребность общаться (передавать информацию можно и так), а именно тогда, когда древние люди захотели соврать, то есть, скрыть свои мысли.
Широко известным историческим примером криптосистемы является так называемый шифр Цезаря, который представляет из себя простую замену каждой буквы открытого текста третьей следующей за ней буквой алфавита (с циклическим переносом, когда это необходимо).
Исторические основы криптографии
Принципы криптографии
Идея криптосистемы с открытым ключом
Особенности системы
Роторные машины
Описание
Устройство машины
Шифрование
Расшифровка
Математическое описание алгоритма
Шифровальная машина Enigma
Список использованных источников
Ниже показана схема передачи информации лицом А лицу В. Они могут быть как физическими лицами, так и организациями и так далее. Но для более лёгкого восприятия принято участников передачи отождествлять с людьми, чаще всего именуемыми Алиса и Боб. Участника, который стремится перехватить и расшифровать сообщения Алисы и Боба, чаще всего называют Евой.
В этой модели Ева перехватывает открытый ключ e, посланный Бобом Алисе. Затем создает пару ключей e' и d', «маскируется» под Боба, посылая Алисе открытый ключ e', который, как думает Алиса, открытый ключ, посланный ей Бобом. Ева перехватывает зашифрованные сообщения от Алисы к Бобу, расшифровывает их с помощью секретного ключа d', заново зашифровывает открытым ключом e Боба и отправляет сообщение Бобу. Таким образом, никто из участников не догадывается, что есть третье лицо, которое может как просто перехватить сообщение m, так и подменить его на ложное сообщение m'. Это подчеркивает необходимость аутентификации открытых ключей. Для этого обычно используют сертификаты. Распределённое управление ключами в PGP решает возникшую проблему с помощью поручителей.
Еще
одна форма атаки — вычисление закрытого
ключа, зная открытый (рисунок ниже). Криптоаналитик
знает алгоритм шифрования Ee,
анализируя его, пытается найти Dd.
Этот процесс упрощается, если криптоаналитик
перехватил несколько криптотекстов с,
посланных лицом A лицу B.
Большинство криптосистем с открытым ключом основаны на проблеме факторизации больших чисел. К примеру, RSA использует в качестве открытого ключа n произведение двух больших чисел. Сложность взлома такого алгоритма состоит в трудности разложения числа n на множители. Но эту задачу решить реально. И с каждым годом процесс разложения становится все быстрее. Ниже приведены данные разложения на множители с помощью алгоритма «Квадратичное решето».
Год | Число десятичных
разрядов в разложенном числе |
Во сколько
раз сложнее разложить на множители 512-битовое число |
1983 | 71 | > 20000000 |
1985 | 80 | > 2000000 |
1988 | 90 | 250000 |
1989 | 100 | 30000 |
1993 | 120 | 500 |
1994 | 129 | 100 |
Для
многих методов несимметричного
шифрования криптостойкость, полученная
в результате криптоанализа, существенно
отличается от величин, заявляемых разработчиками
алгоритмов на основании теоретических
оценок. Поэтому во многих странах вопрос
применения алгоритмов шифрования данных
находится в поле законодательного регулирования.
В частности, в России к использованию
в государственных и коммерческих организациях
разрешены только те программные средства
шифрования данных, которые прошли государственную
сертификацию в административных органах,
в частности, в ФСБ, ФСТЭК.
Особенности системы
Применение
Алгоритмы криптосистемы с открытым ключом можно использовать
Преимущества
Недостатки
Длина симметричного ключа, бит | Длина несимметричного ключа, бит |
56 | 384 |
64 | 512 |
80 | 768 |
112 | 1792 |
128 | 2304 |
В 20-х годах XX века были изобретены электромеханические устройства шифрования, автоматизирующие процесс шифрования. Принцип работы таких машин основан на многоалфавитной замене символов исходного текста по длинному ключу согласно версии шифра Вижинера. Большинство из них - американская машина SIGABA (М-134), английская TYPEX, немецкая ENIGMA, японская PURPLE были роторными машинами.
Главной деталью роторной машины является ротор (или колесо) с проволочными перемычками внутри. Ротор имеет форму диска (размером с хоккейную шайбу). На каждой стороне диска расположены равномерно по окружности m электрических контактов, где m - число знаков алфавита (в случае латинского алфавита m = 26). Каждый контакт на передней стороне диска соединен с одним из контактов на задней стороне. В результате электрический сигнал, представляющий знак, будет переставлен в соответствии с тем, как он проходит через ротор от передней стороны к задней. Например, ротор можно закоммутировать проволочными перемычками для подстановки G вместо A, U вместо В, L вместо С и т.д.
При
повороте ротора из одного положения
в другое подстановка, которую он
осуществляет в приходящем сигнале,
будет изменяться. В общем случае
эту подстановку можно записать
в виде
T =
C j p C -j, (15)
где p - подстановка, реализуемая ротором в его начальном положении; С - циклический сдвиг на одну позицию; C j - циклический сдвиг на j позиций.
Например, если начальная подстановка ротора p(А) = G и ротор сдвигается на три позиции (j = 3), то открытый текст D будет против того контакта ротора, который используется для представления открытого текста А, а шифрованный текст J окажется против того контакта ротора, который используется для представления шифрованного текста G , и результирующая подстановка Т(D) = G при j = 3. Алгебраически это записывается в виде:
Т (D) = С3pС-3 (D) = С3 p (А) = С3 (G) = J.
Роторы можно объединить в банк роторов таким образом, чтобы выходные контакты одного ротора касались входных контактов следующего ротора. При этом электрический импульс от нажатой клавиши с буквой исходного текста, входящий с одного конца банка роторов, будет переставляться каждым из роторов, до тех пор, пока не покинет банк.
Такой
банк может реализовывать большое
число подстановок, соответствующих
различным комбинациям
Роторная машина состоит из банка роторов и механизма для изменения положения роторов с каждым зашифрованным знаком, объединенного с устройствами ввода и вывода, такими как устройство считывания с перфоленты и печатающее устройство.
Простейшее из возможных движений ротора - это движение по принципу одометра; оно использовалось в немецкой машине Enigma во время второй мировой войны. При шифровании одного знака правое крайнее колесо поворачивается на одну позицию. Когда это (и любое другое) колесо переместится на m позиций и совершит полный оборот, колесо, расположенное слева от него, передвинется на одну позицию, и процесс будет повторяться. Этот процесс проведет банк роторов сквозь все его возможные положения, прежде чем цикл повторится. Поскольку все роторы перемещаются с разными скоростями, период n-роторной машины составляет 26n (при m = 26).
Для закона движения ротора желательны следующие характеристики:
• период должен быть большим;
• после шифрования каждого знака все роторы или большая их часть должны повернуться друг относительно друга.
Движение
по принципу одометра оптимально в
смысле первого требования, но совершенно
неудовлетворительно в
Другое
решение заключается в
Роторная машина может быть настроена по ключу изменением любых ее переменных:
•роторов;
•порядка расположения роторов;
•числа мест остановки на колесо;
•характера движения и т.д.
Поскольку перекоммутировать роторы трудно, то обычно на практике машины обеспечивали комплектом роторов, в котором находилось больше роторов, чем можно одновременно поместить в машину. Первичная настройка по ключу производилась выбором роторов, составляющих комплект. Вторичная настройка по ключу производилась выбором порядка расположения роторов в машине и установкой параметров, управляющих движением машины. С целью затруднения расшифрования шифртекстов противником роторы ежедневно переставляли местами или заменяли. Большая часть ключа определяла начальные положения роторов (2б3=17576 возможных установок) и конкретные перестановки на коммутационной доске, с помощью которой осуществлялась начальная перестановка исходного текста до его шифрования (26!= 4·1026 возможностей).