Подпись Шнорра - Schnorr signature

В криптография, а Подпись Шнорра это цифровой подписи произведенный Алгоритм подписи Шнорра это было описано Клаус Шнорр. Это схема цифровой подписи, известная своей простотой,[1] среди первых, безопасность которых основана на несговорчивости определенных дискретный логарифм проблемы.[1] Он эффективен и генерирует короткие подписи.[1] Это было покрыто Патент США 4,995,082 срок действия которого истек в феврале 2008 года.

Алгоритм

Выбор параметров

Обозначение

В следующих,

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

Генерация ключей

  • Выберите закрытый ключ подписи, , из разрешенного набора.
  • Открытый ключ проверки .

Подписание

Чтобы подписать сообщение, :

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

Подпись - пара, .

Обратите внимание, что ; если , то представление подписи может уместиться в 40 байтов.

Проверка

  • Позволять
  • Позволять

Если затем подпись проверяется.

Доказательство правильности

Относительно легко увидеть, что если подписанное сообщение равно проверенному сообщению:

, и поэтому .

Публичные элементы: , , , , , , . Частные элементы: , .

Это показывает только то, что правильно подписанное сообщение будет правильно проверено; многие другие свойства необходимы для безопасного алгоритма подписи.

Утечка ключей из-за повторного использования nonce

Как и в случае с тесно связанными алгоритмами подписи DSA, ECDSA, и Эль-Гамаль, повторно используя секретное значение nonce на двух подписях Шнорра разных сообщений позволит наблюдателям восстановить закрытый ключ.[2] В случае подписей Шнорра это просто требует вычитания значения:

.

Если но тогда можно просто изолировать. Фактически, даже незначительные отклонения в стоимости или частичная утечка может раскрыть закрытый ключ после сбора достаточного количества подписей и решения проблема со скрытым номером.[2]

Аргумент безопасности

Схема подписи была построена с применением Преобразование Фиат – Шамир[3] протоколу идентификации Шнорра.[4] Следовательно (согласно аргументам Фиата и Шамира) это безопасно, если моделируется как случайный оракул.

Его безопасность также можно оспорить в общая групповая модель, в предположении, что является «устойчивым к случайному префиксу преобразуя» и «устойчивым к случайному префиксу второго преобраза».[5] Особенно, делает нет нужно быть стойкий к столкновениям.

В 2012 году Seurin[1] предоставил точное доказательство схемы подписи Шнорра. В частности, Серен показывает, что доказательство безопасности с использованием разветвленная лемма наилучший результат для любых схем подписи, основанных на одностороннем групповые гомоморфизмы включая подписи типа Шнорра и Схемы подписи Гийу-Кискватера. А именно, согласно предположению ROMDL, любая алгебраическая редукция должна терять множитель в соотношении времени успеха, где функция, которая остается близкой к 1, пока " заметно меньше 1 ", где вероятность подделки ошибки, не превышающая запросы к случайному оракулу.

Короткие подписи Шнорра

Вышеупомянутый процесс обеспечивает т-битный уровень безопасности с 4т-битовые подписи. Например, для 128-битного уровня безопасности потребуются 512-битные (64-байтовые) подписи. Безопасность ограничена дискретными логарифмическими атаками на группу, которые имеют сложность квадратный корень размера группы.

В оригинальной статье Шнорра 1991 г. было высказано предположение, что, поскольку сопротивление столкновениям в хеш-функции не требуется, поэтому более короткие хеш-функции могут быть столь же безопасными, и действительно, недавние разработки предполагают, что т-битный уровень безопасности может быть достигнут с 3т-битовые подписи.[5] Тогда для 128-битного уровня безопасности потребуются только 384-битные (48-байтовые) подписи, и это может быть достигнуто путем усечения размера е пока он не станет половиной длины s битовое поле.

Смотрите также

Примечания

  1. ^ а б c d Сёрин, Янник (12 января 2012). «О точной безопасности подписей типа Шнорра в модели случайного Oracle» (PDF). Архив криптологии ePrint. Международная ассоциация криптологических исследований. Получено 2014-08-11.
  2. ^ а б https://ecc2017.cs.ru.nl/slides/ecc2017-tibouchi.pdf
  3. ^ Fiat; Шамир (1986). «Как проявить себя: практические решения проблем идентификации и подписи» (PDF). Материалы CRYPTO '86. Конспект лекций по информатике. 263: 186–194. Дои:10.1007/3-540-47721-7_12. ISBN  978-3-540-18047-0. S2CID  4838652.
  4. ^ Шнорр (1989). «Эффективная идентификация и подписи для смарт-карт» (PDF). Материалы CRYPTO '89. Конспект лекций по информатике. 435: 239–252. Дои:10.1007/0-387-34805-0_22. ISBN  978-0-387-97317-3. S2CID  5526090.
  5. ^ а б Невен, Смарт, Варински. «Требования к хеш-функции для подписей Шнорра». IBM Research. Получено 19 июля 2012.CS1 maint: несколько имен: список авторов (связь)

Рекомендации

  • Менезес, Альфред Дж. И др. (1996), Справочник по прикладной криптографии, CRC Press.
  • C.P. Шнорр (1990), «Эффективная идентификация и подписи для смарт-карт», в G. Brassard, ed. Достижения в криптологии - Crypto '89, 239-252, Springer-Verlag. Конспект лекций по информатике, № 435
  • Клаус-Питер Шнорр (1991), «Эффективное создание подписи с помощью смарт-карт», Журнал криптологии 4(3), 161–174 (PS) (PDF).

внешняя ссылка