Национальный удостоверяющий центр РК - Национальный удостоверяющий центр РК - Forum Kunena Site Syndication https://pki.gov.kz/ Tue, 12 Nov 2019 11:59:10 +0600 Kunena 1.6 https://pki.gov.kz/components/com_kunena/template/default/images/icons/rss.png Национальный удостоверяющий центр РК - Forum https://pki.gov.kz/ en-gb Subject: Регистрация KalkanCryptCOM.dll на Windows Server - by: Zadavator200 https://pki.gov.kz/index.php/en/forum/7/5480-kalkancryptcom-dll-windows-server#5480 https://pki.gov.kz/index.php/en/forum/7/5480-kalkancryptcom-dll-windows-server#5480 Для проверки валидности подписи XML на стороне сервера используем KalkanCryptCOM.dll
Но возникли трудности с KalkanCryptCOM.dll. Начиная с Windows 8/Server 2012 для нормальной работы не хватает взаимосвязанных библиотек(на приложенном изображении для Server 2012), в Server 2019 значительно больше отсутствует, что не позволяет даже зарегистрировать библиотеку в системе. Не зависит от выбранной битности. Установлены распространяемые пакеты Visual C++ для Visual Studio начиная с 13 версии.
Есть ли готовое решение этой проблемы? Будет ли исправляться данный недочет?]]>
Для разработчиков Mon, 11 Nov 2019 08:53:09 +0600
Subject: Ошибка при попытке подписи XML (C#) - by: guest92 https://pki.gov.kz/index.php/en/forum/7/5472-xml-c#5472 https://pki.gov.kz/index.php/en/forum/7/5472-xml-c#5472
Пытаюсь подписать тестовую xml вида:
<?xml version="1.0" encoding="UTF-8"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>

В параметрах метода SignXML(alias, flags, signNodeId, parentSignNode, parentNameSpace, inData, out outSign)
не меняю ничего (тестовый пример), кроме своей xml, что я делаю не так?

В ответ получаю:

Error: 0x08F00029
XMLSec Initialize - OK.

XMLSec check version - OK.

XMLSec crypto init - OK.

XMLSec crypto library init - OK.

ERROR 0x05: XMLSec-error:
func=xmlSecXPathDataExecute:file=xpath.c:line=247:obj=unknown:subj=xmlXPtrEval:error=5:libxml2 library function failed:expr=xpointer(id('123')); xml error: 0: NULL


ERROR 0x01: XMLSec-error:
func=xmlSecXPathDataListExecute:file=xpath.c:line=330:obj=unknown:subj=xmlSecXPathDataExecute:error=1:xmlsec library function failed:


ERROR 0x01: XMLSec-error:
func=xmlSecTransformXPathExecute:file=xpath.c:line=431:obj=xpointer:subj=xmlSecXPathDataListExecute:error=1:xmlsec library function failed:


ERROR 0x01: XMLSec-error:
func=xmlSecTransformDefaultPushXml:file=transforms.c:line=2109:obj=xpointer:subj=xmlSecTransformExecute:error=1:xmlsec library function failed:


ERROR 0x01: XMLSec-error:
func=xmlSecTransformCtxXmlExecute:file=transforms.c:line=1045:obj=xpointer:subj=xmlSecTransformPushXml:error=1:xmlsec library function failed:


ERROR 0x01: XMLSec-error:
func=xmlSecTransformCtxExecute:file=transforms.c:line=1092:obj=unknown:subj=xmlSecTransformCtxXmlExecute:error=1:xmlsec library function failed:


ERROR 0x01: XMLSec-error:
func=xmlSecDSigReferenceCtxProcessNode:file=xmldsig.c:line=1408:obj=unknown:subj=xmlSecTransformCtxExecute:error=1:xmlsec library function failed:


ERROR 0x01: XMLSec-error:
func=xmlSecDSigCtxProcessReferences:file=xmldsig.c:line=753:obj=Reference:subj=xmlSecDSigReferenceCtxProcessNode:error=1:xmlsec library function failed:


ERROR 0x01: XMLSec-error:
func=xmlSecDSigCtxProcessSignatureNode:file=xmldsig.c:line=517:obj=unknown:subj=xmlSecDSigCtxProcessReferences:error=1:xmlsec library function failed:


ERROR 0x01: XMLSec-error:
func=xmlSecDSigCtxSign:file=xmldsig.c:line=291:obj=unknown:subj=xmlSecDSigCtxProcessSignatureNode:error=1:xmlsec library function failed:


ERROR 0x8f00029: XMLSec sign xml - set signature failed.

ERROR 0x8f00029: XMLSec sign xml - FAILED.


Решено: Неверно указан signNodeId]]>
Для разработчиков Fri, 08 Nov 2019 18:13:29 +0600
Subject: Проблемы с запуском программы - by: dooons https://pki.gov.kz/index.php/en/forum/4/5468#5468 https://pki.gov.kz/index.php/en/forum/4/5468#5468

