Протоколы MTI

Поделись знанием:
(перенаправлено с «MTI»)
Перейти к: навигация, поиск

Протоколы MTI — семейство протоколов распределения ключей, разработанные Т. Мацумото (T. Matsumoto), И. Такасита (Y. Takashita) и Х. Имаи (H. Imai) и названные по именам авторов. Протоколы MTI делятся на три класса протоколов: MTI/A, MTI/B, MTI/C.[1]

Протокол распределения ключей решает задачу распределения секретных ключей шифрования между общающимися сторонами. Множество таких протоколов делится на следующие три типа:[2]

  1. протоколы обмена уже сгенерированными ключами;
  2. протоколы совместной выработки общего ключа (открытое распределение ключей);
  3. протоколы предварительного распределения ключей.

Протоколы MTI относятся к протоколам открытого распределения ключей.

В основе протоколов открытого распределения ключей лежит обмен сообщениями между пользователями, по результатам которого каждый пользователь вычисляет секретный сеансовый ключ. При этом вычисление сеансового ключа до обмена сообщениями невозможно. Поэтому данные протоколы еще называют[3] динамическими протоколами распределения ключей в отличие от статических протоколов, в которых ключи известны еще до самого сеанса связи. Кроме того, создание сеансовых ключей в протоколах открытого распределения требует от пользователей знания только открытых ключей, т.е. позволяет паре пользователей системы выработать общий секретный ключ, не обмениваясь закрытыми ключами. Именно это привело к тому, что такие протоколы сразу же после своего появления в 1976 году привлекли к себе внимание международного сообщества.






История

Идея построения протоколов открытого распределения ключей была впервые высказана Уитфилдом Диффи (Whitfield Diffie) и Мартином Хеллманом (Martin Hellman) на «Национальной Компьютерной Конференции» в июне 1976 года. И в ноябре 1976 года ими же в работе «Новые направления в криптографии» (англ. New Directions in Cryptography) был предложен первый протокол открытого распределения ключейОшибка Lua : attempt to index local 'entity' (a nil value)., названный по именам авторов (протокол Диффи-Хеллмана).

Первый в своем роде, протокол Диффи-Хеллмана был уязвим к некотором типам атак, в частности, к атаке «человек посередине»[2]. Для решения данной проблемы необходимо было обеспечить пользователей механизмом аутентификации. Таким механизмом стал опубликованный в августе 1977 года в колонке «Математические игры» журнала Scientific American алгоритм асимметричного шифрования RSA[4], который позволил решить проблему общения через открытый канал.

В 1984 году Тахером Эль-Гамалем был предложен усовершенствованный протокол Диффи-Хеллмана с возможностью односторонней аутентификации, когда только одна из общающихся сторон может проверить подлинность другой[5]. В отличие от RSA протокол Эль-Гамаля не был запатентован и, поэтому, стал более дешевой альтернативой, так как не требовалась оплата взносов за лицензию. Считается, что алгоритм попадает под действие патента Диффи-Хеллмана.

В феврале 1986 года Т. Мацумото, И. Такашима и Х. Имаи представили решение проблемы взаимной аутентификации без использования RSA[6]. В разработанных ими протоколах MTI выражение для вычисления общего секретного ключа содержит как открытые, так и закрытые ключи легальных пользователей. Это решение позволяет провести аутентификацию одновременно с вычислением общего секретного ключа (нелегальный пользователь не может вычислить значение секретного ключа).

На настоящий момент протоколы MTI включены в стандарт ISO/IEC 11770-3[1].

Описание протоколов MTI[1]

Рассмотрим процесс обмена информацией между сторонами A и B. Ниже представлены обозначения, которые будут использованы при описании работы протоколов MTI.

<math>p</math> большое простое число (не менее 1024 бит).
<math>q</math> простое число (порядка 160 бит), являющееся делителем числа <math>p-1</math>.
<math>G</math> подгруппа группы <math>\Z_p^{*}</math> (обычно порядка <math>q</math>, но иногда совпадает с <math>\Z_p^{*}</math>)
<math>g</math> порождающий элемент подгруппы <math>G</math>
<math>x_A</math>, <math>x_B</math> закрытые ключи сторон A и B
<math>y_A</math>, <math>y_B</math> открытые ключи сторон A и B : <math>y_A = g^{x_A}\ mod\ p</math>, <math>\ y_B = g^{x_B}\ mod\ p</math>.
<math> r_A </math>, <math>r_B</math> случайные целые числа, обычно той же величины, что и порядок группы <math>G</math>, выбираемые сторонами A и B соответственно
<math> m_A </math>, <math>m_B</math> сообщения, отправляемые от A к B и от B к A соответственно.
<math> K_{AB} </math> секретный сеансовый ключ, вычисленный сторонами A и B
<math> x \in_R X </math> элеменет <math> x </math> выбирается случайно из множества <math> X </math>
<math> (a,b) </math> наибольший общий делитель чисел <math> a </math> и <math> b </math>

Все вычисления в дальнейшем проводятся в группе <math>\Z_p^{*}</math>.

MTI/A(0)[7]

Алгоритм работы

  1. Сторона <math>A</math> выбирает случайное число <math>r_A \in_R \Z_q^*</math> и отправляет <math>B</math> сообщение <math>m_A = g^{r_A}</math>
  2. Сторона <math>B</math> выбирает случайное число <math>r_B \in_R \Z_q^*</math> и отправляет <math>A</math> сообщение <math>m_B = g^{r_B}</math>
  3. Сторона <math>A</math> вычисляет сеансовый ключ: <math>K_{AB} = y_B^{r_A} m_B^{x_A} = g^{x_A r_B + x_B r_A}</math>
  4. Сторона <math>B</math> вычисляет сеансовый ключ: <math>K_{AB} = y_A^{r_B} m_A^{x_B} = g^{x_A r_B + x_B r_A}</math>


Проводимые вычисления

