Роторные машины

Автор: Пользователь скрыл имя, 18 Декабря 2011 в 14:12, реферат

Описание работы

История криптографии насчитывает несколько тысяч лет. Потребность скрывать написанное появилась у человека почти сразу, как только он научился писать. По некоторым теориям, сам язык возник не тогда, когда появилась потребность общаться (передавать информацию можно и так), а именно тогда, когда древние люди захотели соврать, то есть, скрыть свои мысли.
Широко известным историческим примером криптосистемы является так называемый шифр Цезаря, который представляет из себя простую замену каждой буквы открытого текста третьей следующей за ней буквой алфавита (с циклическим переносом, когда это необходимо).

Содержание

Исторические основы криптографии
Принципы криптографии
Идея криптосистемы с открытым ключом
Особенности системы
Роторные машины
Описание
Устройство машины
Шифрование
Расшифровка
Математическое описание алгоритма
Шифровальная машина Enigma
Список использованных источников

Работа содержит 1 файл

ротор - курсач..docx

— 40.89 Кб (Скачать)

    Содержание

    Исторические  основы криптографии

    Принципы  криптографии

    Идея  криптосистемы с открытым ключом

    Особенности системы

    Роторные  машины

      Описание

      Устройство машины

      Шифрование

      Расшифровка

      Математическое описание  алгоритма

      Шифровальная машина Enigma

    Список  использованных источников 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

    Исторические  основы криптографии

    История криптографии насчитывает несколько  тысяч лет. Потребность скрывать написанное появилась у человека почти сразу, как только он научился писать. По некоторым теориям, сам язык возник не тогда, когда появилась потребность общаться (передавать информацию можно и так), а именно тогда, когда древние люди захотели соврать, то есть, скрыть свои мысли.

    Широко  известным историческим примером криптосистемы  является так называемый шифр Цезаря, который представляет из себя простую замену каждой буквы открытого текста третьей следующей за ней буквой алфавита (с циклическим переносом, когда это необходимо). Например, "A" заменялась на "D", "B" на "E", "Z" на "C".

    Несмотря  на значительные успехи математики за века, прошедшие со времён Цезаря, тайнопись  вплоть до середины 20 века не сделала  существенных шагов вперёд. В ней  бытовал дилетантский, умозрительный, ненаучный подход.

    Например, в 20 веке широко применялись профессионалами "книжные" шифры, в которых в  качестве ключа использовалось какое-либо массовое печатное издание. Надо ли говорить, как легко раскрывались подобные шифры! Конечно, с теоретической  точки зрения, "книжный" шифр выглядит достаточно надёжным, поскольку множество  его ключей - множество всех страниц  всех доступных двум сторонам книг, перебрать которое вручную невозможно. Однако, малейшая априорная информация резко суживает этот выбор.

    Кстати, об априорной информации. Во время  Великой Отечественной войны, как  известно, у нас уделяли значительное внимание организации партизанского  движения. Почти каждый отряд в  тылу врага имел радиостанцию, а  также то или иное сообщение с "большой землёй". Имевшиеся  у партизан шифры были крайне нестойкими - немецкие дешифровщики "раскалывали" их достаточно быстро. А это, как  известно, выливается в боевые поражения  и потери. Партизаны оказались  хитры и изобретательны и в  этой области тоже. Приём был предельно  прост. В исходном тексте сообщения  делалось большое количество грамматических ошибок, например, писали: "прошсли тры эшшелона з тнками". При верной расшифровке для русского человека всё было понятно. Но криптоаналитики противника перед подобным приёмом оказались бессильны: перебирая возможные варианты, они встречали невозможное для русского языка сочетание "тнк" и отбрасывали данный вариант как заведомо неверный. Этот, казалось бы, доморощенный приём, на самом деле, очень эффективен и часто применяется даже сейчас. В исходный текст сообщения подставляются случайные последовательности символов, чтобы сбить с толку криптоаналитические программы, работающие методом перебора или изменить статистические закономерности шифрограммы, которые также могут дать полезную информацию противнику. (Подробнее - см. в параграфе о криптоанализе.) Но в целом всё же можно сказать, что довоенная криптография была крайне слаба и на звание серьёзной науки не тянула.

    Однако  жёстокая военная необходимость  вскоре заставила учёных вплотную заняться проблемами криптографии и криптоанализа. Одним из первых существенных достижений в этой области была немецкая пишмашинка "Энигма", которая фактически являлась механическим шифратором и дешифратором с достаточно высокой стойкостью.

    Тогда же, в период второй мировой войны  появились и первые профессиональные службы дешифровки. Самая извесная из них - "Блечли-парк", подразделение английской службы разведки "МИ-5" 

    Принципы  криптографии

    Цель  криптографической системы заключается  в том, чтобы зашифровать осмысленный  исходный текст (также называемый открытым текстом), получив в результате совершенно бессмысленный на взгляд шифрованный  текст (шифртекст, криптограмма). Получатель, которому он предназначен, должен быть способен расшифровать (говорят также "дешифровать") этот шифртекст, восстановив, таким образом, соответствующий ему открытый текст. При этом противник (называемый также криптоаналитиком) должен быть неспособен раскрыть исходный текст. Существует важное отличие между расшифрованием (дешифрованием) и раскрытием шифртекста.

    Раскрытием  криптосистемы называется результат  работы криптоаналитика, приводящий к возможности эффективного раскрытия любого, зашифрованного с помощью данной криптосистемы, открытого текста. Степень неспособности криптосистемы к раскрытию называется ее стойкостью.

    Вопрос  надёжности систем ЗИ - очень сложный. Дело в том, что не существует надёжных тестов, позволяющих убедиться в  том, что информация защищена достаточно надёжно. Во-первых, криптография обладает той особенностью, что на "вскрытие" шифра зачастую нужно затратить  на несколько порядков больше средств, чем на его создание. Следовательно тестовые испытания системы криптозащиты не всегда возможны. Во-вторых, многократные неудачные попытки преодоления защиты вовсе не означают, что следующая попытка не окажется успешной. Не исключён случай, когда профессионалы долго, но безуспешно бились над шифром, а некий новичок применил нестандартный подход - и шифр дался ему легко.

    В результате такой плохой доказуемости надёжности средств ЗИ на рынке очень  много продуктов, о надёжности которых  невозможно достоверно судить. Естественно, их разработчики расхваливают на все  лады своё произведение, но доказать его  качество не могут, а часто это  и невозможно в принципе. Как правило, недоказуемость надёжности сопровождается ещё и тем, что алгоритм шифрования держится в секрете.

    На  первый взгляд, секретность алгоритма  служит дополнительному обеспечению  надёжности шифра. Это аргумент, рассчитанный на дилетантов. На самом деле, если алгоритм известен разработчикам, он уже не может  считаться секретным, если только пользователь и разработчик - не одно лицо. К тому же, если вследствие некомпетентности или ошибок разработчика алгоритм оказался нестойким, его секретность не позволит проверить его независимым экспертам. Нестойкость алгоритма обнаружится только когда он будет уже взломан, а то и вообще не обнаружится, ибо противник не спешит хвастаться своими успехами.

    Поэтому криптограф должен руководствоваться правилом, впервые сформулированным голландцем Керкхоффом: стойкость шифра должна определяться только секретностью ключа. Иными словами, правило Керкхоффа состоит в том, что весь механизм шифрования, кроме значения секретного ключа априори считается известным противнику.

    Другое  дело, что возможен метод ЗИ (строго говоря, не относящийся к криптографии), когда скрывается не алгоритм шифровки, а сам факт того, что сообщение  содержит зашифрованную (скрытую в  нём) информацию. Такой приём правильнее назвать маскировкой информации. Он будет рассморен отдельно. 

    Идея  криптосистемы с  открытым ключом

    Идея  криптографии с открытым ключом очень  тесно связана с идеей односторонних  функций, то есть таких функций  f(x), что по известному x довольно просто найти значение f(x), тогда как определение x из f(x) невозможно за разумный срок.

    Но  сама односторонняя функция бесполезна в применении: ею можно зашифровать  сообщение, но расшифровать нельзя. Поэтому  криптография с открытым ключом использует односторонние функции с лазейкой. Лазейка — это некий секрет, который помогает расшифровать. То есть существует такой y, что зная f(x) и y, можно вычислить x. К примеру, если разобрать часы на множество составных частей, то очень сложно собрать вновь работающие часы. Но если есть инструкция по сборке (лазейка), то можно легко решить эту проблему.

    Понять  идеи и методы криптографии с открытым ключом помогает следующий пример — хранение паролей в компьютере. Каждый пользователь в сети имеет свой пароль. При входе он указывает имя и вводит секретный пароль. Но если хранить пароль на диске компьютера, то кто-нибудь его может считать (особенно легко это сделать администратору этого компьютера) и получить доступ к секретной информации. Для решения задачи используется односторонняя функция. При создании секретного пароля в компьютере сохраняется не сам пароль, а результат вычисления функции от этого пароля и имени пользователя. Например, пользователь Алиса придумала пароль «Гладиолус». При сохранении этих данных вычисляется результат функции f(ГЛАДИОЛУС), пусть результатом будет строка РОМАШКА, которая и будет сохранена в системе. В результате файл паролей примет следующий вид:

