e217onr
|
#1
Оставлено
:
17 августа 2018 г. 10:17:16(UTC)
|

Статус: Участник
Группы: Участники
Зарегистрирован: 17.08.2018(UTC) Сообщений: 12
|
Пытаюсь реализовать функционал проверки подписи. В консоли постоянно возникает ошибка: Uncaught (in promise) message: «Встречено неверное значение тега ASN1. (0x8009310B)» requestid: 33 type: «error» Просмотрел уже множество тем на эту тему в интернете но так и не нашёл внятного ответа в чём может быть проблема. Что это вообще за ошибка и что она означает? В какую сторону копать?
|

|
|
|
|
|
|
|
Андрей Писарев
|
#2
Оставлено
:
17 августа 2018 г. 10:59:03(UTC)
|

Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 12,010


Сказал «Спасибо»: 457 раз Поблагодарили: 1912 раз в 1478 постах
|
Здравствуйте.
Можете приложить или прислать в ЛС файл подписи и документ, который подписывали?
Ошибка возникает только с этим файлом? Пробовали подписывать через тестовую страницу и проверять результат через свой код (а также код, который доступен в примерах к руководству)?
|
Техническую поддержку оказываем тут Наша база знаний
|

|
|
|
|
|
|
|
e217onr
|
#3
Оставлено
:
17 августа 2018 г. 13:22:59(UTC)
|

Статус: Участник
Группы: Участники
Зарегистрирован: 17.08.2018(UTC) Сообщений: 12
|
Автор: Андрей Писарев 
Здравствуйте.
Можете приложить или прислать в ЛС файл подписи и документ, который подписывали?
Ошибка возникает только с этим файлом? Пробовали подписывать через тестовую страницу и проверять результат через свой код (а также код, который доступен в примерах к руководству)?
Ошибка возникает со всеми файлами, поэтому не думаю что прикрепление файлов даст результат. Через тестовую страницу всё работает прекрасно. Думаю проблема в моём JS-коде. Пробовал использовать код с тестовой страницы и всячески его изменять, но итог всегда один — Ошибка 0x8009310B. Так же время от времени при изменении кода JS меняется число в параметре requestid ошибки.
|

|
|
|
|
|
|
|
Андрей Писарев
|
#4
Оставлено
:
17 августа 2018 г. 14:12:15(UTC)
|

Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 12,010


Сказал «Спасибо»: 457 раз Поблагодарили: 1912 раз в 1478 постах
|
По примерам из документации делаете примеры?
|
Техническую поддержку оказываем тут Наша база знаний
|

|
|
|
|
|
|
|
Андрей Писарев
|
#5
Оставлено
:
17 августа 2018 г. 14:13:43(UTC)
|

Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 12,010


Сказал «Спасибо»: 457 раз Поблагодарили: 1912 раз в 1478 постах
|
Пробовали подписать и проверить результат сразу? Что передаете при проверке — проверяли (какие данные указанызакодированы в base64, опции)?
|
Техническую поддержку оказываем тут Наша база знаний
|

|
|
|
|
|
|
|
e217onr
|
#6
Оставлено
:
20 августа 2018 г. 9:16:42(UTC)
|

Статус: Участник
Группы: Участники
Зарегистрирован: 17.08.2018(UTC) Сообщений: 12
|
Автор: Андрей Писарев 
По примерам из документации делаете примеры?
Примеры из документации не работают, т.к. там представлен код для синхронных запросов, а у меня используются асинхронные. При попытке использовать код из документации, получаю разные ошибки типа «CreateObject is not a function» и тд.
Автор: Андрей Писарев 
Пробовали подписать и проверить результат сразу? Что передаете при проверке — проверяли (какие данные указанызакодированы в base64, опции)?
Только что попробовал проверить подпись сразу после создания, получаю ту же ошибку, но с requestId = 44. Вот мой код функции для проверки подписи:
Код:
function Verify(sSignedMessage, dataToVerify) {
var oSignedData = cadesplugin.CreateObjectAsync("CAdESCOM.CadesSignedData");
try {
oSignedData.ContentEncoding = CADESCOM_BASE64_TO_BINARY;
oSignedData.Content = dataToVerify;
oSignedData.then(function(data) {
data.VerifyCades(sSignedMessage, CADESCOM_CADES_BES, true);
});
} catch (err) {
alert("Не удалось проверить подпись. Ошибка: " + cadesplugin.getLastError(err));
return false;
}
return true;
}
где sSignedMessage — контент кодируемого документа в формате base64, а dataToVerify — готовая подпись этого контента. Что я делаю не так?
|

|
|
|
|
|
|
|
Андрей Писарев
|
#7
Оставлено
:
20 августа 2018 г. 13:55:11(UTC)
|

Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 12,010


Сказал «Спасибо»: 457 раз Поблагодарили: 1912 раз в 1478 постах
|
Цитата из примера:
Цитата:
Приведенный пример использует синхронную версию плагина. Также см. пример работы с асинхронными обьектами.
Создание подписи CADES_BES с использованием асинхронной версии
|
Техническую поддержку оказываем тут Наша база знаний
|

|
|
|
|
|
|
|
Андрей Писарев
|
#8
Оставлено
:
20 августа 2018 г. 13:59:06(UTC)
|

Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 12,010


Сказал «Спасибо»: 457 раз Поблагодарили: 1912 раз в 1478 постах
|
Также можно посмотреть работу на демо-странице и посмотреть функции из js-файлов.
Code.js
cadesplugin_api.js
…
|
Техническую поддержку оказываем тут Наша база знаний
|

|
|
|
|
|
|
|
e217onr
|
#9
Оставлено
:
20 августа 2018 г. 14:08:34(UTC)
|

Статус: Участник
Группы: Участники
Зарегистрирован: 17.08.2018(UTC) Сообщений: 12
|
Автор: Андрей Писарев 
Цитата из примера:
Цитата:
Приведенный пример использует синхронную версию плагина. Также см. пример работы с асинхронными обьектами.
Создание подписи CADES_BES с использованием асинхронной версии
Здесь пример создания подписи. Создание у меня работает. Нужна проверка.
|