<math>A \colon K_{AB} = y_B^{r_A} m_B^{x_A} = (g^{x_B})^{r_A} (g^{r_B})^{x_A} = g^{x_A r_B + x_B r_A}</math>
<math>B \colon K_{AB} = y_A^{r_B} m_A^{x_B} = (g^{x_A})^{r_B} (g^{r_A})^{x_B} = g^{x_A r_B + x_B r_A}</math>

MTI/B(0)

Алгоритм работы

  1. Сторона <math>A</math> выбирает случайное число <math>r_A \in_R \Z_q^*</math> и отправляет <math>B</math> сообщение <math>m_A = y_B^{r_A}</math>
  2. Сторона <math>B</math> выбирает случайное число <math>r_B \in_R \Z_q^*</math> и отправляет <math>A</math> сообщение <math>m_B = y_A^{r_B}</math>
  3. Сторона <math>A</math> вычисляет сеансовый ключ: <math>K_{AB} = m_B ^{{x_A}^{-1}}g^{r_A} = g^{r_A+r_B}</math>
  4. Сторона <math>B</math> вычисляет сеансовый ключ: <math>K_{AB} = m_A ^{{x_B}^{-1}}g^{r_B} = g^{r_A+r_B}</math>


Прводимые вычисления

<math>K_{AB} = m_B ^{x_A^{-1}} g^{r_A} = (y_A ^{r_B })^{x_A ^{-1}} g^{r_A} = (g^{{x_A}{r_B}})^{x_A^{-1}} g^{r_A} = g^{r_A+r_B}</math>
<math>K_{AB} = m_A ^{x_B ^{-1}} g^{r_B} = (y_B ^{r_A})^{x_B ^{-1}} g^{r_B} = (g^{{x_B}{r_A}})^{x_B^{-1}} g^{r_B} = g^{r_A+r_B}</math>

MTI/C(0)[7]

Алгоритм работы

  1. Сторона <math>A</math> выбирает случайное число <math>r_A \in_R \Z_q^*</math> и отправляет B сообщение <math>m_A = y_B ^{r_A}</math>
  2. Сторона <math>B</math> выбирает случайное число <math>r_B \in_R \Z_q^*</math> и отправляет A сообщение <math>m_B = y_A ^{r_B }</math>
  3. Сторона <math>A</math> вычисляет сеансовый ключ: <math>K_{AB} = m_B ^{x_A ^{-1} r_A} = g^{r_A r_B }</math>
  4. Сторона <math>B</math> вычисляет сеансовый ключ: <math>K_{AB} = m_A ^{x_B ^{-1} r_B } = g^{r_A r_B }</math>


Проводимые вычисления

<math>K_{AB} = m_B^{x_A^{-1} r_A} = (y_A^{r_B})^{x_A^{-1} r_A} = (g^{x_A r_B})^{x_A^{-1} r_A} = g^{r_A r_B}</math>
<math>K_{AB} = m_A^{x_B^{-1} r_B} = (y_B^{r_A})^{x_B^{-1} r_B} = (g^{x_B r_A})^{x_B^{-1} r_B} = g^{r_A r_B}</math>

MTI/A(k)

Алгоритм работы

  1. Сторона <math>A</math> выбирает случайное число <math>r_A \in_R \Z_q^*</math> и отправляет B сообщение <math>m_A = g^{x_A^k r_A}</math>
  2. Сторона <math>B</math> выбирает случайное число <math>r_B \in_R \Z_q^*</math> и отправляет A сообщение <math>m_B = g^{x_B^k r_B}</math>
  3. Сторона <math>A</math> вычисляет сеансовый ключ: <math>K_{AB} = y_B^{x_A^k r_A} m_B^{x_A} = g^{x_B x_A^k r_A + x_A x_B^k r_B}</math>
  4. Сторона <math>B</math> вычисляет сеансовый ключ: <math>K_{AB} = y_A^{x_B^k r_B} m_A^{x_B} = g^{x_A x_B^k r_B + x_B x_A^k r_A}</math>


Проводимые вычисления

<math>A \colon K_{AB} = y_B^{x_A^k r_A} m_B^{x_A} = (g^{x_B})^{x_A^k r_A} (g^{x_B^k r_B})^{x_A} = g^{x_A x_B^k r_B + x_B x_A^k r_A}</math>
<math>B \colon K_{AB} = y_A^{x_B^k r_B} m_A^{x_B} = (g^{x_A})^{x_B^k r_B} (g^{x_A^k r_A})^{x_B} = g^{x_A x_B^k r_B + x_B x_A^k r_A}</math>

MTI/B(k)

Алгоритм работы

  1. Сторона <math>A</math> выбирает случайное число <math>r_A \in_R \Z_q^*</math> и отправляет <math>B</math> сообщение <math>m_A = y_B^{x_A^k r_A}</math>
  2. Сторона <math>B</math> выбирает случайное число <math>r_B \in_R \Z_q^*</math> и отправляет <math>A</math> сообщение <math>m_B = y_A^{x_B^k r_B}</math>
  3. Сторона <math>A</math> вычисляет сеансовый ключ: <math>K_{AB} = m_B^{x_A^{-1}}g^{x_A^k r_A} = g^{x_A^k r_A+x_B^k r_B}</math>
  4. Сторона <math>B</math> вычисляет сеансовый ключ: <math>K_{AB} = m_A^{x_B^{-1}}g^{x_B^k r_B} = g^{x_A^k r_A+x_B^k r_B}</math>


Проводимые вычисления

<math>K_{AB} = m_B^{x_A^{-1}}g^{x_A^k r_A} = (y_A^{x_B^k r_B})^{x_A^{-1}}g^{x_A^k r_A} = (g^{x_A x_B^k r_B})^{x_A^{-1}}g^{x_A^k r_A} = g^{x_A^k r_A + x_B^k r_B}</math>
<math>K_{AB} = m_A^{x_B^{-1}}g^{x_B^k r_B} = (y_B^{x_A^k r_A})^{x_B^{-1}}g^{x_B^k r_B} = (g^{x_B x_A^k r_A})^{x_B^{-1}}g^{x_B^k r_B} = g^{x_A^k r_A + x_B^k r_B}</math>

