Реферат: Баричев С. Криптография без секретов

<span Times New Roman",«serif»; color:blue">От автора<span Times New Roman",«serif»">

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

Язык книги делался по возможности доступным, но не освобождает Читателяот необходимости владения элементарными основами математики, в частностиалгебры и теории групп и полей.

Многие вопросы к сожалению остались за обложками этой книги. В частностипосле долгих сомнений Автор решил отказаться от рассмотрения DES, ввиду его крайней непрактичности инеуживчивости на российской почве<span Times New Roman",«serif»;mso-fareast-font-family:«Times New Roman»; mso-ansi-language:RU;mso-fareast-language:RU;mso-bidi-language:AR-SA">[1]

.

Массу полезной информации можно найти на сервере<span Courier New";mso-bidi-font-family:«Times New Roman»">

<span Courier New";mso-bidi-font-family:«Times New Roman»; mso-ansi-language:EN-US">ftp.rsa.com. В faq5.docВы если и не найдете ответ на любой вопрос по криптографии, то обнаружитебольшое количество ссылок на другие источники.

Автор будет признателен за любые замечания и вопросы, которые прощевсего направить по адресу: bar@glasnet.ru

Баричев Сергей

<span Times New Roman",«serif»;mso-fareast-font-family:«Times New Roman»;mso-ansi-language: EN-US;mso-fareast-language:RU;mso-bidi-language:AR-SA">
<span Times New Roman",«serif»; color:blue">Введение<span Times New Roman",«serif»">

Про­бле­ма за­щи­ты ин­фор­ма­ции пу­тем ее пре­об­ра­зо­ва­ния,исключающего ее про­чте­ние по­сто­рон­ним ли­цом вол­но­ва­ла че­ло­ве­че­скийум с дав­них вре­мен. История криптографии — ровесница истории человеческогоязыка. Более того, первоначально письменность сама по себе былакриптографической системой, так как в древних обществах ею владели толькоизбранные. Священные книги Древ­него Егип­та, Древ­ней Индии тому примеры.

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

Бурное раз­ви­тие крип­то­гра­фи­че­ские сис­те­мы по­лу­чи­ли в го­дыпер­вой и вто­рой ми­ро­вых войн. Начиная с послевоенного времени и по нынешнийдень появление вычислительных средств ускорило разработку исовершенствование  криптографическихметодов.

По­че­му про­бле­ма ис­поль­зо­ва­ния крип­то­гра­фи­че­ских ме­то­довв информационных системах (ИС) ста­ла в на­стоя­щий мо­мент осо­бо ак­ту­аль­на?

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

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

Про­бле­мой защиты информации путем ее преобразования за­ни­ма­ет­сякрип­то­ло­гия (kryptos — тай­ный, logos — нау­ка).Криптология раз­де­ля­ет­ся на два на­прав­ле­ния — крип­то­гра­фию и крип­тоа­на­лиз.Це­ли этих на­прав­ле­ний прямо про­ти­во­по­лож­ны.

Крип­то­гра­фия за­ни­ма­ет­сяпо­ис­ком и ис­сле­до­ва­ни­ем ма­те­ма­ти­че­ских ме­то­дов пре­об­ра­зо­ва­нияин­фор­ма­ции.

Сфе­ра ин­те­ре­сов криптоанализа-  ис­сле­до­ва­ние воз­мож­но­сти рас­шиф­ро­вы­ва­нияин­фор­ма­ции без зна­ния клю­чей.

В этой книге ос­нов­ное вни­ма­ние бу­дет уде­ле­но крип­то­гра­фи­че­скимме­то­дам.

Современная криптография включает в себя четыре крупных раздела:

1.

2.

3.

4.

Основные направления использования криптографических методов — передача конфиденциальнойинформации по каналам связи (например, электронная почта), установлениеподлинности передаваемых сообщений, хра­не­ние ин­фор­ма­ции (до­ку­мен­тов,баз данных) на но­си­те­лях в за­шиф­ро­ван­ном ви­де.

Тер­ми­но­ло­гия

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

В качествеинформации, подлежащей шифрованию и дешифрованию, будут рассматриваться тексты, построенные на некотором алфавите. Под этими терминами понимаетсяследующее.

Алфавит — конечное множествоиспользуемых для кодирования информации знаков.

Текст — упорядоченный набор из элементовалфавита.

