Приветствую, есть проблема с подписанием в 1С.
Текст кода:
CAPICOM_CURRENT_USER_STORE = 2;
CAPICOM_MY_STORE = "My";
CAPICOM_STORE_OPEN_MAXIMUM_ALLOWED = 2;
CAPICOM_CERTIFICATE_FIND_SHA1_HASH = 0;
CAPICOM_CERTIFICATE_FIND_SUBJECT_NAME = 1;
oStore = Новый COMОбъект("CAdESCOM.Store");
oStore.Open(CAPICOM_CURRENT_USER_STORE, CAPICOM_MY_STORE, CAPICOM_STORE_OPEN_MAXIMUM_ALLOWED);
oCertificates = oStore.Certificates.Find(CAPICOM_CERTIFICATE_FIND_SHA1_HASH, sThumbprint);
Если oCertificates.Count = 0 Тогда
ВызватьИсключение "Certificate not found: " + sThumbprint;
КонецЕсли;
oStore.Close();
oCertificate = oCertificates.Item(1);
sTSAAddress = новый Массив;
sTSAAddress.Добавить("http://domain/tsp/tsp.srf");
oSigner = Новый COMОбъект("CAdESCOM.CPSigner");
oSigner.Certificate = oCertificate;
oSigner.Options = 1;
oSigner.TSAAddress = sTSAAddress;
oSignedData = Новый COMОбъект("CAdESCOM.CadesSignedData");
oSignedData.Content = СокрЛП(ТекстДляПодписи);
oSignedData.ContentEncoding = 1;
//bDetached Вид подписи: отделенная (true) или совмещенная (false)
CADESCOM_CADES_TYPE = 1;//CADESCOM_CADES_BES=1 CADESCOM_CADES_DEFAULT=0 CADESCOM_CADES_T=5
EncodingType = 0;//CAPICOM_ENCODE_BASE64=0 CAPICOM_ENCODE_BINARY=1
sSignedMessage = oSignedData.SignCades(oSigner, CADESCOM_CADES_TYPE, bDetached, EncodingType);
Код отрабатывает, но на другой стороне валидацию не проходит.
А если подписать на странице
https://www.cryptopro.ru...e/cades_bes_sample.html,то на другая сторона принимает пакет принимает.
И встаёт извечный вопрос русской интеллигенции "Что Делать?"
Как мне в 1с получить подписанный текст такой же как на Вашей странице?
Спасибо.
Отредактировано пользователем 8 апреля 2019 г. 18:33:29(UTC)
| Причина: Не указана