Протокол межвендорных испытаний и критерии приёмки¶
Протокол предназначен для внутреннего контроля качества НАЙС.ОС, подготовки технических отчётов и повторных испытаний после обновления пакетов. Это инженерный акт, а не сертификат соответствия или документ о подтверждении юридической силы КЭП.
Карточка испытания¶
| Поле | Что фиксируется |
|---|---|
| ID и направление | S-04 НАЙС.ОС → CryptCP, E-02 CryptCP → НАЙС.ОС и т. п. |
| Дата и стенд | Дата, ОС, архитектура, имя лаборатории (без личных данных) |
| Версии программ | RPM, GPGSM, OpenSSL/Engine, CryptCP/CSP |
| Ключевой профиль | ГОСТ-2012/256 или /512, OID, назначение Key Usage |
| Формат файла | CMS SignedData/EnvelopedData, DER/PEM, detached/attached |
| Схема ключевого транспорта | KTRI/KARI, UKM, параметры кривой, OID шифра содержимого |
| Контрольные суммы | SHA-256 нейтрального исходного и восстановленного документов |
| Выполненная команда | Без паролей и закрытых ключей |
| Результат | прошёл / не прошёл / не запускался |
| Отрицательная проверка | Подмена данных, неверный получатель/пароль/MAC — ожидаемый отказ |
| Доверие | Отдельно: проверка цепочки, CRL/OCSP, ограничения тестового CA |
Как формулировать заключение¶
Корректно: «В конфигурации X/Y в день испытаний проверена математическая правильность отсоединённой ГОСТ CMS-подписи между НАЙС.ОС и КриптоПро CSP 5.0 в обоих направлениях; тесты изменения содержимого завершились отказом».
Некорректно: «НАЙС.ОС полностью совместима с КриптоПро для всех видов электронной подписи и шифрования» на основании одного профиля SignedData.
Для локального EnvelopedData можно писать: «GPGSM НАЙС.ОС создал и расшифровал файл с алгоритмом ГОСТ28147; код обеих операций 0, побайтовое сравнение успешно». Нельзя заменять этим результатом подтверждение E-02/E-03.
Образец короткого акта (обезличен)¶
Протокол NICEOS-GOST-CMS-R20
Дата: 2026-10-24
Сторона A: НАЙС.ОС x86_64, GPGSM 2.4.8.1-gost
Сторона B: macOS 12.7.6 x86_64, CryptCP 5.0
Профиль: ГОСТ-2012/256, Стрибог-256
S-01 CryptCP -> GPGSM, CMS SignedData ПРОШЁЛ
S-02 Подмена при проверке GPGSM ПРОШЁЛ (BADSIG)
S-04 GPGSM -> CryptCP, CMS SignedData ПРОШЁЛ
S-05 Подмена при проверке CryptCP ПРОШЁЛ (отказ)
K-03 Импорт закрытого ГОСТ-ключа из P12 ПРОШЁЛ
E-01 Локальный GPGSM EnvelopedData ПРОШЁЛ
E-02 CryptCP -> GPGSM EnvelopedData НЕ ЗАПУСКАЛСЯ
E-03 GPGSM -> CryptCP EnvelopedData НЕ ЗАПУСКАЛСЯ
Для S-04 прилагались контрольные суммы файлов при переносе и сообщение CryptCP «Подпись проверена», код 0; при изменении сообщения наблюдались «Неправильная подпись», ненулевой код. Самоподписанный тестовый CA и -nochain не проверяли независимую цепочку доверия.
Приёмка ГОСТ-шифрования между системами¶
Чтобы закрыть E-02 и E-03, для каждого направления нужны: созданный CMS с документированным алгоритмом ГОСТ28147, успешное расшифрование реальным получателем с другим криптопродуктом, побайтовое равенство, отрицательное испытание с неправильным получателем/испорченным транспортом и обезличенные журналы обоих участников.
Хэш нейтрального сообщения не раскрывает секретный ключ, однако даже по хэшам и названиям файлов могут определяться конфиденциальные рабочие данные. Публикуйте только результаты специально подготовленных учебных файлов.
Где хранить исходные доказательства¶
В закрытом инженерном хранилище: скрипты без секретов, копии открытых лабораторных сертификатов, искусственные документы, подписи, зашифрованные тестовые CMS, версии пакетов, отчёты и неизменяемые SHA-256. Не публикуйте целиком тестовый исходный патч GnuPG/libksba или приватные лабораторные ключи: некоторые исходные fixtures содержат учебные ключевые материалы.
Текущий сводный статус опубликован в матрице R20, а в машинном виде — в docs/assets/data/gost-cms-interop-r20.json.