Система: Ubuntu 18.04.03]]>
Для пользователей НУЦ РК Thu, 07 Nov 2019 20:56:36 +0600
Subject: Не запускается NCA Layer на корпоративной машине - by: Alishka https://pki.gov.kz/index.php/en/forum/7/5467-nca-layer#5467 https://pki.gov.kz/index.php/en/forum/7/5467-nca-layer#5467 cd %APPDATA%\NCALayer
java -jar NCALayer.exe
Запускается данный .bat файл и NCA Layer запускается нашей установленной Java.
Не могли бы вы помочь в решений вопроса почему NCA Layer не запускается, хотелось бы использовать приложение без костыля. Установил корпоративную Java и пробовал удалить папку jre в папке AppData\Roaming\NCALayer, не помогло.
Благодарю.]]>
Для разработчиков Thu, 07 Nov 2019 15:04:05 +0600
Subject: Долго подписывает документы. - by: sd1990_21 https://pki.gov.kz/index.php/en/forum/7/5466#5466 https://pki.gov.kz/index.php/en/forum/7/5466#5466 При подписании документа уходит секунд 30, хотя должно подписывать за секунды 3. При демонстрации 30 секунд - это много. Подскажите, в чем проблема? Nclayer переустанавливали.]]> Для разработчиков Thu, 07 Nov 2019 13:57:54 +0600 Subject: Пароль - by: tauieshieva@mail.ru https://pki.gov.kz/index.php/en/forum/4/5457#5457 https://pki.gov.kz/index.php/en/forum/4/5457#5457 Для пользователей НУЦ РК Tue, 05 Nov 2019 16:29:49 +0600 Subject: ЭЦП в Android и iOS через сим-карту - by: mrtusup https://pki.gov.kz/index.php/en/forum/7/5449-android-ios#5449 https://pki.gov.kz/index.php/en/forum/7/5449-android-ios#5449 Есть ли возможность подписи через ЭЦП с сим-карты? Есть ли SDK для этого?]]> Для разработчиков Mon, 04 Nov 2019 14:58:15 +0600 Subject: Нужна помощь! не могу запустить NCALayer - by: Dmitriy111 https://pki.gov.kz/index.php/en/forum/4/5439-ncalayer?limit=6&start=6#5439 https://pki.gov.kz/index.php/en/forum/4/5439-ncalayer?limit=6&start=6#5439 Для пользователей НУЦ РК Mon, 04 Nov 2019 03:26:53 +0600 Subject: Как поменять e-mail в эцп - by: Evgeniya_615_88@mail.ru https://pki.gov.kz/index.php/en/forum/5/5437-e-mail#5437 https://pki.gov.kz/index.php/en/forum/5/5437-e-mail#5437 Для операторов НУЦ РК Sat, 02 Nov 2019 23:44:05 +0600 Subject: Как поменять e-mail вцп - by: Evgeniya_615_88@mail.ru https://pki.gov.kz/index.php/en/forum/4/5436-e-mail#5436 https://pki.gov.kz/index.php/en/forum/4/5436-e-mail#5436 Для пользователей НУЦ РК Sat, 02 Nov 2019 23:39:57 +0600 Subject: gost34310-gost34311 does not exist. - by: arsenguzhva https://pki.gov.kz/index.php/en/forum/7/5435-gost34310-gost34311-does-not-exist#5435 https://pki.gov.kz/index.php/en/forum/7/5435-gost34310-gost34311-does-not-exist#5435
Не может найти алгоритмы подписи ГОСТ

The requested algorithm www.w3.org/2001/04/xmldsig-more#gost34310-gost34311 does not exist.

В какой библиотеке они подтягиваются?]]>
Для разработчиков Sat, 02 Nov 2019 12:44:13 +0600
Subject: адресная справка - by: aiman https://pki.gov.kz/index.php/en/forum/7/5430#5430 https://pki.gov.kz/index.php/en/forum/7/5430#5430 Для разработчиков Fri, 01 Nov 2019 12:36:41 +0600 Subject: Реализаций на JS и PHP - by: Stilant https://pki.gov.kz/index.php/en/forum/7/5428-js-php#5428 https://pki.gov.kz/index.php/en/forum/7/5428-js-php#5428
Суть сабжа: Есть сайт на php. На одной из страниц есть форма подачи заявления, в которой размещаются несколько полей (из которых потом формируется на сервере файл заявления) и пара инпутов для заливки необходимых документов

Начал изучать SDK, информацию в интернете. Все равно ничего не понятно, а именно:
1. Как на фронте, через ncalayer, я должен подписать эту форму с данными и файлами
2. Что отправить я должен на сервер, для юридической правильности и законности подписи?
3. Как на сервере я должен делать проверку подписи? (Kalkan уже подключили)
4. Что в итоге я должен сохранить уже в базе (файлы, ключ, хеш) сохранить?

Просьба описать чуть ли не названиями функций

Так же слегка не понятна как работает система подписания через xml (как она формируется и из каких исходных данных)]]>
Для разработчиков Fri, 01 Nov 2019 01:01:47 +0600
Subject: Как подписать существующую подпись с NCALayer - by: Yerassyl https://pki.gov.kz/index.php/en/forum/7/5425-ncalayer#5425 https://pki.gov.kz/index.php/en/forum/7/5425-ncalayer#5425
Не могу разобраться как подписать уже подписанный документ на стороне клиента с помощью NCALayer.

Пробовал отправлять CMS в метод createCAdESFromBase64Hash , но получаю Illegal base64 character a]]>
Для разработчиков Thu, 31 Oct 2019 11:14:34 +0600
Subject: Добавить в maven kalkancrypt-0.1.1.jar - by: arsenguzhva https://pki.gov.kz/index.php/en/forum/7/5419-maven-kalkancrypt-0-1-1-jar?limit=6&start=6#5419 https://pki.gov.kz/index.php/en/forum/7/5419-maven-kalkancrypt-0-1-1-jar?limit=6&start=6#5419 Локально установил зависимость в POM файле:



На локальной машине все работает. Но после сборки JAR-файла проекта, эта зависимость естественно туда не попадает. И на другом сервере проект не работает. Как встроисть эту библиотеку в мой JAR чтоб ?]]>
Для разработчиков Wed, 30 Oct 2019 13:16:31 +0600
Subject: Ошибка формирования подписи при входе на сайт - by: __Ruslan__ https://pki.gov.kz/index.php/en/forum/4/5415#5415 https://pki.gov.kz/index.php/en/forum/4/5415#5415
Ошибка при формировании подписи, попробуйте повторить действие либо обратитесь в техническую поддержку веб-портала государственных закупок."]]>
Для пользователей НУЦ РК Mon, 28 Oct 2019 20:03:15 +0600
Subject: ocspResponse INTERNAL_ERROR - by: fb_Tarrask https://pki.gov.kz/index.php/en/forum/7/5412-ocspresponse-internal-error#5412 https://pki.gov.kz/index.php/en/forum/7/5412-ocspresponse-internal-error#5412
при работе данного кода

URL url = new URL("ocsp.pki.gov.kz");
HttpURLConnection con = (HttpURLConnection)url.openConnection();
con.setRequestProperty("Content-Type", "application/ocsp-request");
con.setRequestProperty("Accept", "application/ocsp-response");
con.setDoOutput(true);
OutputStream out = con.getOutputStream();
DataOutputStream dataOut = new DataOutputStream(new BufferedOutputStream(out));
dataOut.write(array);
dataOut.flush();
dataOut.close();
if (con.getResponseCode() / 100 != 2) {
throw new IOException("invalid.http.response.1" + con.getResponseCode());
}
InputStream in = (InputStream)con.getContent();
ASN1InputStream input = new ASN1InputStream(in);
DERSequence sequence = (DERSequence)input.readObject();
OCSPResponse resp1 = OCSPResponse.getInstance(sequence);
OCSPResp ocspResponse = new OCSPResp(resp1);
if (ocspResponse.getStatus() != 0) {
throw new IOException("invalid.status.1" + ocspResponse.getStatus());
}