Имя f(имя_пароль)
АЛИСА РОМАШКА
БОБ НАРЦИСС

Вход в систему  теперь выглядит так:

Имя: АЛИСА
Пароль: ГЛАДИОЛУС
 

    Когда Алиса вводит «секретный» пароль, компьютер проверяет, даёт или нет  функция, применяемая к ГЛАДИОЛУС, правильный результат РОМАШКА, хранящийся на диске компьютера. Стоит изменить хотя бы одну букву в имени или в пароле, и результат функции будет совершенно другим. «Секретный» пароль не хранится в компьютере ни в каком виде. Файл паролей может быть теперь просмотрен другими пользователями без потери секретности, так как функция практически необратимая.

    В предыдущем примере используется односторонняя  функция без лазейки, поскольку  не требуется по зашифрованному сообщению  получить исходное. В следующем примере рассматривается схема с возможностью восстановить исходное сообщение с помощью «лазейки», то есть труднодоступной информации. Для шифрования текста можно взять большой абонентский справочник, состоящий из нескольких толстых томов (по нему очень легко найти номер любого жителя города, но почти невозможно по известному номеру найти абонента). Для каждой буквы из шифруемого сообщения выбирается имя, начинающееся на ту же букву. Таким образом букве ставится в соответствие номер телефона абонента. Отправляемое сообщение, например «КОРОБКА», будет зашифровано следующим образом:

