Криптографические протоколы
Категория реферата: Рефераты по информатике, программированию
Теги реферата: диплом государственного образца, республика реферат
Добавил(а) на сайт: Пантелеймон.
Предыдущая страница реферата | 1 2 3 4 5 6 7 | Следующая страница реферата
1.2 Используемые в протоколах термины и обозначения
Определим некоторые обозначения:
n - число участников протокола;
i, j - индексы для участников групп;
Mi - i-ый участник группы;
G - подгруппа Zp* порядка q, где p и q – простые;
q - порядок алгебраической группы;
a,g - образующие элементы в группе G ;
xi - долговременный секретный ключ Mi;
ri - случайное (секретное) число Î Zq , вырабатываемое Mi;
Sn - групповой ключ n участников;
Sn(Mi) - вклад Mi -го участника в групповой ключ;
Kij - долговременная секретная величина, выработанная Mi и Mj , i¹j.
Все вычисления проводятся в циклической группе G простого порядка q, которая является подгруппой Zp* порядка p, где p=kq+1 для некоторого kÎN[1].
Для того, чтобы предотвратить атаки методами подмены или утечки секретных величин, каждый участник протокола должен иметь возможность проверить, что те значения, которые он получает, являются элементами подгруппы.
Заметим, что p и q – общие для всех пользователей. Поскольку они вырабатываются один раз, необходимо качественно проработать процесс генерации, чтобы исключить (возможно умышленное) получение слабых или каких-то специфических простых чисел. В частности, рекомендуется использовать метод из стандарта США, описанный в FIPS 186 или же на основе метода, изложенного в стандарте ГОСТ Р34.10-94.
В таком контексте, возможности активного противника довольно сильно ограничены. Действительно, любое сообщение может быть представлено как aсmod p, где a -образующий элемент циклической подгруппы Zp* порядка q и c – некоторая экспонента. Получение c упирается в проблему дискретного логарифмирования.
2 Протоколы аутентичного обмена ключамиПростейшей схемой получения общего ключа является схема с доверенным сервером, в котором кто-либо посылает ему запрос на связь с другими абонентами, и сервер рассылает каждому абоненту общий ключ для связи внутри группы и список участников группы, зашифрованные ключом абонента. Но при такой схеме возникают сложности при высокой динамичности группы, обусловленные невозможностью одновременной обработки сервером большого числа запросов. Поэтому рассмотрим некоторые специально созданные протоколы для получения общего ключа участниками группы.
В рамках предварительного знакомства приведем аутентичный обмен для выработки ключа для двух сторон. Затем приведем расширение этого протокола для n сторон. Приводимые протоколы базируются на схеме Диффи-Хеллмана.
2.1 Протоколы A-DH, GDH.2 и A-GDH.2Прежде чем привести описание протокола аутентичного обмена для двух сторон 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* . |
Протокол GDH.2. Пусть M = {M1 , M2 …Mn} – множество пользователей, которым необходимо выработать общий ключ Sn . GDH.2 протокол выполняется за n шагов. На первой стадии (n-1 этапе) идет сбор информации от отдельных участников группы, а на второй стадии (n шаге) всем рассылается материал для вычисления общего ключа. Предварительный этап. Пусть p – простое и q – простой делитель p-1. Пусть G-циклическая подгруппа Zp* порядка q и a - образующий элемент G. Этап i: Mi выбирает случайное ri ÎR Zq* , Mi ® Mi+1 : a r1…ri, a r1…ri . Этап n: Mn выбирает случайное rn ÎR Zq* , Mn ®Каждому Mi : iÎ[1,n]. Общим ключом будет значение a r1…rn . |
Протокол A-GDH.2. Этапы c 1 по n-1 : такие же, как и в GDH.2. Этап n: Mn выбирает случайное rn ÎR Zq* , Mn ®Каждому Mi : ri . При получении Mi вычисляет a (r1…rnKin/ ri)Kin-1ri =a r1…rn = Sn . |
В этом протоколе каждый участник группы вырабатывает общий аутентичный ключ с Mn. Более того, если мы доверяем Mn , то каждый участник группы может быть уверен, что такой же ключ имеют и все участники группы, т.е. они выработали общий групповой ключ. Пример протокола для четырех участников приведен на рис. 1.
Очевидно, что протокол обладает свойством контрибутивности, поскольку в результирующем ключе Sn есть вклад i-го участника группы в виде степени ri.
Теорема 2.1.2 Протокол A-GDH.2 обеспечивает свойство PFS.
Док-во: Предположим, что долговременные ключи Kin, iÎ[1,n] скомпрометированы, тогда противник в состоянии вычислить подмножество V={aП(S)| SÌ{r1,…,rn}}. Но, как было показано в [2], по такому V не возможно восстановить сеансовый ключ Sn. #
Рассмотрим устойчивость описанного протокола к атакам по известным ключам.
Рекомендуем скачать другие рефераты по теме: решебник по химии, реферат методы.
Предыдущая страница реферата | 1 2 3 4 5 6 7 | Следующая страница реферата