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

3_Analiz_stoykosti_KS_RShA

.pdf
Скачиваний:
9
Добавлен:
25.06.2024
Размер:
1.36 Mб
Скачать

Атака Винера (Wiener)

При‮выборе‮малого‮d существенно‮упрощается‮алгоритм‮дешифрования‮ («малая»‮в‮данном‮случае‮означает,‮что d N )‮.‮Эта‮атака‮ основывается‮на‮следующей‮

Теореме.

Пусть‮p, q – простые‮числа,‮N=pq - модуль;‮d – секретный‮ключ;‮e – ключ‮

ed 1mod (N ) шифрования;‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮и‮пусть

Тогда‮значение‮d может‮быть‮легко‮вычислено‮как‮знаменатель одной‮из‮подходящих‮дробей‮‮k/d – разложения‮e/N в‮цепную‮дробь.

e

 

k

 

1

 

 

 

 

 

N

d

2d

2

Пусть N=160523347, e=60728973

Получаем следующие подходящие дроби

Вспомним, что

ed

1mod (N)

, то есть

ed k (N ) 1

Откуда следует, что

перебором, для каждой k/d подходящей дроби, вычисляется

(N ) (ed 1) / k и решается квадратное уравнение

x2 (N (N ) 1)x N 0

(см. следующий слайд)

Проверяется, является ли p простым множителем.

Предположим k/d=14/37, тогда

(N )

ed 1

 

60728973 37 1

160498000

k

 

14

 

 

 

 

 

 

 

(N )

ed 1

 

60728973 37 1

160498000

 

k

 

 

14

 

 

 

 

 

 

 

Значения p и q найдены успешно, т.к.

(Пояснение к предыдущему слайду)

Знание‮φ позволяет‮просто‮факторизовать‮ n,‮‮и,‮следовательно,‮задача‮ нахождения‮φ вычислительно‮эквивалентна‮задаче‮факторизации. (стр.‮150).

Утверждение. (Полезное‮для‮анализа‮стойкости‮криптосистем‮с‮открытым‮

ключом.)‮Пусть n p q , где

p q – простые числа.

p q .

Тогда

числа p и q можно найти, если известно n и

n p 1 q 1

 

 

 

 

Доказательство. Будем‮рассматривать‮p, q как‮пару‮неизвестных‮целых‮ чисел,‮для‮которых‮задано‮их‮произведение p q n и известна‮сумма,‮

поскольку‮ число.

p q n 1 n p q 1 p 1 q 1 2b

,‮где‮b – некоторое‮целое‮

Два‮числа,‮сумма‮которых‮равна 2b ,‮а‮произведение‮равно‮n,‮являются‮

очевидно‮корнями‮уравнения‮‮ x 2 2bx n 0 (теорема‮Виета).‮Тогда‮корни‮ квадратного‮уравнения‮и‮есть‮необходимые‮числа‮p и‮q:

. p b b 2 n 2 ; q b b 2 n 2

‮ Сложность‮решения‮этого‮уравнения – O log 3 n

Четвертая побочная атака.

Атака с использованием мультипликативного свойства шифра РША.

‮ Из‮описания‮КС‮РША‮следует,‮что‮для‮любых‮сообщений‮M1 , M2

M

M

 

e

M

e

M

e

C

C

 

mod n

 

1

2

2

1

2

 

 

 

 

1

 

 

‮ где‮C1 = M1e mod n, C2 = M2e mod n.‮Это‮свойство‮может‮ использовать‮злоумышленник.‮Предположим,‮что‮злоумышленник‮ E хочет‮дешифровать‮сообщение‮C,‮предназначенное‮для‮ пользователя‮A,‮и‮предположим,‮что‮A согласен‮дешифровать‮ любую‮другую‮криптограмму‮для‮E,‮помимо‮C (например,‮в‮другом‮ сеансе).‮‮‮‮‮

Тогда‮E может‮дешифровать‮C,‮действуя‮следующим‮образом:

1) E выбирает‮‮ x A дешифровать‮

Z n

~

;

C

 

и‮вычисляет‮

~

e

 

 

C C x

A

mod n

 

 

 

 

.‮Затем‮E просит‮

2) А выполняет‮эту‮просьбу – дешифрует:‮

~

~

M C d mod n ,‮затем‮

передает‮результат‮злоумышленнику‮E.‮Поскольку

~

~

M C

d

d