|
|
|
|
|
|
|
e217onr
|
#10
Оставлено
:
20 августа 2018 г. 14:14:03(UTC)
|

Статус: Участник
Группы: Участники
Зарегистрирован: 17.08.2018(UTC) Сообщений: 12
|
Автор: Андрей Писарев 
Также можно посмотреть работу на демо-странице и посмотреть функции из js-файлов.
Code.js
cadesplugin_api.js
…
Собственно так и работает моя подпись файлов. Я взял эти 2 файла js-скриптов, закинул их в свой проект и настроил работу подписи исходя из этих файлов. Подпись работает великолепно, не работает именно ПРОВЕРКА подписи. Насчёт проверки очень мало написано в документации. Насчёт проверки асинхронными методами — вообще ни слова. Как мне в итоге проверить мою подпись?
|

|
|
|
|
|
|
|
| Пользователи, просматривающие эту тему |
|
Guest
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Форум КриптоПро
»
Средства криптографической защиты информации
»
Другие продукты
»
Встречено неверное значение тега ASN1 при формировании запроса с помощью cryptcp
jobstos
|
#1
Оставлено
:
5 августа 2022 г. 12:39:22(UTC)
|

Статус: Новичок
Группы: Участники
Зарегистрирован: 17.01.2020(UTC) Сообщений: 5
|
Формирую запрос на сертификат с расширениями с помощью команды cryptcp -creatrqst -ext <расширение>. Аргументом -ext является путь к файлу с расширением. В документации сказано, что файл может быть как в DER, так и в BASE64. С DER все работает как положено, но с файлом в BASE64 получаю ошибку:
Код:
Утилита командной строки для подписи и шифрования файлов.
Ошибка: Встречено неверное значение тега ASN1.
e:trunktrunk_0cspsamplescpcryptenroll.cpp:581: 0x8009310B
[ErrorCode: 0x8009310b]
idkind.txt (1kb) загружен 1 раз(а). idKindBase64.txt (1kb) загружен 3 раз(а).
Файлы с расширениями приложил. Файл BASE64 получаю обычной конертацией в данную кодировку
|

|
|
|
|
|
|
|
Андрей Русев
|
#2
Оставлено
:
5 августа 2022 г. 17:22:16(UTC)
|

Статус: Сотрудник
Группы: Администраторы, Участники Зарегистрирован: 16.04.2008(UTC) Сообщений: 1,136
Сказал(а) «Спасибо»: 12 раз Поблагодарили: 354 раз в 266 постах
|
BASE64 на самом деле никогда не поддерживался, в документации ошибка. А вам нужна поддержка именно BASE64 для файлов с расширениями?
|
Официальная техподдержка. Официальная база знаний.
|

|
|
|
|
|
|
|
jobstos
|
#3
Оставлено
:
9 августа 2022 г. 10:42:19(UTC)
|

Статус: Новичок
Группы: Участники
Зарегистрирован: 17.01.2020(UTC) Сообщений: 5
|
Да, хотелось использовать base64, необходимо, чтобы пользователь с помощью утилиты cryptcp генерировал запрос. Хотел предварительно дать команду на запись BASE64 в файл, чтобы пользователь мог не хранить и следовательно не ошибаться при прописывании путей до расширений
|

|
|
|
|
|
|
|
Андрей Русев
|
#4
Оставлено
:
9 августа 2022 г. 15:03:03(UTC)
|

Статус: Сотрудник
Группы: Администраторы, Участники Зарегистрирован: 16.04.2008(UTC) Сообщений: 1,136
Сказал(а) «Спасибо»: 12 раз Поблагодарили: 354 раз в 266 постах
|
Так ведь в BASE64 тоже файл, так что задача «не ошибаться при прописывании путей до расширений» не будет решена.
|
Официальная техподдержка. Официальная база знаний.
|

|
|
|
|
|
|
|
jobstos
|
#5
Оставлено
:
10 августа 2022 г. 9:19:24(UTC)
|

Статус: Новичок
Группы: Участники
Зарегистрирован: 17.01.2020(UTC) Сообщений: 5
|
Да, файл. Только base64 можно предварительно записать в файл, который затем будет использоваться в следующей команде
|

|
|
|
|
|
|
|
| Пользователи, просматривающие эту тему |
|
Guest
|
Форум КриптоПро
»
Средства криптографической защиты информации
»
Другие продукты
»
Встречено неверное значение тега ASN1 при формировании запроса с помощью cryptcp
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
What am I doing wrong here? I keep getting error 0x8009310b (ASN1 bad tag value met) when creating a certificate context. I know the certificate I’m testing with is good. I exported it from the intermediate store using DER, Base-64 and P7B formats. All three scenarios fail.
int _tmain(int argc, _TCHAR* argv[])
{
const int MAX_CERT_FILE_SIZE=81920;
HANDLE certFileHandle;
DWORD certEncodedRead = 0L;
BYTE certData[MAX_CERT_FILE_SIZE] = {0};
PCCERT_CONTEXT pCertContext = NULL;
HCERTSTORE hSystemStore = NULL;
int exitCode = 0;
fprintf(stdout, "Importing X509 certificate file to root store: %s nn", argv[0]);
try {
// Create a handle to the certificate given in the command line argument
BeginTask("Creating certificate handle...");
certFileHandle = CreateFile(argv[0],
GENERIC_READ,
0,
NULL,
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL,
NULL);
if (INVALID_HANDLE_VALUE == certFileHandle){
throw "Could not create a handle to the specified certificate file.";
}
// Read the certificate file
NextTask("Reading certificate file into buffer...");
memset(certData, 0, MAX_CERT_FILE_SIZE);
BOOL result = ReadFile(certFileHandle,
certData,
MAX_CERT_FILE_SIZE,
&certEncodedRead,
NULL);
fprintf(stdout, "Read %d bytes from certificate file...", certEncodedRead);
if (!result) {
throw "Could not read the certificate file.";
}
// Create a certificate context from the buffer
NextTask("Creating certificate context...");
pCertContext = CertCreateCertificateContext(X509_ASN_ENCODING | PKCS_7_ASN_ENCODING, certData, certEncodedRead);
if (!pCertContext){
throw "Could not create a certificate context.";
}
// Open the system certificate store
NextTask("Opening local machine certificate store...");
hSystemStore = CertOpenSystemStore(NULL, L"CA");
if (!hSystemStore){
throw "Could not open the local machine certificate store.";
}
// Add certificate context to store
NextTask("Adding certificate context to store...");
//CertAddCertificateContextToStore(hSystemStore,
// pCertContext,
// CERT_STORE_ADD_REPLACE_EXISTING,
// NULL);
} catch (ERRMSG msg) {
Result(false);
HandleError(msg);
exitCode = 1;
}
// Clean-up all resources
if (hSystemStore) {
NextTask("Closing certificate store...");
Result(CertCloseStore(hSystemStore, 0));
}
if (pCertContext) {
NextTask("Freeing certificate store...");
Result(CertFreeCertificateContext(pCertContext));
}
if (certFileHandle) {
NextTask("Closing certificate file...");
Result(CloseHandle(certFileHandle));
}
fprintf(stdout, "nnProgram complete-exiting with code %x", exitCode);
return exitCode;
}
[Edited to add console output]
Importing X509 certificate file to root store: DOD-CA-12.cer
Creating certificate handle...Success.
Reading certificate file into buffer...Read 41472 bytes from certificate file...Success.
Creating certificate context...Failed.
An error occurred while importing the X509 certificate.
Narrative: Could not create a certificate context.
GetLastError reported: 8009310b.
Success.
Closing certificate file...Success.
Program complete-exiting with code 1
К.Лихачёв
|
#1
Оставлено
:
17 января 2023 г. 16:09:27(UTC)
|