и совсем неясно из за чего это может быть. Может вы сможеет что нибудь подсказать]]>
Для разработчиков Fri, 25 Oct 2019 12:22:56 +0600
Subject: Ошибка StackBufferOverrun в KalkanCryptCOM (C#) - by: kovalev93 https://pki.gov.kz/index.php/en/forum/7/5409-stackbufferoverrun-kalkancryptcom-c#5409 https://pki.gov.kz/index.php/en/forum/7/5409-stackbufferoverrun-kalkancryptcom-c#5409
Столкнулся с ошибкой "Stack Buffer Overrun" (0xc0000409) при реализации проверки подписи на стороне сервера.

Порядок действий:

1. Подписываю документ форматом CMS с помощью NCALayer;
2. Передаю на сервер полученную подпись;
3. На сервере помощью библиотеки KalkanCryptCOM проверяю подпись функцией VerifyData

Если я правильно понял, то подпись полученная от NCALayer преобразована в формат Base64.

Соответственно при выставлении флага KC_IN_BASE64 приложение вылетает с ошибкой "Stack Buffer Overrun", при чем на уровне ОС.

Пробовал заменить флаг KC_IN_BASE64 на KC_IN_PEM, получаю ошибку "ERROR 0x8f0001e: Load CMS error:0906D064:PEM routines:PEM_read_bio:bad base64 decode"

Подскажите пожалуйста что я делаю не так?

C# .net472]]>
Для разработчиков Thu, 24 Oct 2019 15:36:03 +0600
Subject: Подписание хеша множеством подписей - by: Yerassyl https://pki.gov.kz/index.php/en/forum/7/5402#5402 https://pki.gov.kz/index.php/en/forum/7/5402#5402
Как я понимаю подписав, например хеш документа, я получаю CMS. И я могу проверить что CMS содержит подпись данного документа (c помощью KalkanCom).

Теперь я хочу подписать CMS другой подписью, в данном случае я получу измененную CMS содержащую 2 подписи. Как описано здесьздесь

Вопрос - как я могу проверить, что тот же документ подписан и второй подписью ?]]>
Для разработчиков Wed, 23 Oct 2019 16:14:20 +0600
Subject: Метод VerifyData в библиотеке KalkanCrypt - by: Quazar https://pki.gov.kz/index.php/en/forum/7/5401-verifydata-kalkancrypt#5401 https://pki.gov.kz/index.php/en/forum/7/5401-verifydata-kalkancrypt#5401 Для разработчиков Wed, 23 Oct 2019 16:03:36 +0600 Subject: Извлечение подписанного файла из CMS - by: Quazar https://pki.gov.kz/index.php/en/forum/7/5399-cms#5399 https://pki.gov.kz/index.php/en/forum/7/5399-cms#5399 Для разработчиков Tue, 22 Oct 2019 17:38:59 +0600 Subject: Сохранение пароля от ключа на стороне пользователя - by: yerke https://pki.gov.kz/index.php/en/forum/7/5397#5397 https://pki.gov.kz/index.php/en/forum/7/5397#5397 Для разработчиков Mon, 21 Oct 2019 16:16:06 +0600 Subject: Проверка ЭЦП посредством KalkanCrypt PHP Linux - by: elPumba https://pki.gov.kz/index.php/en/forum/7/5396-kalkancrypt-php-linux#5396 https://pki.gov.kz/index.php/en/forum/7/5396-kalkancrypt-php-linux#5396
Хотелось бы уточнить порядок проверки ЭЦП средствами РНР расширения KalkanCrypt. В Правилах проверки подлинности электронной цифровой подписи установлен следующий порядок проверки ЭП.

Этап 1. Проверка ЭЦП в электронном документе
1.1. С помощью открытого ключа ЭЦП отправителя дешифруется хэш сообщения (подпись отправителя);
1.2. С помощью хэш-функции вычисляется контрольная сумма оригинального сообщения.
1.3. Сравнение двух контрольных сумм

Как я понимаю этот этап реализован с помощью методов KalkanCrypt_VerifyData() или KalkanCrypt_VerifyXML(). С этим все понятно и вопросов нет.

Этап 2. Проверка регистрационного свидетельства подписывающей стороны.
2.1. Проверка срока действия регистрационного свидетельства.
2.2. Проверка регистрационного свидетельства на отозванность (аннулирование).
2.3. Проверка области использования ЭЦП регистрационного свидетельства.
2.4. Проверка номера политики регистрационного свидетельства и разрешенных способах его использования.
2.5. Проверка построения корректной цепочки от проверяемого регистрационного свидетельства до доверенного корневого регистрационного свидетельства удостоверяющего центра, с учетом промежуточных регистрационных свидетельств удостоверяющих центров;
2.6. Проверка метки времени.
2.7. Проверка полномочий лица подписавшего документ (не обязательный и в нашей системе не используется)

Пункты 2.1, 2.2 и 2.5 реализуются через функцию KalkanCrypt_X509ValidateCertificate(). С ними тоже все понятно и вопросов нет.

Пункт 2.3 (Проверка области использования ЭЦП регистрационного свидетельства) можно реализовать посредством метода KalkanCrypt_X509CertificateGetInfo() с опцией KC_CERTPROP_KEY_USAGE с проверкой на наличие digitalSignature и nonRepudiation. С этим тоже все понятно.

А далее вопросы:

Пункт 2.4. Проверка номера политики регистрационного свидетельства и разрешенных способах его использования. В функции KalkanCrypt_X509CertificateGetInfo() отсутствует параметр для вызова поля certificatePolicies. В принципе это не проблема и можно воспользоваться РНР функцией openssl_x509_parse() и получить все поля сертификата. Но каким идентификаторам должно соответствовать значение этого поля? В сертификате есть ссылка на регламент pki.gov.kz/cps, но при попытке открыть ссылку происходит редирект на главную страницу сайта. Можно ли более подробно осветить данный этап проверки?

Следующий вопрос: Существует ли на данный момент возможность получения OCSP квитанции при подписании документа и можно ли её получить средствами KalkanCrypt PHP на Linux?]]>
Для разработчиков Mon, 21 Oct 2019 10:46:14 +0600