MTI/C(k)

Алгоритм работы

  1. Сторона <math>A</math> выбирает случайное число <math>r_A \in_R \Z_q^*</math> и отправляет <math>B</math> сообщение <math>m_A = y_B^{x_A^k r_A}</math>
  2. Сторона <math>B</math> выбирает случайное число <math>r_B \in_R \Z_q^*</math> и отправляет <math>A</math> сообщение <math>m_B = y_A^{x_B^k r_B}</math>
  3. Сторона <math>A</math> вычисляет сеансовый ключ: <math>K_{AB} = m_B^{x_A^{-1}x_A^k r_A} = g^{x_A^k r_Ax_B^k r_B}</math>
  4. Сторона <math>B</math> вычисляет сеансовый ключ: <math>K_{AB} = m_A^{x_B^{-1}x_B^k r_B} = g^{x_A^k r_Ax_B^k r_B}</math>


Проводимые вычисления

<math>K_{AB} = m_B^{x_A^{-1} x_A^k r_A} = (y_A^{x_B^k r_B})^{x_A^{-1} x_A^k r_A} = (g^{x_A x_B^k r_B})^{x_A^{-1} x_A^k r_A} = g^{x_A^k r_A x_B^k r_B}</math>
<math>K_{AB} = m_A^{x_B^{-1} x_B^k r_B} = (y_B^{x_A^k r_A})^{x_B^{-1} x_B^k r_B} = (g^{x_B x_A^k r_A})^{x_B^{-1} x_B^k r_B} = g^{x_A^k r_A x_B^k r_B}</math>

Анализ протоколов MTI[3]

Таблица протоколов MTI
Протокол <math>m_A</math> <math>m_B</math> <math>K_A</math> <math>K_B</math> <math>K_{AB}</math>
MTI/A(0) <math>g^{r_A}</math> <math>g^{r_B}</math> <math>y_B^{r_A} m_B^{x_A}</math> <math>y_A^{r_B} m_A^{x_B}</math> <math>g^{x_A r_B + x_B r_A}</math>
MTI/B(0) <math>y_B^{r_A}</math> <math>y_A^{r_B}</math> <math>m_B^{x_A^{-1}}g^{r_A}</math> <math>m_A^{x_B^{-1}}g^{r_B}</math> <math>g^{r_A+r_B}</math>
MTI/C(0) <math>y_B^{r_A}</math> <math>y_A^{r_B}</math> <math>m_B^{x_A^{-1} r_A}</math> <math>m_A^{x_B^{-1} r_B}</math> <math>g^{r_A r_B}</math>
MTI/A(k) <math>g^{x_A^k r_A}</math> <math>g^{x_B^k r_B}</math> <math>y_B^{x_A^k r_A}m_B^{x_A}</math> <math>y_A^{x_B^k r_B}m_A^{x_B}</math> <math>g^{x_A x_B^k r_B + x_B x_A^k r_A}</math>
MTI/B(k) <math>y_B^{x_A^k r_A}</math> <math>y_A^{x_B^k r_B}</math> <math>m_B^{x_A^{-1}}g^{x_A^k r_A}</math> <math>m_A^{x_B^{-1}}g^{x_B^k r_B}</math> <math>g^{x_A^k r_A+x_B^k r_B}</math>
MTI/C(k) <math>y_B^{x_A^k r_A}</math> <math>y_A^{x_B^k r_B}</math> <math>m_B^{x_A^{-1}x_A^k r_A}</math> <math>m_A^{x_B^{-1}x_B^k r_B}</math> <math>g^{x_A^k r_Ax_B^k r_B}</math>
  1. Протоколы MTI/A и MTI/B требуют от каждого пользователя вычисления трех экспонент, тогда как протоколы MTI/C требуют вычисления только двух экспонент. Протокол MTI/C(1) имеет также дополнительное преимущество, состоящее в том, что не требуется вычислять обратные элементы для <math>x_A</math> и <math>x_B</math>. С другой стороны эти значения не меняются в течение всего сеанса связи и поэтому могут быть рассчитаны заранее.
  2. Все стороны в протоколах MTI проводят аналогичные операции, причем работа протоколов не зависит от того, в каком порядке посылаются сообщения от одной стороны к другой.
  3. Протоколы MTI/B и MTI/C требуют знания открытых ключей других сторон, для чего может потребоваться дополнительным обмен сообщениями (если информация об открытых ключах не помещается в отправляемых по сети сообщениях). Протоколы MTI/A знания открытых ключей не требуют, что позволяет избежать дополнительных передач и временных задержек.
  4. Все три класса протоколов обеспечивают взаимную неявную аутентификацию ключей (mutual implicit key authentication), но не обеспечивают подтверждения правильности ключей (key confirmation) и аутентификацию сторон (entitiy authentication).
Сравнение протоколов распределения ключей
Протокол Аутентификация ключа Аутентификация источников Подтверждение ключа Число сообщений
протокол Диффи-Хеллмана отсутствует отсутствует отсутствует 2
протокол Эль-Гамаля односторонняя отсутствует отсутствует 1
MTI/A взаимная неявная отсутствует отсутствует 2
MTI/B,C взаимная неявная отсутствует отсутствует 2
STS взаимная явная взаимная отсутствует 3

Атаки на протоколы MTI

Протоколы MTI противостоят пассивным атакам, однако уязвимы к активным атакам[3]. Ниже представлены примеры активных атак на протоколы MTI.

Атака по малой подгруппе на протоколы MTI/C[1]

Атака по подгруппе (Small Subgroup Attack) применяется к классу протоколов MTI/C в том случае, если группа <math> G </math> совпадает с группой <math> Z_p^* </math>, как и предполагается в оригинальном протоколе. Предполагается, что криптоаналитику <math> E </math> известно разложение числа <math> p - 1 </math> на простые множители. Пусть <math> s </math> — наименьший простой множитель в разложении числа <math> p - 1 </math>. Обозначим <math> w = (p - 1) / s </math>. Атака заключается в возведении всех сообщений в степень <math> w </math>, что переводит передаваемые элементы в малую подгруппу <math> G' </math> группы <math> G </math>.

Действительно, <math> A </math> и <math> B </math> обмениваются сообщениями вида <math> g^r </math>. Возведение элемента <math> g^r </math> в степень <math> w </math>, дает порождающий элемент <math> g^{wr} </math> подгруппы <math> G' </math> порядка <math> \frac{p-1}{(wr,p-1)} </math>. При этом этот порядок равен <math> 1 </math> либо когда <math> s = 1 </math> и, соответственно, <math> w = p - 1 </math>, либо когда <math> r </math> в своем разложении на простые множители содержит число <math> s </math>, т.е. <math> (r,s) = s </math>. Во всех остальных случаях порядок подгруппы <math> G' </math> будет равен <math> s </math>.

Ниже описан процесс атаки на протокол MTI/C(0). Криптоаналитик <math> E </math> находится между сторонами <math> A </math> и <math> B </math> (man-in-the-middle).

  1. Сторона <math> A </math> выбирает случайное число <math> r_A \in_R Z_q^* </math> и отправляет <math> B </math> сообщение <math> m_A = y_B ^ { r_A } </math>
  2. Криптоаналитик <math> E </math> перехватывает сообщение от <math> A </math> и отправляет <math> B </math> сообщение <math> m_A ^ w = y_B ^ { r_A w } </math>
  3. Сторона <math> B </math> выбирает случайное число <math> r_B \in_R Z_q^* </math> и отправляет <math> A </math> сообщение <math> m_B = y_A ^ { r_B } </math>
  4. Криптоаналитик <math> E </math> перехватывает сообщение от <math> B </math> и отправляет <math> A </math> сообщение <math> m_B ^ w = y_A ^{ r_B w } </math>
  5. Сторона <math> A </math> вычисляет сеансовый ключ: <math> K_{AB} = m_B^{x_A^{-1} r_A} = g^{r_A r_B w}</math>
  6. Сторона <math> B </math> вычисляет сеансовый ключ: <math> K_{AB} = m_A^{x_B^{-1} r_B} = g^{r_A r_B w} </math>

Полученный секретный сеансовый ключ <math> K_{AB} </math>, как и полученные сообщения, является элементом малой подгруппы <math> G'</math> группы <math> G </math>. Поэтому криптоаналитик <math> E </math> может найти ключ <math> K_{AB} </math> полным перебором, проверяя элементы подгруппы <math> G' </math> в качестве ключей в общении между <math> A </math> и <math> B </math>. При этом чем меньше множитель <math> s </math>, тем быстрее проходит атака.

Атака на подгруппу может быть предотвращена путём выбора подгруппы <math> G </math> группы <math> Z_p^* </math> простого порядка <math> q </math>. Т.к. при этом длина <math> q </math> составляет порядка 160 бит, то полный перебор оказывается слишком сложной задачей для криптоаналитика <math> E </math>. Так же необходимо проверять, что полученные в сообщениях элементы лежат в группе <math> G </math> и не равны единице.

Атака с неизвестным общим ключом[1][3][8]

Атака с неизвестным общим ключом требуют от криптоаналитика <math>E</math> получить сертификат на долговременный открытый ключ <math>y_E</math>, который связан с открытым ключом стороны <math>A</math> по формуле <math>\colon y_E = y_A^{x_E} = g^{x_A x_E}</math>. Это значит, что <math>E</math> не знает секретный ключ <math>x_A x_E</math>, соответствующий открытому ключу <math>y_E</math>.

Атака с неизвестным общим ключом осуществляется путём выполнения следующей последовательности действий.

  1. Сторона <math>A</math> выбирает случайное число <math>r_A \in_R Z_q^*</math> и отправляет <math>B</math> сообщение <math>m_A = y_B^{r_A}</math>
  2. Криптоаналитик <math>E</math> передает сообщение <math>y_B^{r_A}</math> от <math>A</math> к <math>B</math> в неизменном виде.
  3. Сторона <math>B</math> выбирает случайное число <math>r_B \in_R Z_q^*</math> и отправляет <math>E</math> сообщение <math>y_E^{r_B}</math>
  4. Криптоаналитик <math>E</math> получает сообщение от <math>B</math> и отправляет <math>A</math> сообщение <math>y_E^{r_B x_E^{-1}}</math>
  5. Сторона <math>A</math> вычисляет сеансовый ключ: <math>K_{AB} = (y_E^{r_B x_E^{-1}})^{x_A ^{-1}}g^{r_A } = g^{r_A +r_B}</math>
  6. Сторона <math>B</math> вычисляет сеансовый ключ: <math>K_{AB} = (y_B^{r_A})^{{x_B}^{-1}}g^{r_A} = g^{r_A +r_B}</math>

Секретные ключи, вычисленные сторонами <math>A</math> и <math>B</math>, одинаковы и равны <math>g^{r_A +r_B}</math>. При этом <math>A</math> считает, что разделяет его с <math>B</math>, в то время как <math>B</math> считает, что разделяет ключ с <math>E</math>.

Несмотря на то, что <math>E</math> не в состоянии вычислить секретный сеансовый ключ <math>K_{AB}</math> без дополнительной информации, сторона <math>E</math> тем не менее приводит <math>B</math> к ошибочному мнению.

Чтобы избежать данной атаки, необходимо потребовать от сертификационных центров проводить проверку того, что стороны, запрашивающие сертификат на некоторый открытый ключ <math>y_E</math>, знают соответствующий закрытый ключ <math>x_E</math>.

Напишите отзыв о статье "Протоколы MTI"

Примечания

  1. 1 2 3 4 5 Colin Boyd, Anish Mathuria. 5.3 MTI Protocols // Protocols for Authentication and Key Establishment. — Springer, 2003. — С. 147-155. — 321 с. — ISBN 3540431071.
  2. 1 2 Алферов А.П., Зубов А.Ю., Кузьмин А.С., Черемушкин А.В. Глава 15. Протоколы распределения ключей // Основы криптографии. — 2-е, испр. — Москва: Гелиос АРВ, 2002. — С. 378, 387-396. — 480 с. — 3000 экз. — ISBN 5-85438-025-0.
  3. 1 2 3 4 Menezes, Oorschot, Vanstone, 1996.
  4. Martin Gardner. Mathematical Games: A new kind of cipher that would take millions of years to break (англ.) // Scientific American. — 1977.
  5. Taher ElGamal (1985). «[caislab.kaist.ac.kr/lecture/2010/spring/cs548/basic/B02.pdf A Public-Key Cryptosystem and a Signature Scheme Based on Discrete Logarithms]». IEEE Transactions on Information Theory 31 (4): 469-472. DOI:10.1109/TIT.1985.1057074.
  6. Tsutomu Matsumoto, Youichi Takashima, and Hideki Imai. On seeking smart public-key-distribution systems. // Transactions of the IECE of Japan. — February 1986. — Т. E69. — С. 99–106.
  7. 1 2 Ratna Dutta, Rana Barua [eprint.iacr.org/2005/289.pdf Overview of Key Agreement Protocols]. — С. 9-10.
  8. Черемушкин А. В. [www.lib.tsu.ru/mminfo/000349342/P_02/image/P_02_115.pdf Криптографические протоколы: основные свойства и уязвимости] // Прикладная дискретная математика : Приложение. — 2009. — № 2. — С. 115-150. [web.archive.org/web/20131103114258/www.lib.tsu.ru/mminfo/000349342/P_02/image/P_02_115.pdf Архивировано] из первоисточника 3 ноября 2013.

Литература

  • Черемушкин А. В. [www.lib.tsu.ru/mminfo/000349342/P_02/image/P_02_115.pdf Криптографические протоколы: основные свойства и уязвимости] // Прикладная дискретная математика : Приложение. — 2009. — № 2. — С. 115-150. [web.archive.org/web/20131103114258/www.lib.tsu.ru/mminfo/000349342/P_02/image/P_02_115.pdf Архивировано] из первоисточника 3 ноября 2013.
  • Алферов А.П., Зубов А.Ю., Кузьмин А.С., Черемушкин А.В. Глава 15. Протоколы распределения ключей // Основы криптографии. — 2-е, испр. — Москва: Гелиос АРВ, 2002. — С. 378, 387-396. — 480 с. — 3000 экз. — ISBN 5-85438-025-0.
  • Ratna Dutta, Rana Barua [eprint.iacr.org›2005/289.pdf Overview of Key Agreement Protocols]. — С. 9-10.
  • Sebastien Kunz-Jacques, David Pointcheval [eprint.iacr.org/2007/018.pdf About the Security of MTI/C0 and MQV]. — 2006.
  • Colin Boyd, Anish Mathuria. 5.3 MTI Protocols // Protocols for Authentication and Key Establishment. — Springer, 2003. — 321 p. — ISBN 3540431071.
  • Ошибка Lua : attempt to index local 'entity' (a nil value).

Отрывок, характеризующий Протоколы MTI

– Еще какой! – сказала она. Но как только она сказала это, другой, новый строй мыслей и чувств поднялся в ней. Что значила улыбка Николая, когда он сказал: «уж выбран»? Рад он этому или не рад? Он как будто думает, что мой Болконский не одобрил бы, не понял бы этой нашей радости. Нет, он бы всё понял. Где он теперь? подумала Наташа и лицо ее вдруг стало серьезно. Но это продолжалось только одну секунду. – Не думать, не сметь думать об этом, сказала она себе и улыбаясь, подсела опять к дядюшке, прося его сыграть еще что нибудь.
Дядюшка сыграл еще песню и вальс; потом, помолчав, прокашлялся и запел свою любимую охотническую песню.
Как со вечера пороша
Выпадала хороша…
Дядюшка пел так, как поет народ, с тем полным и наивным убеждением, что в песне все значение заключается только в словах, что напев сам собой приходит и что отдельного напева не бывает, а что напев – так только, для складу. От этого то этот бессознательный напев, как бывает напев птицы, и у дядюшки был необыкновенно хорош. Наташа была в восторге от пения дядюшки. Она решила, что не будет больше учиться на арфе, а будет играть только на гитаре. Она попросила у дядюшки гитару и тотчас же подобрала аккорды к песне.
В десятом часу за Наташей и Петей приехали линейка, дрожки и трое верховых, посланных отыскивать их. Граф и графиня не знали где они и крепко беспокоились, как сказал посланный.
Петю снесли и положили как мертвое тело в линейку; Наташа с Николаем сели в дрожки. Дядюшка укутывал Наташу и прощался с ней с совершенно новой нежностью. Он пешком проводил их до моста, который надо было объехать в брод, и велел с фонарями ехать вперед охотникам.
– Прощай, племянница дорогая, – крикнул из темноты его голос, не тот, который знала прежде Наташа, а тот, который пел: «Как со вечера пороша».
В деревне, которую проезжали, были красные огоньки и весело пахло дымом.
– Что за прелесть этот дядюшка! – сказала Наташа, когда они выехали на большую дорогу.
– Да, – сказал Николай. – Тебе не холодно?
– Нет, мне отлично, отлично. Мне так хорошо, – с недоумением даже cказала Наташа. Они долго молчали.
Ночь была темная и сырая. Лошади не видны были; только слышно было, как они шлепали по невидной грязи.
Что делалось в этой детской, восприимчивой душе, так жадно ловившей и усвоивавшей все разнообразнейшие впечатления жизни? Как это всё укладывалось в ней? Но она была очень счастлива. Уже подъезжая к дому, она вдруг запела мотив песни: «Как со вечера пороша», мотив, который она ловила всю дорогу и наконец поймала.
– Поймала? – сказал Николай.
– Ты об чем думал теперь, Николенька? – спросила Наташа. – Они любили это спрашивать друг у друга.
– Я? – сказал Николай вспоминая; – вот видишь ли, сначала я думал, что Ругай, красный кобель, похож на дядюшку и что ежели бы он был человек, то он дядюшку всё бы еще держал у себя, ежели не за скачку, так за лады, всё бы держал. Как он ладен, дядюшка! Не правда ли? – Ну а ты?
– Я? Постой, постой. Да, я думала сначала, что вот мы едем и думаем, что мы едем домой, а мы Бог знает куда едем в этой темноте и вдруг приедем и увидим, что мы не в Отрадном, а в волшебном царстве. А потом еще я думала… Нет, ничего больше.
– Знаю, верно про него думала, – сказал Николай улыбаясь, как узнала Наташа по звуку его голоса.
– Нет, – отвечала Наташа, хотя действительно она вместе с тем думала и про князя Андрея, и про то, как бы ему понравился дядюшка. – А еще я всё повторяю, всю дорогу повторяю: как Анисьюшка хорошо выступала, хорошо… – сказала Наташа. И Николай услыхал ее звонкий, беспричинный, счастливый смех.
– А знаешь, – вдруг сказала она, – я знаю, что никогда уже я не буду так счастлива, спокойна, как теперь.
– Вот вздор, глупости, вранье – сказал Николай и подумал: «Что за прелесть эта моя Наташа! Такого другого друга у меня нет и не будет. Зачем ей выходить замуж, всё бы с ней ездили!»
«Экая прелесть этот Николай!» думала Наташа. – А! еще огонь в гостиной, – сказала она, указывая на окна дома, красиво блестевшие в мокрой, бархатной темноте ночи.


Граф Илья Андреич вышел из предводителей, потому что эта должность была сопряжена с слишком большими расходами. Но дела его всё не поправлялись. Часто Наташа и Николай видели тайные, беспокойные переговоры родителей и слышали толки о продаже богатого, родового Ростовского дома и подмосковной. Без предводительства не нужно было иметь такого большого приема, и отрадненская жизнь велась тише, чем в прежние годы; но огромный дом и флигеля всё таки были полны народом, за стол всё так же садилось больше человек. Всё это были свои, обжившиеся в доме люди, почти члены семейства или такие, которые, казалось, необходимо должны были жить в доме графа. Таковы были Диммлер – музыкант с женой, Иогель – танцовальный учитель с семейством, старушка барышня Белова, жившая в доме, и еще многие другие: учителя Пети, бывшая гувернантка барышень и просто люди, которым лучше или выгоднее было жить у графа, чем дома. Не было такого большого приезда как прежде, но ход жизни велся тот же, без которого не могли граф с графиней представить себе жизни. Та же была, еще увеличенная Николаем, охота, те же 50 лошадей и 15 кучеров на конюшне, те же дорогие подарки в именины, и торжественные на весь уезд обеды; те же графские висты и бостоны, за которыми он, распуская всем на вид карты, давал себя каждый день на сотни обыгрывать соседям, смотревшим на право составлять партию графа Ильи Андреича, как на самую выгодную аренду.
Граф, как в огромных тенетах, ходил в своих делах, стараясь не верить тому, что он запутался и с каждым шагом всё более и более запутываясь и чувствуя себя не в силах ни разорвать сети, опутавшие его, ни осторожно, терпеливо приняться распутывать их. Графиня любящим сердцем чувствовала, что дети ее разоряются, что граф не виноват, что он не может быть не таким, каким он есть, что он сам страдает (хотя и скрывает это) от сознания своего и детского разорения, и искала средств помочь делу. С ее женской точки зрения представлялось только одно средство – женитьба Николая на богатой невесте. Она чувствовала, что это была последняя надежда, и что если Николай откажется от партии, которую она нашла ему, надо будет навсегда проститься с возможностью поправить дела. Партия эта была Жюли Карагина, дочь прекрасных, добродетельных матери и отца, с детства известная Ростовым, и теперь богатая невеста по случаю смерти последнего из ее братьев.
Графиня писала прямо к Карагиной в Москву, предлагая ей брак ее дочери с своим сыном и получила от нее благоприятный ответ. Карагина отвечала, что она с своей стороны согласна, что всё будет зависеть от склонности ее дочери. Карагина приглашала Николая приехать в Москву.
Несколько раз, со слезами на глазах, графиня говорила сыну, что теперь, когда обе дочери ее пристроены – ее единственное желание состоит в том, чтобы видеть его женатым. Она говорила, что легла бы в гроб спокойной, ежели бы это было. Потом говорила, что у нее есть прекрасная девушка на примете и выпытывала его мнение о женитьбе.
В других разговорах она хвалила Жюли и советовала Николаю съездить в Москву на праздники повеселиться. Николай догадывался к чему клонились разговоры его матери, и в один из таких разговоров вызвал ее на полную откровенность. Она высказала ему, что вся надежда поправления дел основана теперь на его женитьбе на Карагиной.
– Что ж, если бы я любил девушку без состояния, неужели вы потребовали бы, maman, чтобы я пожертвовал чувством и честью для состояния? – спросил он у матери, не понимая жестокости своего вопроса и желая только выказать свое благородство.
– Нет, ты меня не понял, – сказала мать, не зная, как оправдаться. – Ты меня не понял, Николинька. Я желаю твоего счастья, – прибавила она и почувствовала, что она говорит неправду, что она запуталась. – Она заплакала.
– Маменька, не плачьте, а только скажите мне, что вы этого хотите, и вы знаете, что я всю жизнь свою, всё отдам для того, чтобы вы были спокойны, – сказал Николай. Я всем пожертвую для вас, даже своим чувством.
Но графиня не так хотела поставить вопрос: она не хотела жертвы от своего сына, она сама бы хотела жертвовать ему.
– Нет, ты меня не понял, не будем говорить, – сказала она, утирая слезы.
«Да, может быть, я и люблю бедную девушку, говорил сам себе Николай, что ж, мне пожертвовать чувством и честью для состояния? Удивляюсь, как маменька могла мне сказать это. Оттого что Соня бедна, то я и не могу любить ее, думал он, – не могу отвечать на ее верную, преданную любовь. А уж наверное с ней я буду счастливее, чем с какой нибудь куклой Жюли. Пожертвовать своим чувством я всегда могу для блага своих родных, говорил он сам себе, но приказывать своему чувству я не могу. Ежели я люблю Соню, то чувство мое сильнее и выше всего для меня».
Николай не поехал в Москву, графиня не возобновляла с ним разговора о женитьбе и с грустью, а иногда и озлоблением видела признаки всё большего и большего сближения между своим сыном и бесприданной Соней. Она упрекала себя за то, но не могла не ворчать, не придираться к Соне, часто без причины останавливая ее, называя ее «вы», и «моя милая». Более всего добрая графиня за то и сердилась на Соню, что эта бедная, черноглазая племянница была так кротка, так добра, так преданно благодарна своим благодетелям, и так верно, неизменно, с самоотвержением влюблена в Николая, что нельзя было ни в чем упрекнуть ее.
Николай доживал у родных свой срок отпуска. От жениха князя Андрея получено было 4 е письмо, из Рима, в котором он писал, что он уже давно бы был на пути в Россию, ежели бы неожиданно в теплом климате не открылась его рана, что заставляет его отложить свой отъезд до начала будущего года. Наташа была так же влюблена в своего жениха, так же успокоена этой любовью и так же восприимчива ко всем радостям жизни; но в конце четвертого месяца разлуки с ним, на нее начинали находить минуты грусти, против которой она не могла бороться. Ей жалко было самое себя, жалко было, что она так даром, ни для кого, пропадала всё это время, в продолжение которого она чувствовала себя столь способной любить и быть любимой.
В доме Ростовых было невесело.


Пришли святки, и кроме парадной обедни, кроме торжественных и скучных поздравлений соседей и дворовых, кроме на всех надетых новых платьев, не было ничего особенного, ознаменовывающего святки, а в безветренном 20 ти градусном морозе, в ярком ослепляющем солнце днем и в звездном зимнем свете ночью, чувствовалась потребность какого нибудь ознаменования этого времени.
На третий день праздника после обеда все домашние разошлись по своим комнатам. Было самое скучное время дня. Николай, ездивший утром к соседям, заснул в диванной. Старый граф отдыхал в своем кабинете. В гостиной за круглым столом сидела Соня, срисовывая узор. Графиня раскладывала карты. Настасья Ивановна шут с печальным лицом сидел у окна с двумя старушками. Наташа вошла в комнату, подошла к Соне, посмотрела, что она делает, потом подошла к матери и молча остановилась.
– Что ты ходишь, как бесприютная? – сказала ей мать. – Что тебе надо?
– Его мне надо… сейчас, сию минуту мне его надо, – сказала Наташа, блестя глазами и не улыбаясь. – Графиня подняла голову и пристально посмотрела на дочь.
– Не смотрите на меня. Мама, не смотрите, я сейчас заплачу.
– Садись, посиди со мной, – сказала графиня.
– Мама, мне его надо. За что я так пропадаю, мама?… – Голос ее оборвался, слезы брызнули из глаз, и она, чтобы скрыть их, быстро повернулась и вышла из комнаты. Она вышла в диванную, постояла, подумала и пошла в девичью. Там старая горничная ворчала на молодую девушку, запыхавшуюся, с холода прибежавшую с дворни.
– Будет играть то, – говорила старуха. – На всё время есть.
– Пусти ее, Кондратьевна, – сказала Наташа. – Иди, Мавруша, иди.
И отпустив Маврушу, Наташа через залу пошла в переднюю. Старик и два молодые лакея играли в карты. Они прервали игру и встали при входе барышни. «Что бы мне с ними сделать?» подумала Наташа. – Да, Никита, сходи пожалуста… куда бы мне его послать? – Да, сходи на дворню и принеси пожалуста петуха; да, а ты, Миша, принеси овса.
– Немного овса прикажете? – весело и охотно сказал Миша.
– Иди, иди скорее, – подтвердил старик.
– Федор, а ты мелу мне достань.
Проходя мимо буфета, она велела подавать самовар, хотя это было вовсе не время.
Буфетчик Фока был самый сердитый человек из всего дома. Наташа над ним любила пробовать свою власть. Он не поверил ей и пошел спросить, правда ли?
– Уж эта барышня! – сказал Фока, притворно хмурясь на Наташу.
Никто в доме не рассылал столько людей и не давал им столько работы, как Наташа. Она не могла равнодушно видеть людей, чтобы не послать их куда нибудь. Она как будто пробовала, не рассердится ли, не надуется ли на нее кто из них, но ничьих приказаний люди не любили так исполнять, как Наташиных. «Что бы мне сделать? Куда бы мне пойти?» думала Наташа, медленно идя по коридору.
– Настасья Ивановна, что от меня родится? – спросила она шута, который в своей куцавейке шел навстречу ей.
– От тебя блохи, стрекозы, кузнецы, – отвечал шут.
– Боже мой, Боже мой, всё одно и то же. Ах, куда бы мне деваться? Что бы мне с собой сделать? – И она быстро, застучав ногами, побежала по лестнице к Фогелю, который с женой жил в верхнем этаже. У Фогеля сидели две гувернантки, на столе стояли тарелки с изюмом, грецкими и миндальными орехами. Гувернантки разговаривали о том, где дешевле жить, в Москве или в Одессе. Наташа присела, послушала их разговор с серьезным задумчивым лицом и встала. – Остров Мадагаскар, – проговорила она. – Ма да гас кар, – повторила она отчетливо каждый слог и не отвечая на вопросы m me Schoss о том, что она говорит, вышла из комнаты. Петя, брат ее, был тоже наверху: он с своим дядькой устраивал фейерверк, который намеревался пустить ночью. – Петя! Петька! – закричала она ему, – вези меня вниз. с – Петя подбежал к ней и подставил спину. Она вскочила на него, обхватив его шею руками и он подпрыгивая побежал с ней. – Нет не надо – остров Мадагаскар, – проговорила она и, соскочив с него, пошла вниз.
Как будто обойдя свое царство, испытав свою власть и убедившись, что все покорны, но что всё таки скучно, Наташа пошла в залу, взяла гитару, села в темный угол за шкапчик и стала в басу перебирать струны, выделывая фразу, которую она запомнила из одной оперы, слышанной в Петербурге вместе с князем Андреем. Для посторонних слушателей у ней на гитаре выходило что то, не имевшее никакого смысла, но в ее воображении из за этих звуков воскресал целый ряд воспоминаний. Она сидела за шкапчиком, устремив глаза на полосу света, падавшую из буфетной двери, слушала себя и вспоминала. Она находилась в состоянии воспоминания.
Соня прошла в буфет с рюмкой через залу. Наташа взглянула на нее, на щель в буфетной двери и ей показалось, что она вспоминает то, что из буфетной двери в щель падал свет и что Соня прошла с рюмкой. «Да и это было точь в точь также», подумала Наташа. – Соня, что это? – крикнула Наташа, перебирая пальцами на толстой струне.
– Ах, ты тут! – вздрогнув, сказала Соня, подошла и прислушалась. – Не знаю. Буря? – сказала она робко, боясь ошибиться.
«Ну вот точно так же она вздрогнула, точно так же подошла и робко улыбнулась тогда, когда это уж было», подумала Наташа, «и точно так же… я подумала, что в ней чего то недостает».
– Нет, это хор из Водоноса, слышишь! – И Наташа допела мотив хора, чтобы дать его понять Соне.
– Ты куда ходила? – спросила Наташа.
– Воду в рюмке переменить. Я сейчас дорисую узор.
– Ты всегда занята, а я вот не умею, – сказала Наташа. – А Николай где?
– Спит, кажется.
– Соня, ты поди разбуди его, – сказала Наташа. – Скажи, что я его зову петь. – Она посидела, подумала о том, что это значит, что всё это было, и, не разрешив этого вопроса и нисколько не сожалея о том, опять в воображении своем перенеслась к тому времени, когда она была с ним вместе, и он влюбленными глазами смотрел на нее.
«Ах, поскорее бы он приехал. Я так боюсь, что этого не будет! А главное: я стареюсь, вот что! Уже не будет того, что теперь есть во мне. А может быть, он нынче приедет, сейчас приедет. Может быть приехал и сидит там в гостиной. Может быть, он вчера еще приехал и я забыла». Она встала, положила гитару и пошла в гостиную. Все домашние, учителя, гувернантки и гости сидели уж за чайным столом. Люди стояли вокруг стола, – а князя Андрея не было, и была всё прежняя жизнь.
– А, вот она, – сказал Илья Андреич, увидав вошедшую Наташу. – Ну, садись ко мне. – Но Наташа остановилась подле матери, оглядываясь кругом, как будто она искала чего то.
– Мама! – проговорила она. – Дайте мне его , дайте, мама, скорее, скорее, – и опять она с трудом удержала рыдания.
Она присела к столу и послушала разговоры старших и Николая, который тоже пришел к столу. «Боже мой, Боже мой, те же лица, те же разговоры, так же папа держит чашку и дует точно так же!» думала Наташа, с ужасом чувствуя отвращение, подымавшееся в ней против всех домашних за то, что они были всё те же.
После чая Николай, Соня и Наташа пошли в диванную, в свой любимый угол, в котором всегда начинались их самые задушевные разговоры.


– Бывает с тобой, – сказала Наташа брату, когда они уселись в диванной, – бывает с тобой, что тебе кажется, что ничего не будет – ничего; что всё, что хорошее, то было? И не то что скучно, а грустно?
– Еще как! – сказал он. – У меня бывало, что всё хорошо, все веселы, а мне придет в голову, что всё это уж надоело и что умирать всем надо. Я раз в полку не пошел на гулянье, а там играла музыка… и так мне вдруг скучно стало…
– Ах, я это знаю. Знаю, знаю, – подхватила Наташа. – Я еще маленькая была, так со мной это бывало. Помнишь, раз меня за сливы наказали и вы все танцовали, а я сидела в классной и рыдала, никогда не забуду: мне и грустно было и жалко было всех, и себя, и всех всех жалко. И, главное, я не виновата была, – сказала Наташа, – ты помнишь?
– Помню, – сказал Николай. – Я помню, что я к тебе пришел потом и мне хотелось тебя утешить и, знаешь, совестно было. Ужасно мы смешные были. У меня тогда была игрушка болванчик и я его тебе отдать хотел. Ты помнишь?
– А помнишь ты, – сказала Наташа с задумчивой улыбкой, как давно, давно, мы еще совсем маленькие были, дяденька нас позвал в кабинет, еще в старом доме, а темно было – мы это пришли и вдруг там стоит…
– Арап, – докончил Николай с радостной улыбкой, – как же не помнить? Я и теперь не знаю, что это был арап, или мы во сне видели, или нам рассказывали.
– Он серый был, помнишь, и белые зубы – стоит и смотрит на нас…
– Вы помните, Соня? – спросил Николай…
– Да, да я тоже помню что то, – робко отвечала Соня…
– Я ведь спрашивала про этого арапа у папа и у мама, – сказала Наташа. – Они говорят, что никакого арапа не было. А ведь вот ты помнишь!
– Как же, как теперь помню его зубы.
– Как это странно, точно во сне было. Я это люблю.
– А помнишь, как мы катали яйца в зале и вдруг две старухи, и стали по ковру вертеться. Это было, или нет? Помнишь, как хорошо было?
– Да. А помнишь, как папенька в синей шубе на крыльце выстрелил из ружья. – Они перебирали улыбаясь с наслаждением воспоминания, не грустного старческого, а поэтического юношеского воспоминания, те впечатления из самого дальнего прошедшего, где сновидение сливается с действительностью, и тихо смеялись, радуясь чему то.