Статус: Новичок
Группы: Участники
Зарегистрирован: 17.01.2023(UTC) Сообщений: 6
 Откуда: Москва
|
Я новичок в данной теме!
Мне нужно создать открепленную подпись XML документа в формате XMLDSIG
Пытаюсь создать ЭЦП используя пример https://docs.cryptopro.r…/plugin-samples-sign-xml Подпись в плагине создается и верифицируется: Signature verified
Но потом при проверке другими средствами, например https://www.justsign.me/verifyqca/Verify/ выдается ошибка: Результат проверки: Подпись недействительна Дополнительная информация: Файл подписи имеет неверный формат. Убедитесь, что данные в файле имеют кодировку Base64 (с/без заголовками) или переданы бинарные данные. Ошибка: [Встречено неверное значение тега ASN1]. Код: [0x8009310b].
Причем не важно что я подписываю sContent из примера или реальный документ.
Подскажите: что я делаю не так?
|

|
|
|
|
|
|
|
Андрей *
|
#2
Оставлено
:
17 января 2023 г. 16:29:42(UTC)
|

Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 12,010


Сказал «Спасибо»: 457 раз Поблагодарили: 1912 раз в 1478 постах
|
Здравствуйте.
Без примера -не понятно.
В любом случае, есть демо-страница, проверяли?
Snimok ehkrana ot 2023-01-17 17-26-15.png (13kb) загружен 3 раз(а).
|
Техническую поддержку оказываем тут Наша база знаний
|

|
|
|
|
|
|
|
Андрей *
|
#3
Оставлено
:
17 января 2023 г. 16:32:14(UTC)
|

Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 12,010


Сказал «Спасибо»: 457 раз Поблагодарили: 1912 раз в 1478 постах
|
Автор: К.Лихачёв 
выдается ошибка: Результат проверки: Подпись недействительна Дополнительная информация: Файл подписи имеет неверный формат. Убедитесь, что данные в файле имеют кодировку Base64 (с/без заголовками) или переданы бинарные данные. Ошибка: [Встречено неверное значение тега ASN1]. Код: [0x8009310b].
Причем не важно что я подписываю sContent из примера или реальный документ.
Подскажите: что я делаю не так?
вероятно, указан не тот тип подписи при проверке?
Цитата:
Подпись XML документов (XML Digital Signature) — правильно Подпись в формате CMS — неправильно
|
Техническую поддержку оказываем тут Наша база знаний
|

|
|
|
|
|
|
|
К.Лихачёв
|
#4
Оставлено
:
17 января 2023 г. 17:07:55(UTC)
|

Статус: Новичок
Группы: Участники
Зарегистрирован: 17.01.2023(UTC) Сообщений: 6
 Откуда: Москва