В качествепримеров алфавитов, используемых в современных ИС можно привести следующие:

*<span Times New Roman"">                   

 алфавит Z33 — 32 буквы русского алфавита и пробел;

*<span Times New Roman"">                   

 алфавит Z256 — символы, входящие в стандартные коды ASCII и КОИ-8;

*<span Times New Roman"">                   

 бинарный алфавит- Z2 = {0,1};

*<span Times New Roman"">                  

 восьмеричныйалфавит или шестнадцатеричный алфавит;

Шиф­ро­ва­ние — пре­об­ра­зо­ва­тель­ныйпро­цесс: ис­ход­ный текст, ко­то­рыйно­сит так­же на­зва­ние от­кры­то­го тек­ста,за­ме­ня­ет­ся шиф­ро­ван­ным тек­стом.

исходный

текст

шифрованный

текст

Криптографическая система

КЛЮЧ

<img src="/cache/referats/16705/image001.gif" v:shapes="_x0000_s1026 _x0000_s1027 _x0000_s1028 _x0000_s1029 _x0000_s1030 _x0000_s1031 _x0000_s1036 _x0000_s1038 _x0000_s1044 _x0000_s1049 _x0000_s1050 _x0000_s1051">


Дешифрование — обратный шифрованиюпроцесс. На основе ключа шифрованный текст преобразуется в исходный.

шифрованный

текст

исходный

текст

Криптографическая система

КЛЮЧ

<img src="/cache/referats/16705/image002.gif" v:shapes="_x0000_s1117 _x0000_s1118 _x0000_s1119 _x0000_s1120 _x0000_s1121 _x0000_s1122 _x0000_s1123 _x0000_s1124 _x0000_s1125 _x0000_s1126 _x0000_s1127 _x0000_s1128 _x0000_s1129">


Ключ — ин­фор­ма­ция, не­об­хо­ди­маядля бес­пре­пят­ст­вен­но­го шиф­ро­ва­ния и де­шиф­ро­ва­ния тек­стов.

Крип­то­гра­фи­че­ская сис­те­ма пред­став­ля­етсо­бой се­мей­ст­во T пре­об­ра­зо­ва­нийот­кры­то­го тек­ста. Чле­ны это­го се­мей­ст­ва ин­дек­си­ру­ют­ся, или обо­зна­ча­ют­сясим­во­лом k; па­ра­метр k яв­ля­ет­ся клю­чом. Про­стран­ст­во клю­чей K — это на­бор воз­мож­ных зна­че­ний клю­ча. Обыч­но ключ пред­став­ля­етсо­бой по­сле­до­ва­тель­ный ряд букв ал­фа­ви­та.

Криптосистемыразделяются на симметричные и с открытым ключом.

В симметричных криптосистемах и дляшифрования, и для дешифрования используется одини тот же ключ.

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

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

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

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

·<span Times New Roman"">    

·<span Times New Roman"">    

Пре­об­ра­зо­ва­ниеTk оп­ре­де­ля­ет­ся со­от­вет­ст­вую­щимал­го­рит­мом и зна­че­ни­ем па­ра­мет­ра k.Эф­фек­тив­ность шиф­ро­ва­ния с це­лью за­щи­ты ин­фор­ма­ции за­ви­сит от со­хра­не­ниятай­ны клю­ча и криптостойкости шифра.

Требования к криптосистемам

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

Для со­вре­мен­ных крип­то­гра­фи­че­ских сис­тем за­щи­ты ин­фор­ма­циисфор­му­ли­ро­ва­ны сле­дую­щие об­ще­при­ня­тые тре­бо­ва­ния:

·<span Times New Roman"">     

·<span Times New Roman"">     

·<span Times New Roman"">     

·<span Times New Roman"">     

·<span Times New Roman"">     

·<span Times New Roman"">     

·<span Times New Roman"">     

·<span Times New Roman"">     

·<span Times New Roman"">     

·<span Times New Roman"">     

·<span Times New Roman"">     

<span Times New Roman",«serif»; mso-fareast-font-family:«Times New Roman»;mso-ansi-language:RU;mso-fareast-language: RU;mso-bidi-language:AR-SA">
<span Times New Roman",«serif»; color:blue">Симметричные криптосистемы<span Times New Roman",«serif»">

Все мно­го­об­ра­зие су­ще­ст­вую­щих крип­то­гра­фи­че­ских ме­то­довмож­но све­сти к сле­дую­щим клас­сам пре­об­ра­зо­ва­ний:

Симметричные

криптосистемы

<span Times New Roman",«serif»">Гаммирование

<span Times New Roman",«serif»">Подстановки

<span Times New Roman",«serif»">Блочные шифры

<span Times New Roman",«serif»">Перестановки

<img src="/cache/referats/16705/image003.gif" v:shapes="_x0000_s1061 _x0000_s1081 _x0000_s1082 _x0000_s1083 _x0000_s1084">

<span Times New Roman",«serif»">Мо­но- и мно­го­ал­фа­вит­ные под­ста­нов­ки.

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

<span Times New Roman",«serif»">Пе­ре­ста­нов­ки.

Так­же не­слож­ный ме­тод крип­то­гра­фи­че­ско­го пре­об­ра­зо­ва­ния.Ис­поль­зу­ет­ся как пра­ви­ло в со­че­та­нии с дру­ги­ми ме­то­да­ми.

<span Times New Roman",«serif»">Гам­ми­ро­ва­ние.

Этот ме­тод за­клю­ча­ет­ся в на­ло­же­нии на ис­ход­ный текст не­ко­то­ройпсев­до­слу­чай­ной по­сле­до­ва­тель­но­сти, ге­не­ри­руе­мой на ос­но­ве клю­ча. 

<span Times New Roman",«serif»">Блочные шифры.

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

<span Times New Roman",«serif»; mso-fareast-font-family:«Times New Roman»;mso-ansi-language:RU;mso-fareast-language: RU;mso-bidi-language:AR-SA">
Перестановки

Перестановкой <span Times New Roman";mso-hansi-font-family: «Times New Roman»;mso-char-type:symbol;mso-symbol-font-family:Symbol">s

набора целых чисел (0,1,...,N-1) называется его переупорядочение. Для тогочтобы показать, что целое i пере­мещеноиз позиции i в позицию <span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Symbol">s(i), где 0 <span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Symbol">£(i) < n, будем использовать запись

<span Times New Roman"; mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol;mso-symbol-font-family: Symbol">s

<span Times New Roman",«serif»;mso-ansi-language:EN-US">=<span Times New Roman",«serif»">(<span Times New Roman";mso-hansi-font-family:«Times New Roman»; mso-char-type:symbol;mso-symbol-font-family:Symbol">s<span Times New Roman",«serif»">(0), <span Times New Roman";mso-hansi-font-family:«Times New Roman»; mso-char-type:symbol;mso-symbol-font-family:Symbol">s<span Times New Roman",«serif»">(1),..., <span Times New Roman";mso-hansi-font-family:«Times New Roman»; mso-char-type:symbol;mso-symbol-font-family:Symbol">s<span Times New Roman",«serif»">(N-1)).

Число перестановок из (0,1,...,N-1) равно n!=1*2*...*(N-1)*N. Введем обозначение <span Times New Roman";mso-hansi-font-family:«Times New Roman»; mso-char-type:symbol;mso-symbol-font-family:Symbol">s

для взаимно-однозначного отображения (гомо­морфизма) набора S={s0,s1,...,sN-1}, состоящего из n элементов, на себя.

<span Times New Roman"; mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol;mso-symbol-font-family: Symbol">s

<span Times New Roman",«serif»">: S <span Times New Roman";mso-hansi-font-family: «Times New Roman»;mso-char-type:symbol;mso-symbol-font-family:Symbol">®<span Times New Roman",«serif»"> S

<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Symbol">s

<span Times New Roman",«serif»">:si <span Times New Roman"; mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol;mso-symbol-font-family: Symbol">®<span Times New Roman",«serif»"> s<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Symbol">s<span Times New Roman",«serif»">(i)<span Times New Roman",«serif»">, 0 <span Times New Roman"; mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol;mso-symbol-font-family: Symbol">£<span Times New Roman",«serif»"> i < n

Будем говорить, что вэтомсмысле <span Times New Roman"; mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol;mso-symbol-font-family: Symbol">s

является перестановкой элементов S.И, наоборот, автоморфизм S соответствует пере­становке целых чисел (0,1,2,.., n-1).

Криптографическим преобразованиемT для алфавита Zmназывается последовательность автоморфизмов: T={T(n):1<span Times New Roman";mso-hansi-font-family:«Times New Roman»; mso-char-type:symbol;mso-symbol-font-family:Symbol">£

n<<span Times New Roman";mso-hansi-font-family:«Times New Roman»; mso-char-type:symbol;mso-symbol-font-family:Symbol">¥}

<span Times New Roman",«serif»; mso-ansi-language:EN-US">T(n): Zm,n

<span Times New Roman"; mso-hansi-font-family:«Times New Roman»;mso-ansi-language:EN-US;mso-char-type: symbol;mso-symbol-font-family:Symbol">®<span Times New Roman",«serif»;mso-ansi-language:EN-US">Zm,n,1<span Times New Roman"; mso-hansi-font-family:«Times New Roman»;mso-ansi-language:EN-US;mso-char-type: symbol;mso-symbol-font-family:Symbol">£<span Times New Roman",«serif»;mso-ansi-language:EN-US">n<<span Times New Roman"; mso-hansi-font-family:«Times New Roman»;mso-ansi-language:EN-US;mso-char-type: symbol;mso-symbol-font-family:Symbol">¥<span Times New Roman",«serif»">

Каждое T(n)является, таким образом,перестановкой n-грамм из Zm,n.

Поскольку T(i)и T(j) могутбыть определены независимо  при i<span Times New Roman";mso-hansi-font-family: «Times New Roman»;mso-char-type:symbol;mso-symbol-font-family:Symbol">¹

j,число криптографических преобразований исходного текста размерности n равно (mn)!<span Times New Roman",«serif»;mso-fareast-font-family:«Times New Roman»; mso-ansi-language:EN-US;mso-fareast-language:RU;mso-bidi-language:AR-SA">[2].Оно возрастает непропорционально при увеличении m и n: так, при m=33и n=2 число различныхкриптографических преобразований равно 1089!.. Отсюда следует, что потенциальносуществует большое число отображений исходного текста в шифрованный.

Практическая реализация криптогра­фических систем требует, чтобы преобразо­вания {Tk:k<span Times New Roman";mso-hansi-font-family:«Times New Roman»; mso-char-type:symbol;mso-symbol-font-family:Symbol">Î

K} были определены алгоритмами,зависящими от относительно небольшого числа параметров (ключей). Сис­те­мы под­ста­но­вок

ОпределениеПодстановкой <span Times New Roman";mso-hansi-font-family:«Times New Roman»; mso-char-type:symbol;mso-symbol-font-family:Symbol">p

на алфавите Zmназывается автоморфизм Zm, при котором буквы исходного текста tзамещены буквами шифрованного текста <span Times New Roman";mso-hansi-font-family:«Times New Roman»; mso-char-type:symbol;mso-symbol-font-family:Symbol">p(t):

<span Times New Roman",«serif»; mso-no-proof:yes">Zm

<span Times New Roman",«serif»"><span Times New Roman"; mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol;mso-symbol-font-family: Wingdings;mso-no-proof:yes">à<span Times New Roman",«serif»; mso-no-proof:yes"> Zm<span Times New Roman",«serif»">;<span Times New Roman"; mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol;mso-symbol-font-family: Symbol;mso-no-proof:yes">p<span Times New Roman",«serif»; mso-no-proof:yes">: <span Times New Roman",«serif»; mso-ansi-language:EN-US">t <span Times New Roman";mso-hansi-font-family:«Times New Roman»; mso-char-type:symbol;mso-symbol-font-family:Wingdings;mso-no-proof:yes">à<span Times New Roman",«serif»;mso-ansi-language:EN-US"> <span Times New Roman";mso-hansi-font-family: «Times New Roman»;mso-char-type:symbol;mso-symbol-font-family:Symbol; mso-no-proof:yes">p<span Times New Roman",«serif»; mso-no-proof:yes">(t)<span Times New Roman",«serif»">.

Набор всех подстановокназывается симметрической группой Zmè будет вдальнейшем обозначаться какSYM(Zm).

УтверждениеSYM(Zm) c операцией произведения является группой, т.е.операцией, обладающей следующими свойствами:

<span Times New Roman"">    

Замкнутость:произведение подстановок <span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Symbol">p1<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Symbol">p2 является подста­новкой:

<span Times New Roman"; mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol;mso-symbol-font-family: Symbol;mso-no-proof:yes">p

: t<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à<span Times New Roman";mso-hansi-font-family: «Times New Roman»;mso-char-type:symbol;mso-symbol-font-family:Symbol; mso-no-proof:yes">p1(<span Times New Roman"; mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol;mso-symbol-font-family: Symbol;mso-no-proof:yes">p2(t)).

<span Times New Roman"">    

Ассоциативность:результат произведения <span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Symbol">p1<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Symbol">p2<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Symbol">p3 не зависит от порядка расстановки скобок:

(<span Times New Roman"; mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol;mso-symbol-font-family: Symbol;mso-no-proof:yes">p

1<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Symbol;mso-no-proof:yes">p2)<span Times New Roman";mso-hansi-font-family: «Times New Roman»;mso-char-type:symbol;mso-symbol-font-family:Symbol; mso-no-proof:yes">p3=<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Symbol;mso-no-proof:yes">p1(<span Times New Roman";mso-hansi-font-family: «Times New Roman»;mso-char-type:symbol;mso-symbol-font-family:Symbol; mso-no-proof:yes">p2<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Symbol;mso-no-proof:yes">p3)

<span Times New Roman"">    

Существованиенейтрального элемента: постановка i, опре­деляемая как i(t)=t, 0<span Times New Roman";mso-hansi-font-family: «Times New Roman»;mso-ansi-language:EN-US;mso-char-type:symbol;mso-symbol-font-family: Symbol">£t<m, является нейтральнымэлементом SYM(Zm)по операции умножения: i<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Symbol">p=<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Symbol">pi для <span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Symbol">"<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Symbol">p<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Symbol">ÎSYM(Zm).

<span Times New Roman"">    

Существованиеобратного: для любой подстановки <span Times New Roman";mso-hansi-font-family:«Times New Roman»; mso-char-type:symbol;mso-symbol-font-family:Symbol">p существует единственная обратнаяподстановка <span Times New Roman"; mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol;mso-symbol-font-family: Symbol">p-1,удовлетворя­ющая условию

<span Times New Roman";mso-hansi-font-family: «Times New Roman»;mso-char-type:symbol;mso-symbol-font-family:Symbol; mso-no-proof:yes">pp

‑1=<span Times New Roman";mso-hansi-font-family: «Times New Roman»;mso-char-type:symbol;mso-symbol-font-family:Symbol; mso-no-proof:yes">p‑1<span Times New Roman";mso-hansi-font-family:«Times New Roman»; mso-char-type:symbol;mso-symbol-font-family:Symbol;mso-no-proof:yes">p=i.

Число возможных подстановок в симметрической группе Zmназывается порядком SYM(Zm)и равно m! .

Определение.Ключом подстановки k для Zmназывается последовательность элементов симметрической группы Zm:

<span Times New Roman",«serif»;mso-no-proof:yes">k

<span Times New Roman",«serif»;mso-no-proof:yes">=(p0,p1,...,pn<span Times New Roman",«serif»">-1<span Times New Roman",«serif»;mso-no-proof:yes">,...), pn<span Times New Roman";mso-hansi-font-family: «Times New Roman»;mso-char-type:symbol;mso-symbol-font-family:Symbol; mso-no-proof:yes">Î<span Times New Roman",«serif»; mso-no-proof:yes">SYM(Zm), 0<span Times New Roman";mso-hansi-font-family:«Times New Roman»; mso-char-type:symbol;mso-symbol-font-family:Symbol;mso-no-proof:yes">£<span Times New Roman",«serif»;mso-no-proof:yes">n<<span Times New Roman";mso-hansi-font-family: «Times New Roman»;mso-char-type:symbol;mso-symbol-font-family:Symbol; mso-no-proof:yes">¥<span Times New Roman",«serif»; mso-no-proof:yes">

Подстановка, определяемая ключом k, является крипто­гра­фи­ческим преобразованием Tk, при помощи которогоосуществляется преоб­разование n-граммыисходного текста (x0,x1 ,..,xn-1) в n-грамму шифрованного текста (y0,y1 ,...,yn-1):

<span Times New Roman",«serif»; mso-no-proof:yes">yi=p(xi),

<span Times New Roman",«serif»">  0<span Times New Roman";mso-hansi-font-family: «Times New Roman»;mso-char-type:symbol;mso-symbol-font-family:Symbol; mso-no-proof:yes">£<span Times New Roman",«serif»; mso-no-proof:yes">i<n

где n – произвольное(n=1,2,..). Tk называетсямоноалфавитной под­ста­новкой, если pнеизменно при любом i, i=0,1,..., в противном случае Tkназывается многоалфавитной подстановкой.

Примечание. К наиболеесущественным особенностям подста­новки Tkотносятся следующие:

1. Исходный текст шифруетсяпосимвольно. Шифрования n-граммы(x0,x1 ,..,xn-1) и ее префикса (x0,x1 ,..,xs-1)связаны соотношениями

<span Times New Roman",«serif»">Tk(x0,x1,..,xn-1)=(y0,y1 ,...,yn-1)

<span Times New Roman",«serif»">Tk(x0,x1,..,xs-1)=(y0,y1 ,...,ys-1)

2. Буква шифрованного текстаyi является функцией только i-й компоненты ключа pi  и i-й буквы исходного текста xi.

<span Times New Roman",«serif»">Подстановка Цезаря

Подстановка Цезаря является самым простым вариантом подстановки.Она относится к группе моноалфавитныхподстановок.

Определение.Подмножество Cm={Ck:0<span Times New Roman"; mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol;mso-symbol-font-family: Symbol">£

k<m} симметрической группы SYM(Zm),содержащее m подстановок

<span Times New Roman",«serif»; mso-no-proof:yes">Ck: j

<span Times New Roman";mso-hansi-font-family: «Times New Roman»;mso-char-type:symbol;mso-symbol-font-family:Symbol; mso-no-proof:yes">®<span Times New Roman",«serif»; mso-no-proof:yes">(j+k) (mod m), 0<span Times New Roman";mso-hansi-font-family:«Times New Roman»; mso-char-type:symbol;mso-symbol-font-family:Symbol;mso-no-proof:yes">£<span Times New Roman",«serif»; mso-no-proof:yes">k<span Times New Roman",«serif»; mso-no-proof:yes"> < m,

называется подстановкой Цезаря.

Умножение коммутативно, CkCj=CjCk=Cj+k, C0– идентичнаяподстановка, а обратной к Cк является Ck-1=Cm-k, где 0<k<m. Семейство подстановок Цезаря названо по имени римскогоимператора Гая Юлия Цезаря, который поручал Марку Туллию Цицерону составлятьпослания с использованием 50-буквенного алфавита и подстановки C3.

Подстановка определяется по таблице замещения, содержащей пары соответствующихбукв “исходный текст – шифрованный текст”. Для C3 подстановкиприведены в Табл. 1. Стрелка (<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings">à

) означает, что буква исходного текста (слева)шифруется при помощи C3 в букву шифрованного текста (справа).

Определение. СистемойЦезаря называется моноалфа­витная подстановка, преобразующая n-грамму исходного текста (x0, x1 ,..,xn-1) в n‑грамму шифрованного текста (y0,y1 ,...,yn-1) в соответствии с правилом

<span Times New Roman",«serif»; mso-no-proof:yes">y

<span Times New Roman",«serif»; mso-ansi-language:EN-US">i<span Times New Roman",«serif»; mso-no-proof:yes">=Ck(xi),0<span Times New Roman"; mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol;mso-symbol-font-family: Symbol;mso-no-proof:yes">£<span Times New Roman",«serif»; mso-no-proof:yes">i<n.

Например, ВЫШЛИТЕ_НОВЫЕ_УКАЗАНИЯ посредством подстановки C3преобразуется в еюыолхиврсеюивцнгкгрлб.

Таблица 1.

А<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

г

Й<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

м

Т<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

х

Ы<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

ю

Б<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

д

К<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

н

У<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

ц

Ь<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

я

В<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

е

Л<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

о

Ф<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

ч

Э<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

_

Г<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

ж

М<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

п

Х<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

ш

Ю<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

а

Д<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

з

Н<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

р

Ц<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

щ

Я<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

б

Е<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

и

О<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

с

Ч<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

ъ

_<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

в

Ж<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

й

П<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

т

Ш<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

ы

З<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

к

Р<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

у

Щ<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

ь

И<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

л

С<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

ф

Ъ<span Times New Roman";mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol; mso-symbol-font-family:Wingdings;mso-no-proof:yes">à

э

При своей несложности система легко уязвима. Если злоумышленник имеет

1) шифрованный и соответ­ствующий исходный текст или

2) шифрованный текст выбранного злоумыш­ленником исходного текста,

то определение ключа и дешифрование исходного текста тривиальны.

<span Times New Roman",«serif»">Болееэффективны обобщения подстановки Цезаря — шифрХилла и шифр Плэйфера. Ониоснованы на подстановке не отдельных символов, а 2-грамм (шифр Плэйфера) или n-грамм<span Times New Roman",«serif»;mso-fareast-font-family:«Times New Roman»; mso-ansi-language:RU;mso-fareast-language:RU;mso-bidi-language:AR-SA">[3]

(шифр Хилла). При более высокой криптостойкости они значительно сложнее дляреализации и требуют достаточно большого количества ключевой информации.<span Times New Roman",«serif»">Многоалфавитныесистемы. Системы одноразового использования.<span Times New Roman",«serif»">

Слабая криптостойкость моноалфавитных подстановок преодолевается сприменением подстановок многоалфавитных.

Многоалфавитная подстановкаопределяется ключом <span Times New Roman"; mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol;mso-symbol-font-family: Symbol">p

=(<span Times New Roman";mso-hansi-font-family: «Times New Roman»;mso-char-type:symbol;mso-symbol-font-family:Symbol">p1,
<span Times New Roman"; mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol;mso-symbol-font-family: Symbol">p2,...), содержащим не менее двух различных подстановок. В начале рассмотрим многоалфавитныесистемы подстановок с нулевым начальным смещением.

