Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Математические основы криптологии и криптографические методы и средс

..pdf
Скачиваний:
48
Добавлен:
15.11.2022
Размер:
14.26 Mб
Скачать

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

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

Естественным путем увеличения сложности анализа сетей Фай­ стеля является следующий метод (кстати, использованный и в алго­ ритме в соответствии с ГОСТ 28147-89-отечественным стандартом криптографического преобразования данных). Для того чтобы распро­ странить влияние функции F в одном раунде на выход и функцию следующего раунда, к выходному значению F прибавляют по некото­ рому модулю значение итерационного подключа для текущего раунда и затем полученное значение подают на вход функции F следующего раунда шифрования. Такой способ организации сети ставит выходы последующих раундов шифров в прямую зависимость от предыдущих, что способствует организации лавинного эффекта и полноты.

1.1.16. Вопросы и задачи для самоконтроля

1 .

Перечислите основные цели, которые преследует криптогра­

фия.

2. Перечислите основные алгоритмы криптографических пре­ образований.

3.Объясните понятия «целостности», «подлинности» и «кон­ фиденциальности» информации.

4.Дайте понятие шифра. Расскажите про известные методы

симметричного шифрования.

5. Опишите построение шифра гаммирования.

6 . Укажите недостатки и достоинства шифров гаммирования.

7. Перечислите основные режимы работы блочных шифров.

8 . Опишите отличие архитектуры «Квадрат» от архитектуры обычных блочных шифров. В чем вы видите ее преимущества и не­ достатки?

9. В центр пришло зашифрованное сообщение: -ФВМЕЖ- ТИВФЮ. Найдите исходное сообщение, если известно, что шифрпреобразование заключалось в следующем. Пусть х\, х2 —корни мно­ гочлена х2 + Зх + 1. К порядковому номеру каждой буквы в стан­ дартном русском алфавите (33 буквы) прибавлялось значение много­ члена J(x) = х6 + Зх5 + х4 + х3 + 4х2 + 4х + 3, вычисленное либо при х = xl, либо при х = х2 (в неизвестном порядке), а затем полученное число заменялось соответствующей ему буквой.

10. Сообщение, записанное в алфавите АБВГДЕЖЗИКЛМНО ПРСТУФХЦЧШЩЬЫЭЮЯ, зашифровывается при помощи после­ довательно идущих букв этого же алфавита. Длина последовательно­ сти равна длине сообщения. Шифрование каждой буквы исходного сообщения состоит в сложении ее с порядковым номером соответст­ вующей буквы шифрующей последовательности и замене такой суммы на букву алфавита, порядковый номер которой имеет тот же остаток от деления на 30, что и эта сумма. Восстановите два исходных сообщения, каждое из которых содержит слово «КОРАБЛИ», если результат их зашифровывания при помощи одной и той же шифрую­ щей последовательности известен: ЮПТЦАРГШАЛЖЖЕВЦЩЫР ВУУи ЮПЯ ТБНЩМСДТЛЖГПСГХСЦЦ.

11. Покажите, что в схеме Файстеля дешифрование является операцией, обратной шифрованию.

12. Предположим, что некто предлагает вам следующий способ подтверждения того, что вы оба владеете секретным ключом. Вы создаете строку случайных битов, длина которой равна длине ключа, объединяете эту строку случайных битов с ключом при помощи опе­ рации XOR и посылаете результат в канал связи. Ваш партнер с по­ мощью операции XOR объединяет полученный блок с ключом (ко­ торый должен совпадать с вашим) и возвращает результат. Убедив­ шись, что полученная вами строка совпадает с оригинальной, соз­ данной вами строкой случайных битов, вы заключаете, что ваш партнер имеет тот же секретный ключ, что и вы, хотя ни один из вас не пересылал секретный ключ другому. Нет ли в этой схеме скрытых дефектов?

13.Дайте определение криптологии.

14.Какие три основных периода криптологии вы знаете?

15.Объясните понятие «криптологический алгоритм».

16.Что такое криптография?

17.Приведите основную классификацию криптографических

методов.

18.Какова суть преобразований перестановки и замены?

19.Что собой представляет шифрование и дешифрование?