|
Автор: Андрей * 
Здравствуйте.
Без примера -не понятно.
В любом случае, есть демо-страница, проверяли?
Snimok ehkrana ot 2023-01-17 17-26-15.png (13kb) загружен 3 раз(а).
Код:
var CAPICOM_CURRENT_USER_STORE = 2;
var CAPICOM_MY_STORE = "My";
var CAPICOM_STORE_OPEN_MAXIMUM_ALLOWED = 2;
var CAPICOM_CERTIFICATE_FIND_SUBJECT_NAME = 1;
var CADESCOM_XML_SIGNATURE_TYPE_ENVELOPED = 0;
var CADESCOM_XML_SIGNATURE_TYPE_ENVELOPING = 1;
var CADESCOM_BASE64_TO_BINARY = 1;
var XmlDsigGost3411Url2012256 = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34112012-256";
var XmlDsigGost3410Url2012256 = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34102012-gostr34112012-256";
function CP_SignCreate(CertName) {
cadesplugin.async_spawn(function* (args) {
var oCertName = document.getElementById(CertName);
var sCertName = oCertName.value; // Здесь следует заполнить SubjectName сертификата
if ("" === sCertName) {
alert("Введите имя сертификата (CN).");
return;
}
// Ищем сертификат для подписи
var oStore = yield cadesplugin.CreateObjectAsync("CAdESCOM.Store");
yield oStore.Open(CAPICOM_CURRENT_USER_STORE, CAPICOM_MY_STORE,
CAPICOM_STORE_OPEN_MAXIMUM_ALLOWED);
var oStoreCerts = yield oStore.Certificates;
var oCertificates = yield oStoreCerts.Find(
CAPICOM_CERTIFICATE_FIND_SUBJECT_NAME, sCertName);
var certsCount = yield oCertificates.Count;
if (certsCount === 0) {
alert("Certificate not found: " + sCertName);
return;
}
var oCertificate = yield oCertificates.Item(1);
yield oStore.Close();
var dataToSign = document.getElementById(CP_counter_name("DataToSignTxtBox")).value;
// Создаем объект CAdESCOM.CPSigner
var oSigner = yield cadesplugin.CreateObjectAsync("CAdESCOM.CPSigner");
yield oSigner.propset_Certificate(oCertificate);
yield oSigner.propset_CheckCertificate(true);
// Создаем объект CAdESCOM.SignedXML
var oSignedXML = yield cadesplugin.CreateObjectAsync("CAdESCOM.SignedXML");
yield oSignedXML.propset_Content(dataToSign);
// Указываем тип подписи - в данном случае вложенная
yield oSignedXML.propset_SignatureType(CADESCOM_XML_SIGNATURE_TYPE_ENVELOPED);
// Указываем алгоритм подписи
yield oSignedXML.propset_SignatureMethod(XmlDsigGost3410Url2012256);
// Указываем алгоритм хэширования
yield oSignedXML.propset_DigestMethod(XmlDsigGost3411Url2012256);
var sSignedMessage = "";
try {
sSignedMessage = yield oSignedXML.Sign(oSigner);
} catch (err) {
alert("Failed to create signature. Error: " + cadesplugin.getLastError(err));
return;
}
//alert(sSignedMessage);
document.getElementById(CP_counter_name("SignatureTxtBox")).innerHTML = sSignedMessage;
// Создаем объект CAdESCOM.SignedXML
var oSignedXML2 = yield cadesplugin.CreateObjectAsync("CAdESCOM.SignedXML");
try {
yield oSignedXML2.Verify(sSignedMessage);
CP_end_sign(); alert("Signature verified");
} catch (err) {
alert("Failed to verify signature. Error: " + cadesplugin.getLastError(err));
return;
}
});
}
Код почти без изменений из примера.
Вот результат подписи
var dataToSign = «<?xml version=»1.0″ encoding=»UTF-8″?>n» + «<!— n» + » Original XML doc file for sign example. n» + «—>n» + «<Envelope xmlns=»urn:envelope»>n» + » <Data>n» + » Hello, World!n» + » </Data>n» + » <Node xml:id=»nodeID»>n» + » Hello, Node!n» + » </Node>n» + » n» + «</Envelope>»;
PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPCEtLSAKIE9y aWdpbmFsIFhNTCBkb2MgZmlsZSBmb3Igc2lnbiBleGFtcGxlLiAKLS0+CjxFbnZl bG9wZSB4bWxucz0idXJuOmVudmVsb3BlIj4KICA8RGF0YT4KICAgSGVsbG8sIFdv cmxkIQogIDwvRGF0YT4KICA8Tm9kZSB4bWw6aWQ9Im5vZGVJRCI+CiAgIEhlbGxv LCBOb2RlIQogIDwvTm9kZT4KIAo8U2lnbmF0dXJlIHhtbG5zPSJodHRwOi8vd3d3 LnczLm9yZy8yMDAwLzA5L3htbGRzaWcjIiBJZD0iU2lnbmF0dXJlMS1hYzg5NzY5 MTQtZWRkMC1jNTdhLTMyODgtY2Y3OWRlNTkwNzYiPgo8U2lnbmVkSW5mbz4KPENh bm9uaWNhbGl6YXRpb25NZXRob2QgQWxnb3JpdGhtPSJodHRwOi8vd3d3LnczLm9y Zy8yMDAxLzEwL3htbC1leGMtYzE0biMiLz4KPFNpZ25hdHVyZU1ldGhvZCBBbGdv cml0aG09InVybjppZXRmOnBhcmFtczp4bWw6bnM6Y3B4bWxzZWM6YWxnb3JpdGht czpnb3N0cjM0MTAyMDEyLWdvc3RyMzQxMTIwMTItMjU2Ii8+CjxSZWZlcmVuY2Ug VVJJPSIiPgo8VHJhbnNmb3Jtcz4KPFRyYW5zZm9ybSBBbGdvcml0aG09Imh0dHA6 Ly93d3cudzMub3JnLzIwMDAvMDkveG1sZHNpZyNlbnZlbG9wZWQtc2lnbmF0dXJl Ii8+CjxUcmFuc2Zvcm0gQWxnb3JpdGhtPSJodHRwOi8vd3d3LnczLm9yZy8yMDAx LzEwL3htbC1leGMtYzE0biMiLz4KPC9UcmFuc2Zvcm1zPgo8RGlnZXN0TWV0aG9k IEFsZ29yaXRobT0idXJuOmlldGY6cGFyYW1zOnhtbDpuczpjcHhtbHNlYzphbGdv cml0aG1zOmdvc3RyMzQxMTIwMTItMjU2Ii8+CjxEaWdlc3RWYWx1ZT5rcFJWUGdh VEJ0YktoSVNjU1dDRGxJaFZiWWZhSmVmTE1wZXR1WHlHSU9rPTwvRGlnZXN0VmFs dWU+CjwvUmVmZXJlbmNlPgo8L1NpZ25lZEluZm8+CjxTaWduYXR1cmVWYWx1ZT4y Wm0rVWVtdzM2REpRR0wrUHFMM0pOVFlNQVBxRURNUHVPNlNZMmdUdkhodzZVNUQy U011ZmowUmRFMFlxdVI4CmYzK3phd2REeGpodk5FTDk5NEEyN1E9PTwvU2lnbmF0 dXJlVmFsdWU+CjxLZXlJbmZvPgo8WDUwOURhdGE+CjxYNTA5Q2VydGlmaWNhdGU+ TUlJSlZUQ0NDUUtnQXdJQkFnSVJCRnFUS1FGZnIrSzNSRnhtUUNTalFNNHdDZ1lJ S29VREJ3RUJBd0l3Z2dGVwpNUlV3RXdZRktvVURaQVFTQ2pjM01UY3hNRGM1T1RF eElEQWVCZ2txaGtpRzl3MEJDUUVXRVdsdVptOUFZM0o1CmNIUnZjSEp2TG5KMU1S Z3dGZ1lGS29VRFpBRVNEVEV3TXpjM01EQXdPRFUwTkRReEN6QUpCZ05WQkFZVEFs SlYKTVJnd0ZnWURWUVFJREE4M055RFFuTkMrMFlIUXV0Q3kwTEF4RlRBVEJnTlZC QWNNRE5DYzBMN1JnZEM2MExMUQpzREV2TUMwR0ExVUVDUXdtMFlQUXV5NGcwS0hS ZzlHSjBaSFFzdEdCMExyUXVOQzVJTkN5MExEUXV5RFF0QzRnCk1UZ3hKVEFqQmdO VkJBb01ITkNlMEo3UW5pQWkwSnJRb05DWTBKL1FvdENlTGRDZjBLRFFuaUl4YXpC cEJnTlYKQkFNTVl0Q2kwTFhSZ2RHQzBMN1FzdEdMMExrZzBML1F2dEMwMFlmUXVO QzkwTFhRdmRDOTBZdlF1U0RRbzlDbQpJTkNlMEo3UW5pQWkwSnJRb05DWTBKL1Fv dENlTGRDZjBLRFFuaUlnMEpQUW50Q2gwS0lnTWpBeE1pQW8wS1BRCnBpQXlMakFw TUI0WERUSXlNVEl3TWpFM05UTXlOMW9YRFRJek1ETXdNakU0TURNeU4xb3dnZ0dG TVJ3d0dnWUoKS29aSWh2Y05BUWtCRmcxdGEzbEFhMjl0ZFhNdWJtVjBNUmN3RlFZ RktvVURaQVFTRERBd056Y3lNVGM1TXpnNQpOVEVZTUJZR0JTcUZBMlFCRWcweE1U TTNOelEyTXprNU9EQXhNVEF3TGdZRFZRUU1EQ2ZRazlDMTBMM1F0ZEdBCjBMRFF1 OUdNMEwzUmk5QzVJTkMwMExqUmdOQzEwTHJSZ3RDKzBZQXhIREFhQmdOVkJBb01F OUNlMEo3UW5pQWkKMEpyUXZ0QzgwWVBSZ1NJeFZ6QlZCZ05WQkFrTVR0Qy8wWUF0 MExRZzBKZlFzTkN5MEw3UXROQ3dJTkNoMExYUgpnTkMvSU5DNElOQ2MwTDdRdTlD KzBZSXNJTkMwTGlBeE1Dd2cwTC9RdnRDOExpQllXRmhKV0N3ZzBMclF2dEM4Ckxp QXlNekVWTUJNR0ExVUVCd3dNMEp6UXZ0R0IwTHJRc3RDd01Rc3dDUVlEVlFRR0V3 SlNWVEV5TURBR0ExVUUKS2d3cDBKclF2dEM5MFlIUmd0Q3cwTDNSZ3RDNDBMMGcw SkRRdTlDMTBMclJnZEMxMExYUXN0QzQwWWN4R3pBWgpCZ05WQkFRTUV0Q1QwWURR dGRHSDBMalJpTkM2MExqUXZURVVNQklHQTFVRUF3d0xTMjl0ZFhOZmRHVnpkREV3 ClpqQWZCZ2dxaFFNSEFRRUJBVEFUQmdjcWhRTUNBaVFBQmdncWhRTUhBUUVDQWdO REFBUkFpbGZTTEd6ZzYyOWMKdU9iVnloQngxaTVnQUNKdnNiQ1ZoQ2FjeXBOVVNh ejQrcmJ3cWRZZUhkYnBCMW1XcWg4UUxGTEF4UkwrL3RLbApZTVNNdnprWmQ2T0NC Vzh3Z2dWck1BNEdBMVVkRHdFQi93UUVBd0lFOERBZkJna3JCZ0VFQVlJM0ZRY0VF akFRCkJnZ3FoUU1DQWk0QUNBSUJBUUlCQURBZEJnTlZIUTRFRmdRVVU2MU1PTTBL MEI4V2QwbUJIaW5zTWpFZ0dpd3cKSmdZRFZSMGxCQjh3SFFZSUt3WUJCUVVIQXdR R0NDc0dBUVVGQndNQ0JnY3FoUU1DQWlJR01ESUdDU3NHQVFRQgpnamNWQ2dRbE1D TXdDZ1lJS3dZQkJRVUhBd1F3Q2dZSUt3WUJCUVVIQXdJd0NRWUhLb1VEQWdJaUJq Q0JxQVlJCkt3WUJCUVVIQVFFRWdac3dnWmd3T1FZSUt3WUJCUVVITUFHR0xXaDBk SEE2THk5MFpYTjBZMkV5TURFeUxtTnkKZVhCMGIzQnlieTV5ZFM5dlkzTndNaTl2 WTNOd0xuTnlaakJiQmdnckJnRUZCUWN3QW9aUGFIUjBjRG92TDNSbApjM1JqWVRJ d01USXVZM0o1Y0hSdmNISnZMbkoxTDJGcFlTODRNMk15WW1Oak9XWTJNRFF5TVda aE0yWmpaV1UzCk5XRmxOREUwWmpGbVlqbGtOek16T1RabUxtTnlkREFkQmdOVkhT QUVGakFVTUFnR0JpcUZBMlJ4QWpBSUJnWXEKaFFOa2NRRXdLd1lEVlIwUUJDUXdJ b0FQTWpBeU1qRXlNREl4TnpVek1qWmFnUTh5TURJek1ETXdNakUzTlRNeQpObG93 Z2dHUUJnVXFoUU5rY0FTQ0FZVXdnZ0dCREZQUW9kQ2EwSmZRbUNBaTBKclJnTkM0 MEwvUmd0QyswSi9SCmdOQytJRU5UVUNJZzBMTFF0ZEdBMFlIUXVOR1BJRFF1TUNC U05DQW8wTGpSZ2RDLzBMN1F1OUM5MExYUXZkQzQKMExVZ01pMUNZWE5sS1F5Qmg5 Q2YwSkRRbWlEQ3E5Q2owTFRRdnRHQjBZTFF2dEN5MExYUmdOR1AwWTdSaWRDNAow TGtnMFliUXRkQzkwWUxSZ0NEQ3E5Q2EwWURRdU5DLzBZTFF2dENmMFlEUXZpRFFv OUNtd3JzZzBMTFF0ZEdBCjBZSFF1TkM0SURJdU1NSzdJQ2pRc3RDdzBZRFF1TkN3 MEwzUmdpRFF1TkdCMEwvUXZ0QzcwTDNRdGRDOTBMalIKanlBNUtReFAwS0hRdGRH QTBZTFF1TkdFMExqUXV0Q3cwWUlnMFlIUXZ0QyswWUxRc3RDMTBZTFJnZEdDMExM UQp1TkdQSU9LRWxpRFFvZENrTHpFeU5DMHpPVGN4SU5DKzBZSWdNVFV1TURFdU1q QXlNUXhQMEtIUXRkR0EwWUxRCnVOR0UwTGpRdXRDdzBZSWcwWUhRdnRDKzBZTFFz dEMxMFlMUmdkR0MwTExRdU5HUElPS0VsaURRb2RDa0x6RXkKT0MwME1qY3lJTkMr MFlJZ01UTXVNRGN1TWpBeU1qQXNCZ1VxaFFOa2J3UWpEQ0hRb2RDYTBKZlFtQ0Fp MEpyUgpnTkM0MEwvUmd0QyswSi9SZ05DK0lFTlRVQ0l3WUFZRFZSMGZCRmt3VnpC Vm9GT2dVWVpQYUhSMGNEb3ZMM1JsCmMzUmpZVEl3TVRJdVkzSjVjSFJ2Y0hKdkxu SjFMMk5rY0M4NE0yTXlZbU5qT1dZMk1EUXlNV1poTTJaalpXVTMKTldGbE5ERTBa akZtWWpsa056TXpPVFptTG1OeWJEQU1CZ1VxaFFOa2NnUURBZ0VDTUlJQmtnWURW UjBqQklJQgppVENDQVlXQUZJUEN2TW4yQkNINlA4N25XdVFVOGZ1ZGN6bHZvWUlC V0tTQ0FWUXdnZ0ZRTVFzd0NRWURWUVFHCkV3SlNWVEVWTUJNR0JTcUZBMlFFRWdv M056RTNNVEEzT1RreE1TQXdIZ1lKS29aSWh2Y05BUWtCRmhGcGJtWnYKUUdOeWVY QjBiM0J5Ynk1eWRURVlNQllHQlNxRkEyUUJFZzB4TURNM056QXdNRGcxTkRRME1S Z3dGZ1lEVlFRSQpEQTgzTnlEUW5OQyswWUhRdXRDeTBMQXhGVEFUQmdOVkJBY01E TkNjMEw3UmdkQzYwTExRc0RFdk1DMEdBMVVFCkNRd20wWVBRdXk0ZzBLSFJnOUdK MFpIUXN0R0IwTHJRdU5DNUlOQ3kwTERRdXlEUXRDNGdNVGd4SlRBakJnTlYKQkFv TUhOQ2UwSjdRbmlBaTBKclFvTkNZMEovUW90Q2VMZENmMEtEUW5pSXhaVEJqQmdO VkJBTU1YTkNpMExYUgpnZEdDMEw3UXN0R0wwTGtnMExQUXZ0QzcwTDdRc3RDOTBM N1F1U0RRbzlDbUlOQ2UwSjdRbmlBaTBKclFvTkNZCjBKL1FvdENlTGRDZjBLRFFu aUlnMEpQUW50Q2gwS0lnTWpBeE1pQW8wS1BRcGlBeUxqQXBnaEVFaURiVEFDV3YK OXE1UGxNVWtPVitaMFRBS0JnZ3FoUU1IQVFFREFnTkJBSE5tVHppcnZEVmpSOFRT d0hOc3diUlMwbmZaaGY1ZAowWkszTHArOWxtNC8wRjNHdzJUNTVvQmdQRDFUekJI U2cwRXh0Rk5ESlU0TzdjZlNmdHRNTDJ3PTwvWDUwOUNlcnRpZmljYXRlPgo8L1g1 MDlEYXRhPgo8L0tleUluZm8+CjwvU2lnbmF0dXJlPjwvRW52ZWxvcGU+Cg==
|

|
|
|
|
|
|
|
Андрей *
|
#5
Оставлено
:
17 января 2023 г. 17:13:58(UTC)
|

Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 12,010


Сказал «Спасибо»: 457 раз Поблагодарили: 1912 раз в 1478 постах
|
результат подписи — в base64, необходимо перед отправкой в сервис проверки — декодировать, получить XMDSIG файл, тогда будет проверяться успешно.
|
Техническую поддержку оказываем тут Наша база знаний
|

|
|
|
|
|
|
|
К.Лихачёв
|
#6
Оставлено
:
17 января 2023 г. 17:16:51(UTC)
|

Статус: Новичок
Группы: Участники
Зарегистрирован: 17.01.2023(UTC) Сообщений: 6
 Откуда: Москва
|
Автор: Андрей * 
Автор: К.Лихачёв 
выдается ошибка: Результат проверки: Подпись недействительна Дополнительная информация: Файл подписи имеет неверный формат. Убедитесь, что данные в файле имеют кодировку Base64 (с/без заголовками) или переданы бинарные данные. Ошибка: [Встречено неверное значение тега ASN1]. Код: [0x8009310b].
Причем не важно что я подписываю sContent из примера или реальный документ.
Подскажите: что я делаю не так?
вероятно, указан не тот тип подписи при проверке?
Цитата:
Подпись XML документов (XML Digital Signature) — правильно Подпись в формате CMS — неправильно
При проверке https://www.justsign.me/verifyqca/Verify/ не указывается тип подписи.
Что такое подпись CMS? Где это указано неправильно?
|

