Аппаратно-программные средства и методы защиты информации. Варлатая С.К - 181 стр.

UptoLike

181
1. Обе стороны заранее уславливаются о модуле N (N должен быть
простым числом) и примитивном элементе gеZ
N
, (1<g<N-1), который образует
все ненулевые элементы множества Z
N
, т.е. {g.g
2
.....g
N-1
=i}=z
N
-{0}.
Эти два целых числа N и g могут не храниться в секрете. Как правило, эти
значения являются общими для всех пользователей системы.
2. Затем пользователи А и В независимо друг от друга выбирают
собственные секретные ключи к
А
и к
в
(к
А
и к
в
-случайные большие целые числа,
которые хранятся пользователями А и В в секрете).
3. Далее пользователь А вычисляет открытый ключ
у
А
= g
kA
(mod N), а пользователь В - открытый ключ
Ув = g
kB
(mod N).
4. Затем стороны А и В обмениваются вычисленными значениями
открытых ключей у
А
и у
в
по незащищенному каналу. (Мы считаем, что все
данные, передаваемые по незащищенному каналу связи, могут быть
перехвачены злоумышленником.)
5. Далее пользователи А и В вычисляют общий секретный ключ,
используя следующие сравнения:
пользователь А: К = (у
в
)
kа
= (g
kв
)
kа
(mod N);
пользователь В: К'= (у
А
)
кв
= (g
kа
)
kв
(mod N).
При этом К=К', так как (g
kв
)
kа
= (д
kа
)
kв
(mod N).
Схема реализации алгоритма Диффи-Хеллмана показана на рис. 7.5.
Ключ К может использоваться в качестве общего секретного ключа
(ключа шифрования ключей) в симметричной криптосистеме.
Кроме того, обе стороны А и В могут шифровать сообщения, используя
следующее преобразование шифрования (типа RSA): C = E
K
(M) = М
k
(modN).
     1. Обе стороны заранее уславливаются о модуле N (N должен быть
простым числом) и примитивном элементе gеZN, (1