ГОСТ Р 34.10-2001. Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи |
Дата введения 2002-07-01
1 РАЗРАБОТАН Главным управлением безопасности связи Федерального агентства правительственной связи и информации при Президенте Российской Федерации с участием Всероссийского научно-исследовательского института стандартизации (ВНИИстандарт)
ВНЕСЕН Федеральным агентством правительственной связи и информации при Президенте Российской Федерации
2 ПРИНЯТ И ВВЕДЕН В ДЕЙСТВИЕ Постановлением Госстандарта России от 12 сентября 2001 г. N 380-ст
3 Настоящий стандарт разработан с учетом терминологии и концепций международных стандартов ИСО 2382-2-76 "Обработка данных. Словарь. Часть 2. Арифметические и логические операции", ИСО/МЭК 9796-91 "Информационная технология. Методы защиты. Схема цифровой подписи с восстановлением сообщения", серии ИСО/МЭК 14888 "Информационная технология. Методы защиты. Цифровые подписи с приложением" и серии ИСО/МЭК 10118 "Информационная технология. Методы защиты. Хэш-функции"
4 ВЗАМЕН ГОСТ Р 34.10-94
Настоящий стандарт содержит описание процессов формирования и проверки электронной цифровой подписи (ЭЦП), реализуемой с использованием операций группы точек эллиптической кривой, определенной над конечным простым полем.
Стандарт разработан взамен ГОСТ Р 34.10-94. Необходимость разработки настоящего стандарта вызвана потребностью в повышении стойкости ЭЦП к несанкционированным изменениям. Стойкость ЭЦП основывается на сложности вычисления дискретного логарифма в группе точек эллиптической кривой, а также на стойкости используемой хэш-функции по ГОСТ Р 34.11.
Настоящий стандарт терминологически и концептуально увязан с международными стандартами ИСО 2382-2 [1] ИСО/МЭК 9796 [2], серии ИСО/МЭК 14888 [3] - [5] и серии ИСО/МЭК 10118 [6]-[9].
Примечание - Основная часть стандарта дополнена тремя приложениями:
- А - дополнительные термины в области ЭЦП;
- Б - описание контрольного примера;
- В - перечень публикаций (библиография) в области ЭЦП.
Настоящий стандарт определяет схему электронной цифровой подписи (ЭЦП) (далее по тексту - цифровая подпись), процессы формирования и проверки цифровой подписи под заданным сообщением (документом), передаваемым по незащищенным телекоммуникационным каналам общего пользования в системах обработки информации различного назначения.
Внедрение цифровой подписи на базе настоящего стандарта повышает, по сравнению с действующей схемой цифровой подписи, уровень защищенности передаваемых сообщений от подделок и искажений.
Стандарт рекомендуется использовать в новых системах обработки информации различного назначения, а также при модернизации действующих систем.
В настоящем стандарте использована ссылка на следующий стандарт:
ГОСТ Р 34.11-94 Информационная технология. Криптографическая защита информации. Функции хэширования.
В настоящем стандарте использованы следующие термины:
3.1.1 дополнение (appendix): Строка бит, формируемая из цифровой подписи и произвольного текстового поля (ИСО/МЭК 148881-1 [3]).
3.1.2 ключ подписи (signature key): Элемент секретных данных, специфичный для субъекта и используемый только данным субъектом в процессе формирования цифровой подписи (ИСО/МЭК 14888-1 [3]).
3.1.3 ключ проверки (verification key): Элемент данных, математически связанный с ключом подписи и используемый проверяющей стороной в процессе проверки цифровой подписи (ИСО/МЭК 14888-1 [3]).
3.1.4 параметр схемы ЭЦП (domain parameter): Элемент данных, общий для всех субъектов схемы цифровой подписи, известный или доступный всем этим субъектам (ИСО/МЭК 14888-1 [3]).
3.1.5 подписанное сообщение (signed message): Набор элементов данных, состоящий из сообщения и дополнения, являющегося частью сообщения.
3.1.6 последовательность псевдослучайных чисел (pseudo-random number sequence): Последовательность чисел, полученная в результате выполнения некоторого арифметического (вычислительного) процесса, используемая в конкретном случае вместо последовательности случайных чисел (ИСО 2382-2 [1]).
3.1.7 последовательность случайных чисел (random number sequence): Последовательность чисел, каждое из которых не может быть предсказано (вычислено) только на основе знания предшествующих ему чисел данной последовательности (ИСО 2382-2 [1]).
3.1.8 процесс проверки подписи (verification process): Процесс, в качестве исходных данных которого используются подписанное сообщение, ключ проверки и параметры схемы ЭЦП и результатом которого является заключение о правильности или ошибочности цифровой подписи (ИСО/МЭК 14888-1 [3]).
3.1.9 процесс формирования подписи (signature process): Процесс, в качестве исходных данных которого используются сообщение, ключ подписи и параметры схемы ЭЦП, а в результате формируется цифровая подпись (ИСО/МЭК 14888-1 [3]).
3.1.10 свидетельство (witness): Элемент данных, представляющий соответствующее доказательство достоверности (недостоверности) подписи проверяющей стороне (ИСО/МЭК 14888-1 [3]).
3.1.11 случайное число (random number): Число, выбранное из определенного набора чисел таким образом, что каждое число из данного набора может быть выбрано с одинаковой вероятностью (ИСО 2382-2 [1]).
3.1.12 сообщение (message): Строка бит ограниченной длины (ИСО/МЭК 9796 [2]).
3.1.13 хэш-код (hash-code): Строка бит, являющаяся выходным результатом хэш-функции (ИСО/МЭК 148881-1 [3]).
3.1.14 хэш-функция (hash-function): Функция, отображающая строки бит в строки бит фиксированной длины и удовлетворяющая следующим свойствам:
1) по данному значению функции сложно вычислить исходные данные, отображенные в это значение;
2) для заданных исходных данных трудно найти другие исходные данные, отображаемые с тем же результатом;
3) трудно найти какую-либо пару исходных данных с одинаковым значением хэш-функции.
Примечание - Применительно к области ЭЦП свойство 1 подразумевает, что по известной ЭЦП невозможно восстановить исходное сообщение; свойство 2 подразумевает, что для заданного подписанного сообщения трудно подобрать другое (фальсифицированное) сообщение, имеющее ту же ЭЦП, свойство 3 подразумевает, что трудно подобрать какую-либо пару сообщений, имеющих одну и ту же подпись.
3.1.15 [электронная] цифровая подпись (digital signature): Строка бит, полученная в результате процесса формирования подписи. Данная строка имеет внутреннюю структуру, зависящую от конкретного механизма формирования подписи.
Примечание - В настоящем стандарте в целях сохранения терминологической преемственности с действующими отечественными нормативными документами и опубликованными научно-техническими изданиями, установлено, что термины "цифровая подпись" и "электронная цифровая подпись (ЭЦП)" являются синонимами.
В настоящем стандарте использованы следующие обозначения:
V256 - множество всех двоичных векторов длиной 256 бит;
V∞ - множество всех двоичных векторов произвольной конечной длины;
Z - множество всех целых чисел;
р - простое число, р > 3 ;
F φ - конечное простое поле, представляемое как множество из р целых чисел {0, 1,... , р - 1};
b (mod р) - минимальное не отрицательное число, сравнимое с b по модулю р ;
М - сообщение пользователя, ;
- конкатенация (объединение) двух двоичных векторов;
а, b - коэффициенты эллиптической кривой;
m - порядок группы точек эллиптической кривой;
q - порядок подгруппы группы точек эллиптической кривой;
О - нулевая точка эллиптической кривой;
Р - точка эллиптической кривой порядка q ;
d - целое число - ключ подписи;
Q - точка эллиптической кривой - ключ проверки;
- цифровая подпись под сообщением М .