|
|
|
|
|
|
|
К.Лихачёв
|
#7
Оставлено
:
17 января 2023 г. 17:20:30(UTC)
|

Статус: Новичок
Группы: Участники
Зарегистрирован: 17.01.2023(UTC) Сообщений: 6
 Откуда: Москва
|
Автор: Андрей * 
результат подписи — в base64, необходимо перед отправкой в сервис проверки — декодировать, получить XMDSIG файл, тогда будет проверяться успешно.
Декодировал. Результат не изменился!
<?xml version=»1.0″ encoding=»UTF-8″?> <!— Original XML doc file for sign example. —> <Envelope xmlns=»urn:envelope»> <Data> Hello, World! </Data> <Node xml:id=»nodeID»> Hello, Node! </Node>
<Signature xmlns=»http://www.w3.org/2000/09/xmldsig#» Id=»Signature1-ac8976914-edd0-c57a-3288-cf79de59076″> <SignedInfo> <CanonicalizationMethod Algorithm=»http://www.w3.org/2001/10/xml-exc-c14n#»/> <SignatureMethod Algorithm=»urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34102012-gostr34112012-256″/> <Reference URI=»»> <Transforms> <Transform Algorithm=»http://www.w3.org/2000/09/xmldsig#enveloped-signature»/> <Transform Algorithm=»http://www.w3.org/2001/10/xml-exc-c14n#»/> </Transforms> <DigestMethod Algorithm=»urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34112012-256″/> <DigestValue>kpRVPgaTBtbKhIScSWCDlIhVbYfaJefLMpetuXyGIOk=</DigestValue> </Reference> </SignedInfo> <SignatureValue>2Zm+Uemw36DJQGL+PqL3JNTYMAPqEDMPuO6SY2gTvHhw6U5D2SMufj0RdE0YquR8 f3+zawdDxjhvNEL994A27Q==</SignatureValue> <KeyInfo> <X509Data> <X509Certificate>MIIJVTCCCQKgAwIBAgIRBFqTKQFfr+K3RFxmQCSjQM4wCgYIKoUDBwEBAwIwggFW MRUwEwYFKoUDZAQSCjc3MTcxMDc5OTExIDAeBgkqhkiG9w0BCQEWEWluZm9AY3J5 cHRvcHJvLnJ1MRgwFgYFKoUDZAESDTEwMzc3MDAwODU0NDQxCzAJBgNVBAYTAlJV MRgwFgYDVQQIDA83NyDQnNC+0YHQutCy0LAxFTATBgNVBAcMDNCc0L7RgdC60LLQ sDEvMC0GA1UECQwm0YPQuy4g0KHRg9GJ0ZHQstGB0LrQuNC5INCy0LDQuyDQtC4g MTgxJTAjBgNVBAoMHNCe0J7QniAi0JrQoNCY0J/QotCeLdCf0KDQniIxazBpBgNV BAMMYtCi0LXRgdGC0L7QstGL0Lkg0L/QvtC00YfQuNC90LXQvdC90YvQuSDQo9Cm INCe0J7QniAi0JrQoNCY0J/QotCeLdCf0KDQniIg0JPQntCh0KIgMjAxMiAo0KPQ piAyLjApMB4XDTIyMTIwMjE3NTMyN1oXDTIzMDMwMjE4MDMyN1owggGFMRwwGgYJ KoZIhvcNAQkBFg1ta3lAa29tdXMubmV0MRcwFQYFKoUDZAQSDDAwNzcyMTc5Mzg5 NTEYMBYGBSqFA2QBEg0xMTM3NzQ2Mzk5ODAxMTAwLgYDVQQMDCfQk9C10L3QtdGA 0LDQu9GM0L3Ri9C5INC00LjRgNC10LrRgtC+0YAxHDAaBgNVBAoME9Ce0J7QniAi 0JrQvtC80YPRgSIxVzBVBgNVBAkMTtC/0YAt0LQg0JfQsNCy0L7QtNCwINCh0LXR gNC/INC4INCc0L7Qu9C+0YIsINC0LiAxMCwg0L/QvtC8LiBYWFhJWCwg0LrQvtC8 LiAyMzEVMBMGA1UEBwwM0JzQvtGB0LrQstCwMQswCQYDVQQGEwJSVTEyMDAGA1UE Kgwp0JrQvtC90YHRgtCw0L3RgtC40L0g0JDQu9C10LrRgdC10LXQstC40YcxGzAZ BgNVBAQMEtCT0YDQtdGH0LjRiNC60LjQvTEUMBIGA1UEAwwLS29tdXNfdGVzdDEw ZjAfBggqhQMHAQEBATATBgcqhQMCAiQABggqhQMHAQECAgNDAARAilfSLGzg629c uObVyhBx1i5gACJvsbCVhCacypNUSaz4+rbwqdYeHdbpB1mWqh8QLFLAxRL+/tKl YMSMvzkZd6OCBW8wggVrMA4GA1UdDwEB/wQEAwIE8DAfBgkrBgEEAYI3FQcEEjAQ BggqhQMCAi4ACAIBAQIBADAdBgNVHQ4EFgQUU61MOM0K0B8Wd0mBHinsMjEgGiww JgYDVR0lBB8wHQYIKwYBBQUHAwQGCCsGAQUFBwMCBgcqhQMCAiIGMDIGCSsGAQQB gjcVCgQlMCMwCgYIKwYBBQUHAwQwCgYIKwYBBQUHAwIwCQYHKoUDAgIiBjCBqAYI KwYBBQUHAQEEgZswgZgwOQYIKwYBBQUHMAGGLWh0dHA6Ly90ZXN0Y2EyMDEyLmNy eXB0b3Byby5ydS9vY3NwMi9vY3NwLnNyZjBbBggrBgEFBQcwAoZPaHR0cDovL3Rl c3RjYTIwMTIuY3J5cHRvcHJvLnJ1L2FpYS84M2MyYmNjOWY2MDQyMWZhM2ZjZWU3 NWFlNDE0ZjFmYjlkNzMzOTZmLmNydDAdBgNVHSAEFjAUMAgGBiqFA2RxAjAIBgYq hQNkcQEwKwYDVR0QBCQwIoAPMjAyMjEyMDIxNzUzMjZagQ8yMDIzMDMwMjE3NTMy NlowggGQBgUqhQNkcASCAYUwggGBDFPQodCa0JfQmCAi0JrRgNC40L/RgtC+0J/R gNC+IENTUCIg0LLQtdGA0YHQuNGPIDQuMCBSNCAo0LjRgdC/0L7Qu9C90LXQvdC4 0LUgMi1CYXNlKQyBh9Cf0JDQmiDCq9Cj0LTQvtGB0YLQvtCy0LXRgNGP0Y7RidC4 0Lkg0YbQtdC90YLRgCDCq9Ca0YDQuNC/0YLQvtCf0YDQviDQo9Cmwrsg0LLQtdGA 0YHQuNC4IDIuMMK7ICjQstCw0YDQuNCw0L3RgiDQuNGB0L/QvtC70L3QtdC90LjR jyA5KQxP0KHQtdGA0YLQuNGE0LjQutCw0YIg0YHQvtC+0YLQstC10YLRgdGC0LLQ uNGPIOKEliDQodCkLzEyNC0zOTcxINC+0YIgMTUuMDEuMjAyMQxP0KHQtdGA0YLQ uNGE0LjQutCw0YIg0YHQvtC+0YLQstC10YLRgdGC0LLQuNGPIOKEliDQodCkLzEy OC00MjcyINC+0YIgMTMuMDcuMjAyMjAsBgUqhQNkbwQjDCHQodCa0JfQmCAi0JrR gNC40L/RgtC+0J/RgNC+IENTUCIwYAYDVR0fBFkwVzBVoFOgUYZPaHR0cDovL3Rl c3RjYTIwMTIuY3J5cHRvcHJvLnJ1L2NkcC84M2MyYmNjOWY2MDQyMWZhM2ZjZWU3 NWFlNDE0ZjFmYjlkNzMzOTZmLmNybDAMBgUqhQNkcgQDAgECMIIBkgYDVR0jBIIB iTCCAYWAFIPCvMn2BCH6P87nWuQU8fudczlvoYIBWKSCAVQwggFQMQswCQYDVQQG EwJSVTEVMBMGBSqFA2QEEgo3NzE3MTA3OTkxMSAwHgYJKoZIhvcNAQkBFhFpbmZv QGNyeXB0b3Byby5ydTEYMBYGBSqFA2QBEg0xMDM3NzAwMDg1NDQ0MRgwFgYDVQQI DA83NyDQnNC+0YHQutCy0LAxFTATBgNVBAcMDNCc0L7RgdC60LLQsDEvMC0GA1UE CQwm0YPQuy4g0KHRg9GJ0ZHQstGB0LrQuNC5INCy0LDQuyDQtC4gMTgxJTAjBgNV BAoMHNCe0J7QniAi0JrQoNCY0J/QotCeLdCf0KDQniIxZTBjBgNVBAMMXNCi0LXR gdGC0L7QstGL0Lkg0LPQvtC70L7QstC90L7QuSDQo9CmINCe0J7QniAi0JrQoNCY 0J/QotCeLdCf0KDQniIg0JPQntCh0KIgMjAxMiAo0KPQpiAyLjApghEEiDbTACWv 9q5PlMUkOV+Z0TAKBggqhQMHAQEDAgNBAHNmTzirvDVjR8TSwHNswbRS0nfZhf5d 0ZK3Lp+9lm4/0F3Gw2T55oBgPD1TzBHSg0ExtFNDJU4O7cfSfttML2w=</X509Certificate> </X509Data> </KeyInfo> </Signature></Envelope>
|

