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



Компьютеры - ГОСТ Р 34.10-2001 - Описание

03 июля 2011
Хорошие условия для Вас: Обслуживание компьютеров в зеленограде - осенняя распродажа!

Оглавление:
1. ГОСТ Р 34.10-2001
2. Описание
3. Криптостойкость
4. Отличия от ГОСТ 34.10-94
5. Возможные применения



ГОСТ Р 34.10-2001 основан на эллиптических кривых. Его стойкость основывается на сложности вычисления дискретного логарифма в группе точек эллиптической кривой, а также на стойкости хэш-функции по ГОСТ Р 34.11-94.

После подписывания сообщения М к нему дописывается цифровая подпись размером 512 бит и текстовое поле. В текстовом поле могут содержаться, например, дата и время отправки или различные данные об отправителе:

Сообщение М
+
Цифровая подпись Текст
Дополнение

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

Алгоритм

Параметры схемы цифровой подписи

  • простое число p — модуль эллиптической кривой такой, что p > 2
  • эллиптическая кривая E задается своим инвариантом J или коэффициентами a,b\in F_p, где Fp — конечное поле из p элементов. J связан с коэффициентами a и b следующим образом
J=1728\frac{4a^3}{4a^3+27b^2}\pmod{p}, причём 4a^3+27b^2\not\equiv 0\pmod{p}.
  • целое число m — порядок группы точек эллиптической кривой, m должно быть отлично от p
  • простое число q, порядок некоторой циклической подгруппы группы точек эллиптической кривой, то есть выполняется m = nq, для некоторого n\in\N. Так же q лежит в пределах 2 < q < 2.
  • точка P= эллиптической кривой E, являющаяся генератором подгруппы порядка q, то есть q\cdot P=\mathbf{0} и k\cdot P\ne \mathbf{0} для всех k = 1, 2, …, q-1, где \mathbf{0} — нейтральный элемент группы точек эллиптической кривой E.
  • h — хэш-функция, которая отображает сообщения M в двоичные векторы длины 256 бит.

Каждый пользователь цифровой подписи имеет личные ключи:

  • ключ шифрования d — целое число, лежащее в пределах 0 < d < q.
  • ключ расшифрования Q=, вычисляемый как Q = d\cdot P.

Дополнительные требования:

  • p^t\neq 1 \pmod{q}, \forall t=1..B, где B\geq 31
  • J\neq 0 и J\neq 1728

Двоичные векторы

Между двоичными векторами длины 256 \bar{h}= и целыми числами z\leq 2^{256} ставится взаимно-однозначное соответствие по следующему правилу z=\sum^{255}_{i=0}\alpha_i2^i. Здесь αi либо равно 0, либо равно 1. Другими словами, \bar{h} — это двоичное представление числа z.

Результатом операции конкатенации двух векторов \bar{h_1}= и \bar{h_2}= называется вектор длины 512 =. Обратная операция — операция разбиения одного вектора длины 512 на два вектора длины 256.

Формирование цифровой подписи

  1. Вычисление хэш-функции от сообщения М: \bar{h} = h
  2. Вычисление e=z\,\bmod\,q, и если e = 0, положить e = 1. Где z — целое число, соответствующее \bar{h}.
  3. Генерация случайного числа k такого, что 0 < k < q.
  4. Вычисление точки эллиптической кривой C = kP, и по ней нахождение r=x_c\,\bmod\,q, где xc — это координата x точки C. Если r = 0, возвращаемся к предыдущему шагу.
  5. Нахождение s=\,\bmod\,q. Если s = 0, возвращаемся к шагу 3.
  6. Формирование цифровой подписи \xi=, где \bar{r} и \bar{s} — векторы, соответствующие r и s.

Проверка цифровой подписи

  1. Вычисление по цифровой подписи ξ чисел r и s, учитывая, что \xi=, где r и s — числа, соответствующие векторам \bar{r} и \bar{s}. Если хотя бы одно из неравенств r < q и s < q неверно, то подпись неправильная.
  2. Вычисление хэш-функции от сообщения М: \bar{h} = h.
  3. Вычисление e=z\,\bmod\,q, и если e = 0, положить e = 1. Где z — целое число соответствующее \bar{h}.
  4. Вычисление \nu=e^{-1}\,\bmod\,q.
  5. Вычисление z_1=s\nu\,\bmod\,q и z_2=-r\nu\,\bmod\,q.
  6. Вычисление точки эллиптической кривой C = z1P + z2Q. И определение R=x_c\,\bmod\,q, где xc — координата x кривой C.
  7. В случае равенства R = r подпись правильная, иначе — неправильная.


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


<<< NESSIE