Криптографические протоколы распределения ключей для групп

Прежде чем привести описание протокола


Прежде чем привести описание протокола аутентичного обмена для двух сторон A-DH, важно подчеркнуть, что существует множество разнообразных протоколов аутентичного обмена для выработки ключа, но одни из них не поддерживают двусторонний вклад в общий ключ (как в El Gamal), другие требуют большого числа сообщений или предполагают априорный доступ к сертифицированным долговременным ключам. Многие не обладают свойством PFS. Поэтому, наиболее подходящим протоколом для групп в соответствии с [1] считают A-DH. Необходимо также отметить, что протокол предполагает наличие у участников аутентичных открытых ключей друг друга. 

Протокол A-DH. Пусть p,q,G – величины, определенные выше и пусть a - образующий элемент G.

Предварительный этап. Пусть x1

и x2 – два целых числа, т. ч. 1£ x1 ,x2 £ q-1. Пусть M1

и M2 – два участника, которые хотят выработать общий ключ и пусть (x1

,ax1 mod p) и (x2 ,ax2 mod p)- секретные и открытые ключи M2

 и M2 соответственно. Открытые величины системы: (p,

q, a, ax1 ,ax2 ).

Этап 1:

M1  выбирает случайное r1 ÎR Zq* ,

M1 ® M2 : a r1 mod p.

Этап 2:

M2 выбирает случайное r2 ÎR Zq* и вычисляет K=F(a x1x2 mod p),

M2 ® M1 : a r2K mod p.

Когда M1 получает J=a r2K mod p, он вычисляет K-1 mod q и затем J r1K-1 mod p. Получаемый в результате ключ будет S2=a r2r1 mod p.

Функция F() может быть либо F(x)=x mod q либо F(x)=h(x), где h – хэш-функция : {0,1}*® Zq* .

Очевидно, что в полученном в результате ключе имеется вклад обоих сторон (т.к. r1 и r2 случайны и вырабатываются разными сторонами), т.е. протокол обладает контрибутивностью. В то же время обеспечивается аутентификация ключа, поскольку при его формировании участвуют открытые ключи обоих абонентов, которые переданы по аутентичному каналу.


Содержание раздела