Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Volly  
#1 Оставлено : 11 июля 2024 г. 14:46:07(UTC)
Volly

Статус: Новичок

Группы: Участники
Зарегистрирован: 11.07.2024(UTC)
Сообщений: 2

Добрый день!
Хочу понять правильно ли я понимаю как должно работать взаимодействие с КриптоПро, к сожалению очень мало опыта работы с продуктом.

Есть задача реализовать интеграцию с ЕИС, в ней требуется:
Цитата:
https://int223.zakupki.g...gration/non-publicupload для загрузки в ЕИС сведений, не подлежащих
размещению на Официальном сайте ЕИС, по запросу от
специализированных электронных площадок.

Параметры:
o inn - ИНН специализированной электронной площадки;
o kpp - КПП специализированной электронной площадки;
o document – передаваемый XML-документ;

o signature - подпись передаваемого XML-документа с
вложенным сертификатом открытого ключа ЭП.
Все параметры – обязательные.
Файл, передаваемый в параметре должен быть сформирован по
следующему алгоритму:
 От загружаемого XML берётся хэш-функция по алгоритму ГОСТ Р
34.11-2012 256 бит.
 Производится base64 преобразование от полученной байтовой
последовательности.
 Берётся подпись по алгоритму ГОСТ Р 34.11-2012/34.10-2012 256 бит
(сертификатом, который прикреплён в настойках интеграции).
 Берётся Base64 от подписи выше.
Файл с указанным значением передаётся в параметре signature.

При этом используется криптографический протокол TLS. Соединение
устанавливается по протоколу TLS в режиме двухсторонней аутентификации с
дополнительной проверкой сертификата электронной подписи (далее - ЭП).
Для обеспечения двухсторонней аутентификации с применением
электронной подписи необходимо:
 ВСРЗ, КИС, РМИС и электронным площадкам получить сертификаты
электронной подписи в удостоверяющих центрах, аккредитованных
согласно требованиям Федерального закона № 63-ФЗ. Полученные
сертификаты должны использоваться ВСРЗ, КИС, РМИС для
подписания пакетов данных, передаваемых в ЕИС.
 ВСРЗ, КИС, РМИС и электронным площадкам обеспечить своих
заказчиков файлами, содержащими открытый ключ электронной
подписи, используемой для интеграции с ЕИС.


Используемый код:
Код:

            var packetByteArray = ExchangeService.Serialize(context.Packet);

            // Создаем объект ContentInfo по сообщению для создания объекта SignedCms.
            var contentInfo = new ContentInfo(packetByteArray);
            var signedCms = new SignedCms(contentInfo, true);

            // Определяем подписывающего, объектом CmsSigner.
            var cmsSigner = new CmsSigner(_certificateHandler.HiddenEisServiceCertificate)
            {
                IncludeOption = X509IncludeOption.EndCertOnly
            };

            // Подписываем CMS/PKCS #7 сообщение.
            context.Log.Info($"Вычисляем подпись сообщения для субъекта {_certificateHandler.HiddenEisServiceCertificate.SubjectName.Name}");

            signedCms.ComputeSignature(cmsSigner);
            context.Log.Info($"Подпись сообщения для субъекта {_certificateHandler.HiddenEisServiceCertificate.SubjectName.Name} успешно вычислена");

            // Кодируем CMS/PKCS #7 сообщение.
            var signature = signedCms.Encode();


Собственно интеграция происходит и данные успешно отправляются, но при каждом вычисление подписи идёт обращение к приватному ключу через программу CryptoPro и получается, что необходимо постоянно иметь вставленную usb-флешку(что в силу обстоятельств невсегда возможно).
Вроде бы ЕИС заявляет, что для интеграции достаточно публичного ключа, можете пояснить как правильно всё должно работать? Возможно в данной ситуации есть способы при которых нет необходимости в подключенной usb-флешке.
Offline Андрей *  
#2 Оставлено : 11 июля 2024 г. 16:09:07(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 13,276
Мужчина
Российская Федерация

Сказал «Спасибо»: 547 раз
Поблагодарили: 2196 раз в 1714 постах
Здравствуйте.

В описании есть ответ - требуется
Цитата:
signature - подпись передаваемого XML-документа.
..
Берётся подпись по алгоритму ГОСТ Р 34.11-2012/34.10-2012 256 бит..


Соответственно, для подписания - требуется доступ к закрытому ключу.
Техническую поддержку оказываем тут
Наша база знаний
Offline Volly  
#3 Оставлено : 11 июля 2024 г. 16:38:49(UTC)
Volly

Статус: Новичок

Группы: Участники
Зарегистрирован: 11.07.2024(UTC)
Сообщений: 2

Андрей, спасибо большое за ответ!
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.