Схема Шнорра (англ. schnorr scheme) — одна из наиболее эффективных и теоретически обоснованных схем аутентификации. Безопасность схемы основывается на трудности вычисления дискретных логарифмов. Предложенная Клаусом Шнорром[en] схема является модификацией схем Эль-Гамаля (1985) и Фиата-Шамира (1986), но имеет меньший размер подписи. Схема Шнорра лежит в основе стандарта Республики Беларусь СТБ 1176.2-99 и южнокорейских стандартов KCDSA и EC-KCDSA. Она была покрыта патентом США 4999082, который истек в феврале 2008 года.
Схемы аутентификации и электронной подписи — одни из наиболее важных и распространенных типов криптографических протоколов, которые обеспечивают целостность информации.
Понять назначение протоколов аутентификации можно легко на следующем примере. Предположим, что у нас есть информационная система, в которой необходимо разграничить доступ к различным данным. Также в данной системе присутствует администратор, который хранит все идентификаторы пользователей с сопоставленным набором прав, с помощью которого происходит разграничение доступа к ресурсам. Одному пользователю может быть одновременно разрешено читать один файл, изменять второй и в то же время закрыт доступ к другому. В данном примере под обеспечением целостности информации понимается предотвращение доступа к системе лиц, не являющихся её пользователями, а также предотвращение доступа пользователей к тем ресурсам, на которые у них нет полномочий. Наиболее распространенный метод разграничения доступа, парольная защита, имеет массу недостатков, поэтому перейдем к криптографической постановке задачи.
В протоколе имеются два участника — Алиса, которая хочет подтвердить свой идентификатор, и Боб, который должен проверить это подтверждение. У Алисы имеется два ключа — , открытый (общедоступный), и — закрытый (приватный) ключ, известный только Алисе. Фактически, Боб должен проверить, что Алиса знает свой закрытый ключ , используя только .
Схема Шнорра — одна из наиболее эффективных среди практических протоколов аутентификации, реализующая данную задачу. Она минимизирует зависимость вычислений, необходимых для создания подписи, от сообщения. В этой схеме основные вычисления могут быть сделаны во время простоя процессора, что позволяет увеличить скорость подписания. Как и DSA, схема Шнорра использует подгруппу порядка в . Также данный метод использует хеш-функцию .
Генерация ключей для схемы подписи Шнорра происходит так же, как и генерация ключей для DSA, кроме того, что не существует никаких ограничений по размерам. Заметим также, что модуль может быть вычислен автономно.
Безопасность алгоритма зависит от параметра t. Сложность вскрытия алгоритма примерно равна . Шнорр советует использовать t около 72 битов, для и . Для решения задачи дискретного логарифма, в этом случае, требуется по крайней мере шагов известных алгоритмов.
Генерация ключей:
Проверка подлинности:
Если в схеме Шнорра предположить, что Алиса является противником, то на шаге 1 она может выбрать случайным, но эффективным способом. Пусть — это переданное Алисой число. Предположим, что можно найти два случайных числа и такие, что и для каждого из них Алиса может найти соответствующие и , для которых подтверждение даст положительный результат. Получаем:
Отсюда или же . Так как , то существует и, следовательно, , то есть дискретный логарифм . Таким образом, либо такие, что Алиса может ответить надлежащим образом на оба из них (при одном и том же ) на шаге 3 протокола, встречаются редко, что означает, что атака Алисы успешна лишь с пренебрежимо малой вероятностью. Либо такие значения попадаются часто, и тогда тот алгоритм, который применяет Алиса, можно использовать для вычисления дискретных логарифмов.
Иными словами, доказано, что в предположении трудности задачи дискретного логарифмирования схема аутентификации Шнорра является стойкой против пассивного противника, то есть корректной.
Активный противник может провести некоторое количество сеансов выполнения протокола в качестве проверяющего с честным доказывающим (или подслушать такие выполнения) и после этого попытаться атаковать схему аутентификации. Для стойкости против активного противника достаточно, чтобы протокол аутентификации был доказательством с нулевым разглашением. Однако свойство нулевого разглашения для схемы Шнорра до сих пор никому доказать не удалось.
Алгоритм Шнорра также можно использовать и в качестве протокола цифровой подписи сообщения . Пара ключей используется та же самая, но добавляется однонаправленная хеш-функция .
Основные вычисления для генерации подписи производятся на этапе предварительной обработки и на этапе вычисления , где числа и имеют порядок битов, а параметр — бита. Последнее умножение ничтожно мало по сравнению с модульным умножением в схеме RSA.
Проверка подписи состоит в основном из расчета , который может быть сделан в среднем за вычислений по модулю , где есть длина в битах.
Более короткая подпись позволяет сократить количество операций для генерации подписи и верификации: в схеме Шнорра , а в схеме Эль-Гамаля .
Генерация ключей:
Подпись сообщения:
Схема Шнорра имеет патенты в ряде стран. Например, в США № 4,995,082 от 19 февраля 1991 года (истёк 19 февраля 2008 года). В 1993 году Public Key Partners (PKP) из Саннивейла (Sunnyvale) приобрела мировые права на данный патент. Кроме США, данная схема запатентована также и в нескольких других странах.
Модификация схемы, которая была выполнена Эрни Брикеллом (Brickell) и Кевином МакКерли (McCurley) в 1992 году, значительно повысила безопасность данной схемы. В их методе используется число , которое так же, как и , сложно разложить, простой делитель числа и элемент порядка в , которые впоследствии применяются в подписи. В отличие от схемы Шнорра подпись в их методе вычисляется уравнением
В то время, как в вычислительном плане модификация Брикелл и МакКерли менее эффективна, чем схема Шнорра, данный метод имеет преимущество, так как основывается на трудности двух сложных задач:
Для улучшения этой статьи желательно: |
Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".
Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.
Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .