C# Цифровая подпись PDF
Добрый день!
Наше предприятие использует рутокен ЭЦП, на борту которого сгенерирован сертификат. Подписываются PDF-файлы и запросы xml в ГИС ЖКХ.
Недавно поменяли ключ на гост 2012.
Запросы xml в ГИС ЖКХ подписываются без ошибок после перевода на гост 2012.
Код для подписания PDF не трогался.
Для генерации поля signature dictionary в документе PDF использую библиотеку iTextSharp. Для доступа к рутокену использую обертку над rtPKCS11ECP.dll.
Генерируется подпись с помощью метода CryptoCore.sign.
При генерации возникает ошибка:
'1:error:0609E09C:digital envelope routines:func(158):reason(156)'
Не подскажите по какой причине может возникать данная ошибка? Как выглядит метод прилагаю ниже.
public string sign(uint deviceId, string certId, string data, OptionsMap options, StringVector additionalCerts) {
string ret = rtpkicorePINVOKE.CryptoCore_sign(swigCPtr, deviceId, certId, data, OptionsMap.getCPtr(options), StringVector.getCPtr(additionalCerts));
if (rtpkicorePINVOKE.SWIGPendingException.Pending) throw rtpkicorePINVOKE.SWIGPendingException.Retrieve();
return ret;
}