Сообщение Выбранное имя Криптотекст
К Королёв 5643452
О Орехов 3572651
Р Рузаева 4673956
O Осипов 3517289
Б Батурин 7755628
К Кирсанова 1235267
А Арсеньева 8492746
 

    Криптотекстом будет являться цепочка номеров, записанных в порядке их выбора в справочнике. Чтобы затруднить расшифровку, следует выбирать случайные имена, начинающиеся на нужную букву. Таким образом исходное сообщение может быть зашифровано множеством различных списков номеров (криптотекстов). 

Примеры таких криптотекстов:

Криптотекст 1 Криптотекст 2 Криптотекст 3
1235267 5643452 1235267
3572651 3517289 3517289
4673956 4673956 4673956
3517289 3572651 3572651
7755628 7755628 7755628
5643452 1235267 5643452
8492746 8492746 8492746
 

    Чтобы расшифровать текст, надо иметь справочник, составленный согласно возрастанию  номеров. Этот справочник является лазейкой (секрет, который помогает получить начальный текст), известной только легальным пользователям. Не имея на руках копии справочника, криптоаналитик затратит очень много времени на расшифровку. 

Схема шифрования с открытым ключом

Пусть — пространство ключей, а e и — ключи шифрования и расшифрования соответственно. E— функция шифрования для произвольного ключа e   K, такая что:

Ee(m) = c

Здесь c   C, где — пространство шифротекстов, а m   M, где — пространство сообщений.

D— функция расшифрования, с помощью которой можно найти исходное сообщение m, зная шифротекст :

Dd(c) = m

{Ee: e   K} — набор шифрования, а {Dd: d   K} — соответствующий набор для расшифрования. Каждая пара (E,D) имеет свойство: зная Ee, невозможно решить уравнение Ee(m) = c, то есть для данного произвольного шифротекста c   C, невозможно найти сообщение m   M. Это значит, что по данному e невозможно определить соответствующий ключ расшифрования d. Ee является односторонней функцией, а — лазейкой. 

Информация о работе Роторные машины