ГОСТ в TLS 1.3: протокол, Provider и проверка handshake¶
Как отличить наличие ГОСТ EVP-шифров от работоспособного TLS-согласования в приложениях.
Документация ПО — НАЙС.ОС CLOUD. Это самостоятельная учебно-справочная статья. Команды приведены для изучения и диагностики; операции с ключами, дисками и действующими сервисами выполняют только после резервного копирования и проверки назначения.
Три разных уровня готовности¶
Наличие kuznyechik-cbc, magma-mgm или «Стрибога» в OpenSSL показывает, что библиотека знает алгоритм в соответствующем криптографическом интерфейсе. TLS 1.3, в свою очередь, согласует строго определённые cipher suites, группы ключевого обмена и алгоритмы подписи. Приложение должно поддерживать весь профиль, а не только выполнять одиночный шифр EVP.
RFC 9367 описывает ГОСТ-профиль TLS 1.3. Документ информационный (Independent Submission), поэтому его нельзя выдавать за обязательный стандарт IETF или доказательство того, что браузеры автоматически будут работать с ним.
Инвентаризация OpenSSL¶
openssl version -a
openssl list -providers -verbose
openssl list -cipher-algorithms | grep -Ei 'gost|kuznyechik|magma' || true
openssl ciphers -v 'ALL' | grep -Ei 'gost|kuznyechik|magma' || true
Две последние проверки исследуют разные списки. Наличие алгоритма в list -cipher-algorithms при пустом openssl ciphers означает, что заявлять полноценный ГОСТ-TLS только по EVP нельзя.
Проверка сетевого согласования¶
Замените example.invalid на тестовый адрес, который принадлежит вашей лаборатории. Команда демонстрирует обычный TLS; возможность запросить именно ГОСТ-шифронабор проверяют по фактическим параметрам соединения и настройкам обеих сторон. Из журналов нужно сохранить: протокол, cipher suite, группу, signature scheme, сертификат и результат проверки цепочки.
Как тестировать Nginx¶
Не пытайтесь включить произвольное имя EVP-шифра директивой ssl_ciphers для TLS 1.3. Реально доступные наборы задаются криптобиблиотекой и интеграцией Nginx с ней. Проектируйте отдельный изолированный стенд с ГОСТ-сертификатом, подходящим провайдером и контрольным клиентом; без испытания такие параметры остаются проектом.
Критерии результата¶
- Оба участника согласовали профиль ГОСТ, указанный в первоисточнике.
- Сертификат и подпись корректны и доверены.
- Принятый ключевой обмен и трафик действительно защищены согласованным ГОСТ-набором.
- Проверены отказ при неправильном сертификате, изменение данных, обновление ключей/сессий, повторное соединение.
Обратите внимание: ранее подтверждённый OpenVPN с «Кузнечиком» в канале данных мог использовать AES-GCM и RSA в контрольном TLS. Это не означает «полный ГОСТ TLS», хотя канал пользовательского трафика уже использовал ГОСТ.
Первоисточники и дополнительное чтение¶
- RFC 9367 — ГОСТ в TLS 1.3.
- Реестр параметров TLS IANA — идентификаторы протокола и шифронаборов.
- RFC 9215 — ГОСТ-2012 в сертификатах и списках отзыва.