При подписании файла в формате base64 получаю ошибку Sign Data - unknown CMS format

Ошибка:
Get TSA token - Connection closed.
Get TSA token - OK.
Sign Data - unknown CMS format

int kalkanFlags = (int)KALKANCRYPTCOM_FLAGS.KC_IN_BASE64
| (int)KALKANCRYPTCOM_FLAGS.KC_OUT_BASE64
| (int)KALKANCRYPTCOM_FLAGS.KC_SIGN_CMS
| (int)KALKANCRYPTCOM_FLAGS.KC_IN_PEM
| (int)KALKANCRYPTCOM_FLAGS.KC_WITH_TIMESTAMP;
kalkan.SignData("", (int)kalkanFlags, base64pdf, ref outSign);

Данный код локальном тесте работает. При переносе приложения в IIS получаю данную ошибку. Все сертификаты из pki.gov.kz установил на сервере.
Можете подсказать, в чем может быть проблема?

Без флага (int)KALKANCRYPTCOM_FLAGS.KC_WITH_TIMESTAMP подписывает?

да подписывает, но при проверке через ezSigner оно ругается на отсутствие timestamp у подписи.

Еще при подписании докумеyта методом SignData используя сертификат юр лица из SDK и получаю такую ошибку на стороне сервера
RROR 0x8f00047: Get TSA token - Unable to connect to server.
ERROR 0x8f00047: Get TSA token - FAILED.
ERROR 0x8f00047: Get TSA token - FAILED.

У Вас на стороне сервера проблемы с соединением к TSP-сервису

Можете подробнее написать что за сервис?

TSP — это криптографический протокол, позволяющий создавать доказательство факта существования электронного документа на определённый момент времени.

https://ru.wikipedia.org/wiki/Time_Stamp_Protocol
https://ru.wikipedia.org/wiki/Временная_метка

Спасибо! С TSP разобрались.
Осталось вопрос по пунтку Sign Data - unknown CMS format

Правильно ли я передаю kalkanFlags?
данные ЭЦП считываю из файла с расширением RSA…deq.p12
kalkan.LoadKeyStore((int)KALKANCRYPTCOM_STORETYPE.KCST_PKCS12, password, filePath, “”);

Да, параметры переданы правильно.

Из за чего выходит данная ошибка? При локальной проверке код работает, при переносе на сервер получаю данную ошибку в методе SignData.

Для подписи данные в каком виде подаете?

base64 строка из файла

Попробуйте без флага (int)KALKANCRYPTCOM_FLAGS.KC_IN_PEM подписать

пробовали, не помогает

Какая у Вас версия библиотеки? Если старые, попробуйте актуализировать

Библиотеку использую Interop.KalkanCryptCOMLib.dll версии 2.5.0.0 из полученного от вас SDK.
Пробовал использовать библиотеку из NuGet, там есть версия библиотеки 2.8.0.0. С ним тоже локально все правильно отрабатывает, но при переносе на сервер получаю эту же ошибку.
А какая самая последняя версия библиотеки? Можете отправить самую последнюю версию SDK на почту

C TSP точно разобрались?

Перед вызова метода SignData присваиваю URL tsp
TSASetUrl(“http://tsp.pki.gov.kz:80”)

Правильно ли мы указываем адрес TSP сервиса?