20.Дайте определение аналитическому преобразованию, гаммированию и комбинированному шифрованию.

21.Что такое системы с открытыми ключами?

22.Приведите структурную схему процесса шифрования с от­ крытым ключом.

23.Дайте определение стойкости криптосистемы.

24.Приведите основные программно-аппаратные реализации

шифров.

25.В чем заключается суть DES-алгоритма? Каковы его особен­

ности?

26.В каких режимах может работать DES-алгоритм?

27.Дайте описание отечественного алгоритма криптографиче­ ского преобразования данных (ГОСТ 28147-89) и его отличительных особенностей.

28.Какие режимы имеет отечественный алгоритм криптографи­ ческого преобразования данных (ГОСТ 28147-89)?

29.Чем отличаются поточные симметричные криптографиче­

ские системы?

30.Какими характеристиками оценивается стойкость крипто­ графических систем?

31.Что такое ключевая система шифра и как организуется про­ токолирование связи и распределения ключей?

32.В чем заключается суть электронной цифровой подписи?

33.Как проверяется целостность сообщения?

1.2.МНОЖЕСТВА И ОТОБРАЖЕНИЯ

1.2.1.Множество

Математическое понятие множества является одним из цен­ тральных во всей математике. Оно определяется в зависимости от задач. Примером может служить группа аксиом, известная как сис­ тема NGB (по имени авторов - Джона фон Нейман, Поля Бернайса, Курта Геделя). Главная идея, положенная в основу NGB, заключает­ ся в различении понятий множества и класса. Все объекты NGB яв­ ляются классами. Класс соответствует нашему интуитивному пони­ манию совокупности. Множеством являются те классы, которые яв­ ляются элементами других классов. Классы, не являющиеся множе­ ствами, называются собственными классами.

Существует другая группа аксиом - система ZF (по имени авто­ ров - Эрнста Цермело и Абрахама Френкеля). Это теория построимых множеств, т.е. идея о том, что множество строится из некоторых простых составляющих с помощью таких операций, как пересечение, объединение, дополнение и т.д.

Мы будем понимать под множеством любую совокупность объ­ ектов, называемых элементами множества. Множества с конечным числом различных элементов могут быть описаны путем явного пе­ речисления всех элементов. Обычно эти элементы заключаются

в фигурные скобки. Например, {1,2,4,8,16,32,64} - множество степе­ ней двойки, заключенных между 1 и 100. Множество обозначается прописной буквой какого-либо алфавита, а его элементы - строчными буквами того же или другого алфавита. Для некоторых особо важных множеств приняты стандартные обозначения, которых следует придерживаться. Так, буквами N, Z, Q, R обозначают соот­ ветственно множество натуральных чисел, множество целых чисел, множество рациональных чисел и множество вещественных чисел. При заданном множестве S включение a e S указывает на то, что а -

элемент множества. В противном случае записывают a S. Говорят, что S - подмножество Т или S ^ T (S содержится в 7), когда имеет место импликация:

xeS,Vx=> х е Т

Два множества совпадают (или равны), если у них одни и те же элементы. Символически это записывается в виде

S =T o S c z T n T c z S .

Пустое множество 0 , т.е. множество, не содержащее ни одного элемента, по определению входит в число подмножеств любого множества.

Под пересечением двух множеств S и Т понимают множество S n T = {ж |ж е5'иж е7’},

а под их объединением - множество S u T = {ж | ж е .S' или х еГ } . Пусть X и Г - произвольные множества. Пару (ж, у) элементов

х е X , у е Y , взятых в данном порядке, называют упорядоченной парой, считая при этом, что (*i >.Vi) = (* 2 >.У2 ) тогда и только тогда, когда ж, = хг,у 1= у 2 . Декартовым произведением двух множеств X

и Y называется множество всех упорядоченных пар (ж, у ): ХхУ={(ж,у)|же ЛГ,уеУ}.

Пример 8. Пусть If -множество всех вещественных чисел. То­ гда декартов квадрат Я1= R х R есть множество всех декартовых координат на плоскости относительно заданных координатных осей.

Аналогично можно ввести декартово произведение Л^хЛ^хА’э трех, четырех и т.д. множеств. При Xt =Хг =Xj = ... =Хк = Х сокра­ щенно пишут Х к =Х\хХг'*ХзХ...хХк \1 говорят о к-й декартовой сте­ пени множества X. Элементами Х к являются последовательности, или строки (jcipc2,...jc*) длины к.

1.2.2. Отображение

Понятие отображения или функции также является одним из центральных в математике. При заданных X и F отображение / с об­ ластью определения X и областью значений F сопоставляет каждому элементу х е Х элемент J{x) е Y. Символически отображение записы­ вается в виде /: X —*-Y. Образом при отображении / называется мно­ жество всех элементов видаДх):

Imf = {/(*) | я: е * } = / ( * ) с F Множество

/-* ДО= {х е * | /(* ) = .?}. называется прообразом элемента j e Y.

Отображение fiX —>F называется сюръективным, или отображе­ нием на, когда выполнено равенство 1ш /= F.

Отображение f:X —>F называется инъективным, когда из х ф х' следует, чтоf[pc) ФДх').

