Статус: Участник
Группы: Участники
Зарегистрирован: 21.12.2021(UTC) Сообщений: 14
Сказал(а) «Спасибо»: 3 раз
|
Добрый вечер. Требования такие: проверять сертификаты в другом месте, в КриптоПро нужно просто подписывать данные (без необходимости ставить сертификаты УЦ локально). Следующий код не работает, пытаюсь подписать документ форматом CADES-BES. В чем может быть проблема? Продолжаю получать ошибку: "A certificate chain processed correctly, but terminated in a root certificate which is not trusted by the trust provider (0x800B0109)". Сертификаты УЦ специально удалил, чтобы подписывать без них. Код:let cadesSigner;
let cadesSignedData;
try {
cadesSigner = __cadesAsyncToken__ + __createCadesPluginObject__('CAdESCOM.CPSigner');
cadesSignedData = __cadesAsyncToken__ + __createCadesPluginObject__('CAdESCOM.CadesSignedData');
} catch (error) {
console.error(error);
throw new Error(_extractMeaningfulErrorMessage(error) || 'Ошибка при инициализации подписи');
}
try {
void (__cadesAsyncToken__ + cadesSigner.propset_Certificate(cadesCertificate));
void (__cadesAsyncToken__ + cadesSigner.propset_CheckCertificate(false));
void (__cadesAsyncToken__ + cadesSignedData.propset_Content(unencryptedMessage));
} catch (error) {
console.error(error);
throw new Error(_extractMeaningfulErrorMessage(error) || 'Ошибка при указании данных для подписи');
}
let signature: string;
try {
signature = __cadesAsyncToken__ + cadesSignedData.SignCades(cadesSigner, cadesplugin.CADESCOM_CADES_BES);
} catch (error) {
console.error(error);
throw new Error(_extractMeaningfulErrorMessage(error) || 'Ошибка при подписании данных');
}
return signature;
Отредактировано пользователем 13 января 2022 г. 18:07:58(UTC)
| Причина: Не указана
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 21.12.2021(UTC) Сообщений: 14
Сказал(а) «Спасибо»: 3 раз
|
При этом ранее при подписывании XADES-BES устранить проверку сертификата удалось: Код: try {
void (__cadesAsyncToken__ + cadesSigner.propset_Certificate(cadesCertificate));
void (__cadesAsyncToken__ + cadesSigner.propset_CheckCertificate(false));
void (__cadesAsyncToken__ + cadesSignedXML.propset_Content(sContent));
void (
__cadesAsyncToken__ +
cadesSignedXML.propset_SignatureType(
cadesplugin.CADESCOM_XML_SIGNATURE_TYPE_TEMPLATE | cadesplugin.CADESCOM_XADES_BES,
)
);
} catch (error) {
console.error(error);
throw new Error(_extractMeaningfulErrorMessage(error) || 'Ошибка при указании данных для подписи');
}
let signature: string;
try {
signature = __cadesAsyncToken__ + cadesSignedXML.Sign(cadesSigner);
} catch (error) {
console.error(error);
throw new Error(_extractMeaningfulErrorMessage(error) || 'Ошибка при подписании данных');
}
return signature;
Код выше работает, ошибку не выдает, здесь также имеется, Код:void (__cadesAsyncToken__ + cadesSigner.propset_CheckCertificate(false));
Отредактировано пользователем 13 января 2022 г. 18:07:11(UTC)
| Причина: Не указана
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close