Введение
ГОСТ Р 34.10-2012 – российский государственный стандарт «Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи». Определяет алгоритмы создания и верификации цифровой подписи на основе операций в группе точек эллиптической кривой, определённой над конечным простым полем.
Стандарт обязателен для квалифицированной электронной подписи (КЭП) согласно Федеральному закону № 63-ФЗ «Об электронной подписи». Любое СКЗИ, используемое для создания КЭП, должно реализовывать ГОСТ Р 34.10-2012 и иметь сертификат ФСБ.
История и контекст
Первый российский стандарт ЭЦП – ГОСТ Р 34.10-94 – был основан на задаче дискретного логарифмирования в конечном поле, аналогично алгоритму DSA. В 2001 году принят ГОСТ Р 34.10-2001, перешедший на эллиптические кривые (как ECDSA). Действующий ГОСТ Р 34.10-2012 расширил стандарт: добавил поддержку 512-битных ключей для повышенного класса защиты и обязал использование новой хэш-функции Стрибог (ГОСТ Р 34.11-2012). В 2018 году принят межгосударственный стандарт ГОСТ 34.10-2018 для стран СНГ.
Как работает ГОСТ Р 34.10-2012
Алгоритм основан на сложности задачи дискретного логарифмирования в группе точек эллиптической кривой (ECDLP):
- Параметры системы – эллиптическая кривая E над простым полем p, базовая точка P порядка q. Параметры рекомендованы ТК-26: кривые 256-бит (id-tc26-gost-3410-12-256-paramSetA/B/C/D) и 512-бит (id-tc26-gost-3410-12-512-paramSetA/B/C).
- Ключевая пара – закрытый ключ d (целое число, 0 < d < q), открытый ключ Q = d·P (точка кривой). Длина закрытого ключа: 256 или 512 бит. Длина открытого ключа: 512 или 1024 бит (две координаты точки).
- Подпись – двоичный вектор длиной 512 бит (для ключей 256 бит) или 1024 бит (для 512 бит), состоящий из двух компонент (r, s).
Процесс подписи: вычислить хэш сообщения по ГОСТ Р 34.11-2012; сгенерировать случайное k; вычислить точку C = k·P; r = x_C mod q; s = (r·d + k·e) mod q, где e – хэш. Подпись: (r, s). Верификация: проверить r, s ∈ [1, q-1]; вычислить хэш; восстановить точку и сравнить.
Где применяется
- КЭП в ЭДО – подпись договоров, счетов-фактур, первичных документов в системах Диадок, СБИС, 1С-ЭДО.
- Госпорталы – авторизация и подпись заявлений на Госуслугах, в ФНС, ПФР, ФСС, ЕГАИС.
- Банковские операции – подпись платёжных поручений в системах ДБО.
- СМЭВ – подпись межведомственных запросов и ответов.
- Защита каналов связи – аутентификация в протоколе ГОСТ TLS.
Преимущества и ограничения
Преимущества: высокая криптостойкость при компактных ключах (256 бит эквивалентно ~128 бит симметричного шифра); юридическая сила КЭП; обязательность для государственного ЭДО. Ограничения: требует сертифицированного СКЗИ (только российского производства); международно несовместим с ECDSA/EdDSA; миграция с 256 на 512 бит требует перевыпуска всех сертификатов.
Связь с другими понятиями
ГОСТ Р 34.10-2012 неотделим от хэш-функции ГОСТ Р 34.11-2012 (Стрибог) и реализуется через СКЗИ (прежде всего КриптоПро CSP). Входит в PKI-инфраструктуру аккредитованных удостоверяющих центров. Используется в ГОСТ TLS для аутентификации серверов и клиентов.