Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ТИКЛекции.doc
Скачиваний:
124
Добавлен:
07.05.2019
Размер:
2.69 Mб
Скачать

Функция дискретного логарифма обратная

Найти дискретный логарифм при большом р задача огромной вычислительной сложности. Всем пользователям известны и p. Каждый пользователь выбирает случайным образом x - целое число, в интервале [1; p-1] и держит его в секрете. Затем вычисляет f(x) и помещает его в общественно открытый справочник. Теперь, если пользователь 1 и 2 захотят установить секретную связь, то 1 возьмет из справочника Y2 и с помощью своего секретного X1 вычислит . Аналогично вычисляется Z21 . Таким образом, у пользователей общий ключ Z21 = Z12 . Не зная X1и X2 , хакер может попытаться вычислить Z, зная Y1 и Y2 . Но пока простого решения не найдено. Так, для прямого преобразования 1000 битных простых чисел требуется 2000 операций, для обратного преобразования около 1030 операций. Недостаток – необходимость аутентификации – проверки с тем ли пользователем осуществлен обмен ключами.

Односторонние функции дали еще возможность реализоваться цифровым (электронным) подписям.

Криптосистема RSA

В 1977 г. Р. Ривест, А.Шамир, Л. Аделман предложили разновидность одностороних функций – функцию с потайным ходом RSA. Они воспользовались тем фактом, что нахождение простых чисел в вычислительном отношении осуществляется легко, но разложение на множители двух таких чисел практически невыполнимо. Нахождение простых чисел основано на теореме Ферма.

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

Односторонняя функция RSA – то же дискретное возведение в степень:

, где - положительное целое, не превосходящее .Здесь и - большие числа, такие, что функция Эйлера имеет большой простой множитель; = - потайной ход; - положительное целое, не превосходящее . Причем наибольший общий делитель (НОД) пары равен 1 (такие числа называют взаимно простыми). Всем пользователям известны и . Обратная функция , где - единственное положительное целое, меньшее и удовлетворяющее условию . То, что действительно обратная к по модулю следует из теоремы Эйлера, а показатель определяют из алгоритма Эвклида, вычисляющего НОД.

Пример 1. 1. Выберем два простых числа и .

2.Находим и .

3.Находим , такое, что НОД ( . При больших числах пришлось бы искать при помощи алгоритма Эвклида. Для нас .

Например, НОД(252,441,1080)=9  252=22327 441=3 1080 =22337

4.Открытое сообщение имеет вид , то криптограмма (возводим 123 в 13 степень и делим на 437. Остаток 386).

5. Определяем из выражения . , т.к. 13х61=793=2 .

6. Функция расшифровывания .

При своих уникальных способностях система RSA медленней, чем системы с секретным ключом.

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

Криптографические протоколы

Протокол- это последовательность шагов, которые предпринимают две или большее количество сторон для совместного решения некоторой задачи. Очередность при этом строго регламентирована.

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

Различают протоколы с арбитражем, с судейством и самоутверждающийся протокол.

Арбитр является незаинтересованным лицом, которому все участники доверяют. Введение арбитра в протокол увеличивает время, затрачиваемое на реализацию протокола. Участие его в сложных протоколах может быть узким местом в реализации. Можно разделить протокол на две части: в первой части - без арбитража, во второй - при разногласиях с ним. При этом роль арбитра будет играть судья. Самоутверждающий протокол не требует присутствия арбитра или судьи. Он строится конкретно под каждый частный случай. Универсализации он не подлежит. Под эти протоколы используют практически все известные способы применения асимметричной криптографии:

Протоколы открытого распределения ключей;

Протоколы открытого шифрования;

Протоколы электронной цифровой подписи;

Протоколы аутентификации;

Электронные деньги.

Несмотря на относительную простоту реализации криптографических процессов, характеристики алгоритмов шифрования настолько высоки, что решение задачи дешифрования сообщения без ключа – практически невыполнимо даже при наличии суперкомпьютера. Криптооперации достаточно ресурсоемки, что затрудняет или делает невозможным их применения в каналах с высокой скоростью передачи. Решить эти задачи позволяют специализированные вычислительные архитектуры – криптопроцессоры. Максимальная разрядность данных-1024, 2048. Процесс выполняет задачи модульной арифметики, генерацию и обработку случайных чисел, а остальные задачи решаются на центральном процессоре. Например, для процессора hi/fn6500 обеспечивается поддержка до 300 шифрованных сообщений IKE (Internet Key Encryption) к серверу в секунду, выполнение свыше 80 операций аутентификации с 1024- битовыми ключами в секунду. Криптопроцессоры-взломщики, к примеру DES-CRACER, обычно объединены в платы, платы в стойки и т.д. , всего 1536 чипов. Принятая концепция взлома – подбор ключей методом полного перебора. Каждый спецпроцессор может обрабатывать до 2.5 млн. ключей в секунду. Процессор принимает ключ и два 64-битовых блока шифртекста.

79

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]