|
|
|
|
|
|
|
Андрей *
|
#8
Оставлено
:
17 января 2023 г. 17:32:48(UTC)
|

Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 12,010


Сказал «Спасибо»: 457 раз Поблагодарили: 1912 раз в 1478 постах
|
как не изменился?
Почему у меня показывает, что подпись корректна математически?
Snimok ehkrana ot 2023-01-17 18-28-52.png (26kb) загружен 6 раз(а).
|
Техническую поддержку оказываем тут Наша база знаний
|

|
|
|
|
|
|
|
Андрей *
|
#9
Оставлено
:
17 января 2023 г. 17:40:43(UTC)
|

Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 12,010


Сказал «Спасибо»: 457 раз Поблагодарили: 1912 раз в 1478 постах
|
Автор: К.Лихачёв 
При проверке https://www.justsign.me/verifyqca/Verify/ не указывается тип подписи.
Что такое подпись CMS? Где это указано неправильно?
Snimok ehkrana ot 2023-01-17 18-33-31.png (48kb) загружен 2 раз(а).
Выше текстовая строка с xml — не содержит нескольких пробелов, которые есть в результате от плагина (если декодировать из base64) и сравнить.
changes.png (40kb) загружен 3 раз(а).
|
Техническую поддержку оказываем тут Наша база знаний
|