Пусть {Ki: 0<span Times New Roman";mso-hansi-font-family: «Times New Roman»;mso-char-type:symbol;mso-symbol-font-family:Symbol">£

i<n}- независимые случайные переменные с одинаковым распределением вероятностей,принимающие значения на множестве Zm

Pкл{(K0, K1,..., Kn-1)=(k0, k1, ..., kn-1)}=(1/m)n

Система одноразовогоиспользования преобразует исходный текст

<span Times New Roman",«serif»">X=(X0, x1, ..., xn-1)

в шифрованный текст

<span Times New Roman",«serif»">Y=(Y0, y1, ..., yn-1)

при помощи подстановки Цезаря

<span Times New Roman",«serif»">Yi=CKi(xi)=(Ki+Xi) (mod m)  i=0...n-1                           (1)

Для такой системы подстановки используют также термин “одноразоваялента” и “одноразовый блокнот”. Пространство ключей К системы одноразовойподстановки является вектором рангов (K0,K1, ..., Kn-1) и содержит mn точек.

Рассмотрим небольшой примершифрования с бесконечным ключом. В качестве ключа примем текст

<span Times New Roman",«serif»"> “БЕСКОНЕЧНЫЙ_КЛЮЧ....”.

Зашифруем с его помощью текст“ШИФР_НЕРАСКРЫВАЕМ”. Шифрование оформим в таблицу:

ШИФРУЕМЫЙ_ТЕКСТ

24

8

20

16

19

5

12

27

9

32

18

5

10

17

18

БЕСКОНЕЧНЫЙ_КЛЮЧ

1

5

17

10

14

13

5

23

13

27

9

32

10

11

30

ЩРДЪАТТССЦЪЫДФЬП

 =SUM(ABOVE) 25

 =SUM(ABOVE) 13

 =SUM(ABOVE)-33 4

 =SUM(ABOVE) 26

 =SUM(ABOVE)-33 0

 =SUM(ABOVE) 18

 =SUM(ABOVE) 17

 =SUM(ABOVE)-33 17

 =SUM(ABOVE) 22

 =SUM(ABOVE)-33 26

 =SUM(ABOVE) 27

 =SUM(ABOVE)-33 4

 =SUM(ABOVE) 20

 =SUM(ABOVE) 28

 =SUM(ABOVE)-33 15

Исходный текст невозможно восстановить безключа.

Наложение белого шума в виде бесконечного ключа на исходный текстменяет статистические характеристики языка источника. Системы одноразовогоиспользования теоретически не расшифруемы<span Times New Roman",«serif»; mso-fareast-font-family:«Times New Roman»;mso-ansi-language:RU;mso-fareast-language: RU;mso-bidi-language:AR-SA">[4]

,так как не содержат достаточной информации для восстановления текста.

Почему же э

еще рефераты
Еще работы по компьютерам. программированию