Главная страница

COM объекты. ЛБ 1_Com. Лабораторная работа 1 часть 1 взаимодействие с унаследованным программным кодом 1 реализация внутреннего сервера com в delphi 2


Скачать 0.79 Mb.
НазваниеЛабораторная работа 1 часть 1 взаимодействие с унаследованным программным кодом 1 реализация внутреннего сервера com в delphi 2
АнкорCOM объекты
Дата28.05.2022
Размер0.79 Mb.
Формат файлаdoc
Имя файлаЛБ 1_Com.doc
ТипЛабораторная работа
#554589
страница12 из 13
1   ...   5   6   7   8   9   10   11   12   13

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


В 20-х годах ХХ века были изобретены электромеханические устройства шифрования, автоматизирующие процесс шифрования. Принцип работы таких машин на многоалфавитной хамене символов исходного текста по длинному ключу согласно версии шифра Вижинера. Большинство из них – американская машина SIGABA (M-134), английская TYPEX, немецкая ENIGMA, японская PURPLE были роторными машинами.

Главной деталью роторной машины является ротор (или колесо) с проволочными перемычками внутри. Ротор имеет форму диска (размером с хоккейную шайбу).На каждой стороне диска расположены равномерно по окружности m электрических контактов, где m – число знаков алфавита (в случае английского алфавита m=26). Каждый контакт на передней стороне диска соединен с одним из контактов на задней стороне. В результате электрический сигнал, представляющий знак, будет переставлен в соответствии с тем, как он проходит через ротор от передней стороны к задней. Например, ротор можно закоммутировать проволочными перемычками для подстановки G вместо А, U вместо В, L вместо С и т.д.

При повороте ротора из одного положения в другое подстановка, которую он осуществляет в приходящем сигнале, будет изменяться. В общем случае эту подстановку можно записать в виде:

T = Cj  C-j .

где - подстановка, реализуемая ротором в его начальлом поло­жении; С - циклический сдвиг на одну позицию; Сj - циклический сдвиг на j позиций.
Н
апример, если начальная подстановка ротора  (А) = G и ротор сдвигается на три позиции (j = 3), то открытый текст D будет против того контакта ротора, который используется для представления открытого текста А, а шифрованный текст J окажется против того контакта ротора, который используется для представления шифрованного текста G , и результирующая под­становка Т (D)=G при j = 3. Алгебраически это записывает­ся в виде

Т (D) = С3  С-3 (D) = С3 (А) = С3 (G) = J.

Роторы можно объединить в банк роторов таким образом, чтобы выходные контакты одного ротора касались входных кон­тактов следующего ротора. При этом электрический импульс от нажатой клавиши с буквой исходного текста, входящий с одного конца банка роторов, будет переставляться каждым из роторов, до тех пор, пока не покинет банк. Математически работу банка роторов можно описать в виде:

Т = Сj11 С-j1 Сj22 С-j2 ….Сj n-1n-1 С-jn-1 Сj nn С-jn =

= Сj11 Сj2-j12 ….n-1 Сj n-jn-1n С-jn.





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

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

Простейшее из возможных движений ротора - это движе­ние по принципу одометра; оно использовалось в немецкой маши­не Enigma во время второй мировой войны. При шифровании од­ного знака правое крайнее колесо поворачивается на одну пози­цию. Когда это (и любое другое) колесо переместится на m позиций и совершит полный оборот, колесо, расположенное слева от него, передвинется на одну позицию, и процесс будет повто­ряться. Этот процесс проведет банк роторов сквозь все его воз­можные положения, прежде чем цикл повторится. Поскольку все роторы перемещаются с разными скоростями, период n-роторной машины составляет 26" (при m = 26).

Для закона движения ротора желательны следующие ха­рактеристики:

  • период должен быть большим;

  • после шифрования каждого знака все роторы или большая их часть должны повернуться друг относительно друга.

Движение по принципу одометра оптимально в смысле первого требования, но совершенно неудовлетворительно в отношении второго требования. Улучшение движения по принципу одометра можно получить, если поворачивать каждый ротор бо­лее чем на одну позицию. Если смещения каждого ротора не име­ют общих множителей с объемом алфавита m, то период оста­нется максимальным.

Другое решение заключается в ограничении числа допус­тимых остановочных мест для каждого ротора за счет введения внешнего фиксирующего кольца, на котором определенным спо­собом зафиксированы места остановок. При использовании латин­ского алфавита можно заставить машины поворачиваться и оста­навливаться следующим образом. Первому колесу разрешается останавливаться в каждой из 26 позиций, второму колесу - только в 25 позициях, третьему колесу - только в 23 позициях, и так да­лее до шестого колеса, которому разрешается останавливаться только в 17 позициях. Период такой роторной машины теперь со­ставляет 101 млн, а не 266  309 млн, как в случае движения по принципу одометра. Потеря в длине периода с успехом окупается полученной сложностью движения роторов. Теперь второе требо­вание удовлетворяется довольно хорошо, поскольку каждое из колес перемещается после шифрования каждого знака и многие колеса могут двигаться друг относительно друга.

Роторная машина может быть настроена по ключу изменением любых ее переменных:

Поскольку перекоммутировать роторы трудно, то обычно на практике машины обеспечивали комплектом роторов, в котором находилось больше роторов, чем можно одновременно поместить в машину. Первичная настройка по ключу производилась выбором роторов, составляющих комплект. Вторичная настройка по ключу производилась выбором порядка расположения роторов в машине и установкой параметров, управляющих, движением машины. С целью затруднения расшифрования шифртекстов противником роторы ежедневно переставляли местами или заменяли. Большая часть ключа определяла начальные положения роторов (263 = 17576 возможных установок) и конкретные перестановки на ком­мутационной доске, с помощью которой осуществлялась началь­ная перестановка исходного текста до его шифрования (26! = = 4*1026 возможностей).

Роторные машины были самыми важными криптографиче­скими устройствами во время второй мировой войны и доминиро­вали по крайней мере до конца 50-х годов.
1   ...   5   6   7   8   9   10   11   12   13


написать администратору сайта