|
|
|
|
|
|
|
Андрей *
|
#10
Оставлено
:
17 января 2023 г. 17:50:08(UTC)
|

Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 12,010


Сказал «Спасибо»: 457 раз Поблагодарили: 1912 раз в 1478 постах
|
декодированные данные из сообщения #4 в файле:
file.xml (5kb) загружен 0 раз(а).
успешно проверяется.
Доверия к тестовому корневому нет на стороне сервиса.
|
Техническую поддержку оказываем тут Наша база знаний
|

|
|
|
|
|
|
|
| Пользователи, просматривающие эту тему |
|
Guest
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Windows Server 2008, редакция web, service pack 2
На последней стадии установки ssl-сертификата, через «запрос установки сертификата…» получаю ошибку:
CertEnroll::CX509Enrollment::p_InstallResponse: Встречено неверное значение тега ASN1. 0x8009310b
(ASN: 267)
С чем это может быть связано? До этого на сервере уже устанавливались два других сертификата, в обоих случаях успешно, порядок установки не менялся.
Возможно, вам также будет интересно:
Ошибка электронной подписи 80091007 электронная подпись не совпадает
Ошибка электронной подписи 8007065в
Ошибка энкодера epson что это
Ошибка энкодера epson l800
Ошибка энкодера epson l210
Понравилась статья? Поделить с друзьями: