Статус: Новичок
Группы: Участники
Зарегистрирован: 04.11.2009(UTC) Сообщений: 1 Откуда: хабаровск
|
Существует какой-нибудь способ преобразования присоединенной ЭЦП в содержимое подписанного документа и отсоединенную ЭЦП?
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 18.06.2008(UTC) Сообщений: 230 Откуда: Москва
Сказал(а) «Спасибо»: 2 раз Поблагодарили: 40 раз в 28 постах
|
Конечно существует, следует просто иметь средства работы с ASN.1 там даже работа с криптографией не потребуется.
|
|
|
|
Статус: Эксперт
Группы: Администраторы, Участники Зарегистрирован: 01.12.2008(UTC) Сообщений: 54 Откуда: Крипто-Про
Сказал(а) «Спасибо»: 1 раз Поблагодарили: 14 раз в 9 постах
|
Да, в принципе это возможно, но простого способа нет.
Можно посмотреть в сторону CryptMsgControl(CMSG_CTRL_ADD_CMS_SIGNER_INFO), MSDN утверждает, что так можно добавлять к сообщению готовую подпись. То есть, надо будет создать отсоединённое CMS сообщение, а потом добавить к нему готовую подпись из старого сообщения. Отсоединённое CMS сообщение, возможно, придётся подписать какой-нибудь временной подписью, с использованием того же алгоритма хеширования (так как CMS хранит алгоритмы хеширования, кроме SignerInfo, ещё и в отдельном поле). После добавления настоящей подписи, временную можно будет удалить вызовом CryptMsgControl(CMSG_CTRL_DEL_SIGNER).
Еще можно попробовать декодировать сообщение с присоединённой ЭЦП с помощью CryptDecodeObject(X509_SEQUENCE_OF_ANY), добраться до вложенных данных в encapContentInfo, удалить это поле, и закодировать обратно с помощью CryptEncodeObject(X509_SEQUENCE_OF_ANY).
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close