Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Решенные билеты.doc
Скачиваний:
99
Добавлен:
26.05.2014
Размер:
1.72 Mб
Скачать

Вопрос 18

Схема идентификации Фиата — Шамира

Авторы схемы и ее расширений — Amos Fiat, Adi Shamir, Uriel Feige. В качестве односторонней функции используется возведение в квадрат по составному модулю. В качестве значения обратной функции берется наименьший квадратный корень. Схема решает следующие проблемы:

  • Не может ли участник протокола с помощью многократных специально подобранных запросов узнать закрытый ключ другого участника?

  • Большой объем вычислений (например, при использовании RSA) мешает реализовать протокол на пластиковой карте с процессором.

  • Требуется некоторая схема распределения открытых ключей.

Со схемой Фиата—Шамира связана забавная история о политических проблемах криптографии. Когда авторы схемы подали заявку на патент в США, заявка была отправлена на экспертизу для выявления в ней сведений, существенных с точки зрения национальной безопасности. В результате экспертизы было решено изобретение засекретить, а авторам предписывалось потребовать неразглашения схемы от всех граждан США, которым она уже стала известна, а также представить полный список иностранцев, обладающих информацией о схеме. Авторы схемы удивленно ответили, что они сами не являются гражданами США, что разработка была выполнена в Израиле и что результаты уже примерно в течение года известны, так как обсуждались на международных конференциях. После этого американские «органы» отозвали свое заключение о секретности работы и патент был выдан.

Протокол Фиата—Шамира идентификации клиента Р в системе V.

Параметры

  • n=pq, p и qпростые.

  • t  N— параметр надежности.

Ключи

  • Открытый ключ: v QRn.

  • Закрытый ключ: s=v-1/2 порождается центром распределения ключей (ЦРК), если для всех участников используется одно и то же значение n, или каждым участником самостоятельно, если каждый участник сам для себя порождает n.

Повторять t раз.

Утверждение. Не зная s, участник Р не может на одной итерации протокола представить верное значение у с вероятностью, большей 1/2.

Доказательство. Если z=y2vb, то для некоторого rZn* y=rsb. Если Р может представить для некоторого значения rZn* одновременно rs и r,то он знает, чему равно s. Следовательно, оптимальной тактикой для Р, не знающего значения s, является:

  • угадать значение b;

  • выбрать yZn* и вычислить z2 vb.

За t итераций протокола вероятность подбора можно свести к 2-t.

Утверждение. Это протокол с нулевым раскрытием, т. е. даже без участия Р проверяющий V может изготовить сколько угодно правильных пар (x,у), распределенных так же, как соответствующие пары при участии Р.

Можно уменьшить количество итераций протокола и отказаться от централизованного хранения ключей с помощью модификации протокола. Клиент Р доказывает знание квадратных корней из нескольких значений vi , связанных с его идентификатором с помощью хэш-функции. Протокол Фиата — Шамира (модифицированный) идентификации клиента Р в системе V. Пусть клиент однозначно идентифицируется строкой I{0,1}*.

Параметры

  • n=pq, р и q—простые.

  • t, k  N — параметры надежности.

  • h: {0,1}*  Zn — криптографически стойкая хэш-функция.

Ключи

  • Открытый ключ: v =(I,(ji)i=1,…,k), где ji  {0,1}*— битовые строки такие, что vi =h(1|| ji)  QRn для всех i.

  • Закрытый ключ: набор (si)i=1,…,k,si =vi-1/2. Вычисляется центром распределения ключей, которому известно разложение n на множители.

0. P V | v | V вычисляет и проверяет (vi)i=1,…,k.

Следующие шаги выполняются t раз.

V проверяет, что z=y2 (v1b1vkbk).

Утверждение. Вероятность угадывания набора (bi) и выбора соответствующих z и у без знания закрытого ключа на одной итерации протокола равна 2-k, а за t итераций — 2-kt.

Утверждение. Это протокол с нулевым раскрытием, т.е. даже без участия Р проверяющий V может изготовить сколько угодно правильных пар (х,у), распределенных так же, как соответствующие пары при участии Р.

Злоумышленник может фальсифицировать открытый ключ, подбирая одновременно s и j так, чтобы s2=h(I || j). Но количество попыток, необходимых для удачного попадания, равно приблизительно, где N — количество возможных значенийh. Кроме того, можно ограничить размер допустимых чисел ;.

Достоинства модифицированной схемы Фиата — Шамира.

  • Быстрее, чем RSA.

  • Не требует использования схемы распределения открытых ключей.

  • С нулевым раскрытием.

  • Надежность определяется произведением длины ключа и количества итераций, что позволяет гибко ее регулировать.

В работе Micali S., Shamir A. предложен способ уменьшить количество вычислений, которые делает проверяющий. Для этого в качестве значений (vi)i=1,…,k берутся k первых простых чисел, а каждый доказывающий участник сам выбирает для себя значение п.

Схема идентификации Шнорра

Эта схема (Schnorr ) еще быстрее схемы Фиата — Шамйра и основывается на трудности вычисления дискретных логарифмов.

Протокол Шнорра идентификации клиента Р в системе V. Пусть клиент однозначно идентифицируется строкой I {0,1}*.

Параметры

  • p=qt+1, p и qпростые, gэлемент порядка q в Zp* .

  • S (х) — схема цифровой подписи.

  • t,k  N - параметры надежности.

  • h: {0,1}* Zn — криптографически стойкая хэш-функция.

Ключи

  • Закрытый ключ: s  Zq.

  • Открытый ключ: v=g-s  Zp* , сертификат ключа S(I,v).

Р доказывает знание дискретного логарифма v:

Соседние файлы в предмете Криптография