Все о геологии :: на главную страницу! Геовикипедия 
wiki.web.ru 
Поиск  
  Rambler's Top100 Service
 Главная страница  Конференции: Календарь / Материалы  Каталог ссылок    Словарь       Форумы        В помощь студенту     Последние поступления
   Геология | Курсы лекций
 Обсудить в форуме  Добавить новое сообщение
Вперед Вверх Назад Содержание Предметный указатель
Вперед: 6.2.2 Протоколы для конференц-связи Вверх: 6.2.1 Протоколы типа Диффи - Хеллмана Назад: 6.2.1.2 Протоколы выработки сеансовых ключей   Содержание   Предметный указатель


6.2.1.3 Протоколы, основанные на идентификационной информации

Наряду с использованием сертифицированного справочника для аутентификации абонентов в протоколах распределения ключей используется также метод, основанный на идентификационной информации (identity-based). Каждый абонент A при регистрации в сети связи получает идентификатор $ I_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}$ и соответствующее ему значение $ s_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}$, для вычисления которого по $ I_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}$ требуется инвертировать некоторую (предположительно одностороннюю) функцию. Идентификатор $ I_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}$ публикуется в общедоступном сертифицированном справочнике, а значение $ s_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}$ хранится абонентом A в секрете. В протоколе распределения ключей, основанном на идентификационной информации, абонент A использует $ s_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}$ при вычислении своего сообщения, а любой другой абонент, зная $ I_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}$, может убедиться, что сообщение действительно пришло от A.

Приведем описания двух протоколов, основанных на идентификационной информации. В них $ s_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}$ является подписью $ I_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}$ согласно некоторым схемам электронной подписи (см. гл. 4).


Протокол Гюнтера

Этот протокол появился в работе [G] (см. также [Bur]). Пусть $ p$ -- большое простое число, а $ g$ -- некоторый порождающий группы $ \mathbb{Z}_p*$, известные как центру доверия, так и всем абонентам сети связи. Центр доверия выбирает свой секретный ключ $ x\in\mathbb{Z}_{p-1}\setminus\{1\}$ и сообщает абонентам открытый ключ $ y=g^x\bmod p$. При регистрации абонента (скажем, A) центр доверия вычисляет подпись его идентификатора $ I_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}$ по схеме Эль Гамаля (см. подраздел 4.2.1, а также [EG85]), т. е. $ r_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}=g...
...athchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}}\bmod p$ и $ s_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}=u...
...choice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}})\bmod(p-1)$, где $ u_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}\in_{\mbox{\tiny\rm R}}\mathbb{Z}_{p-1}*$ секретно, а $ h$ -- некоторая хэш-функция. После этого центр доверия передает $ s_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}$ (секретный ключ A) только абоненту A, а $ r_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}$ (открытый ключ A) помещает в общедоступный сертифицированный справочник. Теперь если абоненты A и B хотят выработать общий секретный ключ, они выполняют следующие действия:     1. A выбирает $ e_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}\in_{\mbox{\tiny\rm R}}\mathbb{Z}_{p-1}$, вычисляет $ f_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}=r...
...athchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}}\bmod p$ и посылает его вместе с $ I_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}$ участнику B, сохраняя $ e_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}$ в секрете.

    2. B выбирает $ e_{\mathchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}\in_{\mbox{\tiny\rm R}}\mathbb{Z}_{p-1}$, вычисляет $ f_{\mathchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}=r...
...athchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}}\bmod p$ и посылает его вместе с $ I_{\mathchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}$ участнику A, сохраняя $ e_{\mathchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}$ в секрете.

    3. A вычисляет $ k_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}=f...
...athchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}}\bmod p$.

    4. B вычисляет $ k_{\mathchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}=f...
...athchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}}\bmod p$. Из сравнений

$\displaystyle \left(g^{h(I_{\mathchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny...
...m B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}}\mkern5mu({\rm mod}\,\,p)$    

и


$\displaystyle \left(g^{h(I_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny...
...m A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}}\mkern5mu({\rm mod}\,\,p)$    

следует, что $ k_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}=k_{\mathchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}$ является искомым общим секретным ключом.


Протокол типа Диффи -- Хеллмана, основанный на идентификационной информации

Описание этого протокола, предложенного в работе Окамото и Танаки [OT], взято из работы Л. М. Ухлинова [У2]. Этот протокол разработан (и реализован) для интеллектуальных карточек. Пусть центром доверия выбраны различные большие простые числа $ p$ и $ q$, числа $ e$ и $ d$ такие, что $ ed\equiv 1\mkern5mu({\rm mod}\,\,(p-1)(q-1))$, и элемент $ g\in\mathbb{Z}_n*$ достаточно большого порядка, где $ n=pq$. Для каждого абонента A центр доверия вычисляет $ s_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}=I...
...thchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}^d\bmod n$, где $ I_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}$ -- идентификатор A, и сообщает $ s_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}$, $ n$, $ g$ и $ e$ этому абоненту, сохраняя $ d$, $ p$ и $ q$ в секрете. Отметим, что $ s_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}$ является подписью $ I_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}$ по схеме RSA (см. главу 4, а также [RSA]). Считается также, что всем абонентам известна некоторая трехместная хэш-функция $ f$. Протокол заключается в следующем:     1. A выбирает $ x_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}\in_{\mbox{\tiny\rm R}}\{0,1,\ldots,n-1\}$, вычисляет $ y_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}=g...
...athchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}}\bmod n$, $ c_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}=f...
...},I_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}})$, $ z_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}=s...
...athchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}}\bmod n$, где $ t_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}$ -- текущее время, и посылает $ y_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}$, $ z_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}$, $ t_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}$, $ I_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}$ абоненту B, сохраняя $ x_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}$ в секрете.

    2. B вычисляет $ c_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}=f...
...},I_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}})$ и проверяет истинность сравнения $ I_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}} y...
... A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}^e\mkern5mu({\rm mod}\,\,n)$. Если оно истинно, то сообщение, пришедшее от A, признается подлинным. В этом случае B выбирает $ x_{\mathchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}\in_{\mbox{\tiny\rm R}}\{0,1,\ldots,n-1\}$, вычисляет $ y_{\mathchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}=g...
...athchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}}\bmod
n$, $ c_{\mathchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}=f...
...},I_{\mathchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}})$, $ z_{\mathchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}=s...
...athchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}}\bmod
n$, где $ t_{\mathchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}$ -- текущее время, и посылает $ y_{\mathchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}$, $ z_{\mathchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}$, $ t_{\mathchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}$, $ I_{\mathchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}$ абоненту A, сохраняя $ x_{\mathchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}$ в секрете.

    3. A вычисляет $ c_{\mathchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}=f...
...},I_{\mathchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}})$ и проверяет истинность сравнения $ I_{\mathchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}} y...
... B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}^e\mkern5mu({\rm mod}\,\,n)$. Если оно истинно, то сообщение, пришедшее от B, признается подлинным. В этом случае A вычисляет $ k_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}=y...
...athchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}}\bmod n$.

    4. B вычисляет $ k_{\mathchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}=y...
...athchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}}\bmod n$. Ясно, что $ k_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}=g...
...
n=k_{\mathchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}$. Поэтому $ k_{\mathchoice{\mbox{\rm A}}{\mbox{\rm A}}{\mbox{\tiny A}}{\mbox{\SMALL A}}}=k_{\mathchoice{\mbox{\rm B}}{\mbox{\rm B}}{\mbox{\tiny B}}{\mbox{\SMALL B}}}$ является искомым общим секретным ключом.


Вперед Вверх Назад Содержание Предметный указатель
Вперед: 6.2.2 Протоколы для конференц-связи Вверх: 6.2.1 Протоколы типа Диффи - Хеллмана Назад: 6.2.1.2 Протоколы выработки сеансовых ключей   Содержание   Предметный указатель


Проект осуществляется при поддержке:
Геологического факультета МГУ,
РФФИ
   

TopList Rambler's Top100