Отображение f:X -^Y называется биективным, или взаимно од­ нозначным, если оно одновременно сюръективно и инъективно.

Равенствоf - g двух отображений означает по определению, что их соответствующие области совпадают.

Пример 9. Пусть R+ - множество положительных вещественных чисел. Тогда отображения f:R —>R, g:R-+R+, h:R+-+R+, определенные одним и тем же правилом х —> х2, все различны:/-ни сюръективно, ни инъективно, g - сюръективно, но не инъективно, а отображение h - биективно. Таким образом, задание области определения и области значений - важная часть определения отображения.

Единичным или тождественным отображением ех : X —>X на­ зывается отображение, переводящее каждый элемент х е Х в себя.

Отображение f~ l является обратным к / , если f( x ) =у о * > Г '(у ) = х .

1.2.3.

Бинарные отношения

Для

любых двух множеств X и Y всякое подмножество

O c iX x Y

называется бинарным отношением между X VLY (и л и про­

сто наХ, если Х= Y).

Бинарное отношение ~ на X называется отношением эквива­ лентности, если для всех х, х и хе X выполнены условия:

i.х~х (рефлексивность);

и.х~Х\ =>Х|~х (симметричность);

Ш.x~xi, Х]~х2 =>х2~х (транзитивность).

Подмножество Н = {х' е X | х'~х} d X всех элементов, эквива­ лентных данному х, называется классом эквивалентности, содержа­ щим х.

Поскольку х~х (г), то х' е Н. Любой элемент х’е Н называется представителем класса Н.

Справедлива следующая теорема.

Теорема 1. Множество классов эквивалентности по отноше­ нию ~ является разбиением множества X в том смысле, что X являет­ ся объединением непересекающихся подмножеств.