e

 

d

A

 

 

 

mod n Mx mod n

 

A C

A x

A

 

 

 

 

 

 

 

 

x

 

 

 

то‮Е‮может‮выполнить‮следующий‮шаг;

~

~

1

 

3) E,‮зная‮‮M , определяет‮ M M x

mod n

 

криптограмму‮С.

,‮т. е.‮дешифрует‮

Чтобы‮защититься‮от‮такой‮атаки,‮нельзя дешифровать чужие сообщения. Если‮все‮же‮от‮этого‮нельзя‮отказаться,‮то‮после‮ дешифрования‮надо‮проверить,‮что‮получилось – случайный‮или‮ осмысленный‮текст.‮Если‮получился‮случайный‮текст,‮то‮не‮ передавать‮по‮запросу‮дешифрованное‮сообщение‮E.

Пятая побочная атака.

Атака на систему РША, использующую общие модули для нескольких пользователей.

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

Рис. 1.‮Атака‮на‮КС‮РША,‮использующую‮общие‮модули

В‮этом‮случае‮любой‮пользователь‮i,‮имеющий‮ключи‮(ei , di ), способен‮определить‮любую‮другую‮пару‮ключей.‮Действительно,‮ знание‮своего‮секретного‮ключа‮di позволяет‮ему‮факторизовать‮n,‮т. е.‮ определить‮q и‮p . Действительно,‮знание‮‮своего‮секретного‮ключа‮позволяет‮найти‮ (n) ed 1mod (n)

То‮есть,‮зная‮p и‮q,‮‮легко‮найти‮ ( p q n 1 (n)

(см.‮детали‮в‮п.2.1.9‮учебного‮пособия).

Зная‮ ej (как‮открытый‮ключ‮другого,‮ j-го‮пользователя),‮а‮также‮

используя‮тот‮факт,‮что

e

j

d

j

1mod p 1 q 1

i -й‮пользователь‮

 

 

 

 

 

может‮вычислить‮секретный‮ключ‮ dj любого‮другого‮пользователя.

Шестая побочная атака. Циклическая атака.

Предположим,‮что‮известна‮лишь‮одна‮криптограмма‮C,‮полученная‮в‮ криптосистеме‮РША.‮Тогда‮злоумышленник‮может‮легко‮найти‮ее‮ преобразования:

C

 

C

e

1

mod n; C

 

C

e

2

mod n; C

 

C

e

3

mod n, ..., C

 

C

e

r

 

 

 

 

 

 

 

 

1

 

 

2

 

 

3

 

 

r

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

mod n

Эти‮вычисления‮он‮продолжает‮до‮тех‮пор,‮пока‮результат‮не‮совпадет‮ с‮исходной‮криптограммой‮C.‮(Это‮событие‮должно‮произойти‮рано‮ или‮поздно‮на‮каком-то‮шаге‮k,‮так‮как‮шифрование – это‮по‮существу‮ перестановка‮чисел‮{0,‮1,‮2,‮…‮,‮n – 1}.)‮Тогда‮он‮может‮найти‮ сообщение‮как‮ M C ek 1 mod n ,‮поскольку‮ M e C ek C .

Однако‮в‮[3]‮доказывается,‮что‮такой‮метод‮дает‮и‮факторизацию‮ числа‮n,‮и‮поэтому‮при‮больших‮n этот‮подход‮не‮лучше‮прямого‮ метода‮факторизации‮модуля‮КС‮РША.

Седьмая побочная атака. Отсутствие шифрования.

Этот‮случай‮возможен,‮если‮в‮результате‮шифрования‮получаем‮ открытое‮сообщение,‮т. е.‮M e mod n = M.‮Такое‮условие‮должно‮ выполниться‮хотя‮бы‮для‮одного‮из‮сообщений,‮например,‮для‮ сообщений‮‮M = 0, 1, n – 1 . На‮самом‮деле‮таких‮сообщений,‮которые‮

вообще! не‮шифруются‮[3],‮существует‮в‮точности‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮

[1 + gcd (e – 1, p – 1)][1 + gcd (e – 1, q – 1)] .‮Их‮число‮всегда‮не‮‮‮‮

менее‮9.‮Однако‮при‮случайном‮выборе‮q и‮p доля‮таких‮сообщений‮ будет‮ничтожно‮мала‮и‮они‮почти‮никогда‮не‮встретятся‮на‮практике.

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