Интернет магазин китайских планшетных компьютеров



Компьютеры - DSA - Параметры схемы цифровой подписи

29 мая 2011


Оглавление:
1. DSA
2. Параметры схемы цифровой подписи
3. Подпись сообщения
4. Реализация алгоритма
5. Генерация псевдопростых чисел для использования в алгоритме
6. Генерация псевдослучайных чисел для использования в алгоритме



Для построения системы цифровой подписи желающий должен произвести следующие действия:

  1. Выбор криптографической хеш-функции H.
  2. Выбор большого простого числа q, размерность которого N в битах совпадает с размерностью в битах значений хэш-функции H.
  3. Выбор простого числа p, такого, что делится на q. Битовая длина p обозначается L.
  4. Выбор числа g такого, что его мультипликативный порядок по модулю p равен q. Для его вычисления можно воспользоваться формулой g = h^{/q}\mod p, где h — некоторое произвольное число, h \in такое, что  g \neq 1 . В большинстве случаев значение h = 2 удовлетворяет этому требованию.

Как упомянуто выше, а также в DSS, первоочередным параметром схемы цифровой подписи является используемая криптографическая хеш-функция, необходимая для преобразования текста сообщения в число, которое собственно и будет подписано. Важной характеристикой этой функции является битовая длина выходной последовательности, обозначаемая далее N. В первой версии стандарта DSS рекомендована функция SHA-1 и, соответственно, битовая длина подписываемого числа 160 бит. Сейчас SHA-1 уже не является достаточно безопасной. В стандарте указаны следующие возможные пары значений чисел L и N:

  1. L = 1024, N = 160
  2. L = 2048, N = 224
  3. L = 2048, N = 256
  4. L = 3072, N = 256

В соответствии с этим рекомендованы хеш-функции семейства SHA-2. Правительственные организации должны использовать один из этих вариантов, но все другие вольны выбирать. Проектирующий систему может выбрать любую хеш-функцию. Поэтому далее не будет заостряться внимание на использовании конкретной хеш-функции. Стойкость криптосистемы на основе DSA не превосходит стойкость используемой хеш-функции и стойкость пары, чья стойкость не больше стойкости каждого из чисел по отдельности. Ранее рекомендовалась длина p L = 1024 бита. В данный момент для систем, которые должны быть стойкими до 2010 года, рекомендуется длина в 2048 бита.

Открытый и секретный ключи

  1. Секретный ключ представляет собой число x \in
  2. Открытый ключ вычисляется по формуле y=g^x \mod p

Открытыми параметрами являются числа. Закрытый параметр только один — число x. При этом числа могут быть общими для группы пользователей, а числа x и y являются соответственно закрытым и открытым ключами конкретного пользователя. При подписании сообщения используются секретные числа x и k, причем число k должно выбираться случайным образом при подписывании каждого следующего сообщения.

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



Просмотров: 6875


<<< Distributed.net
Dual EC DRBG >>>