Форум КриптоПро
»
Средства криптографической защиты информации
»
Встраивание
»
Как слить в один файл несколько файлов с подписью (*.sig) на C#
Статус: Новичок
Группы: Участники
Зарегистрирован: 30.08.2013(UTC) Сообщений: 8
|
Есть несколько отсоединенных файлов с подписью (*.sig) к одному документу. Нужно их объеденить в один файл (отсоединенный). Как это можно сделать на C#? С пространоством System.Security.Cryptography.Pkcs и в частности SignedCms знаком, но простое решение этой задачи не могу найти.
|
|
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 22.07.2025(UTC) Сообщений: 3 
|
Добрый день!
Удалось найти решение?
|
|
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 12.03.2026(UTC) Сообщений: 2  Сказал(а) «Спасибо»: 2 раз
|
Вопрос к сотрудникам КриптоПро: API С# этого не позволяет?...
|
|
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 24.02.2026(UTC) Сообщений: 7  Откуда: Москва Сказал(а) «Спасибо»: 1 раз Поблагодарили: 2 раз в 2 постах
|
Автор: 11ees  Есть несколько отсоединенных файлов с подписью (*.sig) к одному документу. Нужно их объеденить в один файл (отсоединенный). Как это можно сделать на C#? С пространоством System.Security.Cryptography.Pkcs и в частности SignedCms знаком, но простое решение этой задачи не могу найти. Здравствуйте. Возможности объеденения нескольких CMS сообщений в одно в SignedCms из System.Security.Cryptography.Pkcs нет, так как нет функций для получения/добавления блоба SignerInfo в CMS сообщение. Но можно создать подпись в добавление к существующей в сообщении, путём загрузки существующей подписи и вызова ComputeSignature: Код:var signedCms = new CpSignedCms();
signedCms.Decode(File.ReadAllBytes("signature.sig"));
CmsSigner cmsSigner = new CmsSigner(gostCert);
signedCms.ComputeSignature(cmsSigner);
var signature = signedCms.Encode();
Объеденить несколько CMS сообщений можно вызовами к CryptoAPI. Для получения SignerInfo из одного сообщения: CryptMsgGetParam(CMSG_CMS_SIGNER_INFO_PARAM) А затем добавить к существующему сообщению: CryptMsgControl(CMSG_CTRL_ADD_CMS_SIGNER_INFO) И также с сертификатами подписантов: CryptMsgGetParam(CMSG_CERT_PARAM) CryptMsgControl(CMSG_CTRL_ADD_CERT) Отредактировано пользователем 17 марта 2026 г. 12:56:02(UTC)
| Причина: Не указана
|
 1 пользователь поблагодарил Илья К.А. за этот пост.
|
|
|
|
Форум КриптоПро
»
Средства криптографической защиты информации
»
Встраивание
»
Как слить в один файл несколько файлов с подписью (*.sig) на C#
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close