Доказательство. В самом деле, так как х е Я , то X - и Я ( .

Далее класс Я однозначно определяется любым своим представите­ лем, т.е. Н, = H j Xj ~ X j. В одну сторону: jcf ~Xj и х &Ht => х ~

~ Xj => х ~ Xj => х 6 H j => Hj с H j . Но Xj ~ Xj => xj (it). Поэтому выполнено и обратное включение H j d Я ; . Значит, H j - H j. В дру­ гую сторону: так как JCе Н , то Hj = Н <=> х е Я , => х ~ х {.

Если теперь H jC \H ;* 0 и х е H j C\Ht , то х ~ X; и дг ~ х ., откуда в силу транзитивности (ад) имеем x t ~ Xj и H j = //,.. Значит, различные классы не пересекаются. Теорема доказана.

1.2.4. Основные свойства целых чисел

Задачей этой части является краткое описание тех простейших свойств делимости целых чисел, на которые по разным поводам будем ссылаться в дальнейшем.

Основная теорема арифметики. Целое число s называется де­ лителем (или множителем) целого числа п, если и = st для некоторого t е Z . В свою очередь, п называется кратным s. Делимость п на s

обозначается символом |. Делимость - транзитивное свойство на Z. Целое число р, делители которого исчерпываются числами ±р, ±1 (несобственные делители), называется простым. Обычно подразуме­ вается, что простые числа больше единицы.

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

Теорема 2. Каждое положительное целое число п ф 1 может быть записано в виде произведения простых чисел: п = p lp2---ps

Это разложение единственно с точностью до порядка сомножителей. (Без доказательства.)

Теорема 3 (Евклида). Множество

Р = {2,3,5,11,13,...}

всех простых чисел бесконечно.

Действительно, если бы существовало бы лишь конечное число простых чисел, например ри р2,...,р к,то по основной теореме число

с = Р\Рг"'Рк +1 делилось бы по крайней мере на одно из р , . Без

ограничения общности считаем с = /?,с'

Тогда рх(с' -

р2 •• • рк) = 1,

а это невозможно, поскольку делителями

единицы в

Z являются

лишь ±1 , что и требовалось доказать.

 

 

При заданных a ,b e Z ,b > 0, всегда найдутся q,r& Z такие, что

a=bq +r,0< r< b

 

 

 

(если

считать лишь Ъф 0 , то

будет

выполнено неравенст­

во 0 < г <|б|).

 

 

 

В самом деле, множество S = {a -b s \ s е Z,a -b s >О}, очевидно,

не пусто

(например, a - b ( - a )2>0). Стало

быть, S

содержит наи­

меньший

элемент. Обозначим его

r = a -b q По

условию г> 0.

Предположив г > Ь, мы получили бы элемент г —b =a —b(q + 1)е S , меньший, чем г. Это противоречие устраняется лишь при г < Ь.

Проведенное несложное рассуждение дает алгоритм для нахож­ дения частного b и остатка г за конечное число шагов.

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

J = {nu +mv | H,veZ}.

Выберем в J наименьший положительный элемент d - пи0 + mv0 .

Используя алгоритм деления, запишем n = dq + r,0< r< d

Ввиду вы­

бора d включение

 

r =n -d q =n -(nu0+mv0)q =n(l —uQq)+ m (-v0q )e J

влечет ра­

венство г = 0. Стало быть, d\rt. Аналогично доказывается, что d\m. Пусть теперь d '- любой делитель чисел л и т . Тогда d'\n, d'\m =>

d'\nua, d'\mvo => d'\(nuo + mv0) => d'\d.

Итак, d обладает всеми свойствами НОД, и поэтому d - НОД(|л,т). Мы пришли к следующему утверждению.

Наибольший общий делитель двух целых чисел п,т, не равных одновременно нулю, всегда записывается в виде НОД(л,т) = пи + mv; u,vaZ

В частности, целые числа п,т взаимно просты тогда и только тогда, когда пи + mv = 1 при некоторых u ,v eZ

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

1.2.6. Множества с алгебраическими операциями

Пусть X - произвольное множество. Бинарной алгебраической операцией (или законом композиции) на X называется произвольное (но фиксированное) отображение т.ХхХ—>Х декартова квадрата

X 2 = X х X в X. Таким образом, любой упорядоченной паре (а,Ь) элементов а,6 е X ставится в соответствие определенный элемент т(а,Ь) того же множества X. Иногда вместо т (а,Ь) пишут axb, а еще чаще бинарную операцию на X обозначают каким-нибудь специаль­

ным символом: *, °, • или +

На X может быть задано, много различных операций. Желая вы­ делить одну из них, используют скобки (X,*) и говорят, что операция * определяет на X алгебраическую структуру или что (X,*) - алгеб­ раическая система.

Пример 10. На множестве Z целых чисел помимо естественных операций + , (сложения и умножения) легко указать получающиеся

при помощи + (или- )

и «производные» операции: п°т =п +

+ т -пт , п * т = ~ п -т

и т.д. Мы приходим к различным алгебраи­

ческим структурам (Z,+),(Z,-), (Z,°) и (Z,*).

Наряду с бинарными алгебраическими операциями не лишены интереса гораздо более общие л-арные операции (унарные при п = 1 , тернарные при п = 3 и т.д.), равно как и их комбинации. Связанные с ними алгебраические структуры составляют специальную теорию универсальных алгебр.

1.2.7. Полугруппы и моноиды

Бинарная операция * на множестве X называется ассоциативной, если (а*Ь)*с = а*(Ь*с) всех a,b,cе X. Она также называется коммута­ тивной, если а*Ь = Ь*а. Те же названия присваиваются и соответст-