Доброго времени суток, есть ли метод у модуля “kz.gov.pki.knca.commonUtils”, который выполняет подпись сразу с меткой времени?
Методы “createCAdESFromBase64” и “createCAdESFromFile” делают это без метки
Подпись с меткой времени на JS
Здравствуйте, такого метода в модуе Common Bundle нет. Метка добавляется только через дополнительный вызов метода applyCAdEST.
А как же createCMSSignatureFromBase64
?
Есть ли варианты реализации такого функционала с другими модулями? Чтобы выполнять подпись сразу с меткой времени и на выходе получать Base64 либо файл
Добрый день! Это означает что пользователю (клиенту) придется два раза подписывать файл? А если хотим этого избежать можно ли будет на серверной части проверить подпись а затем добавить метку времени для хранения подписанного файла?
Есть модуль ezSigner.kz, но так как он не входит в SDK НУЦ РК в случае изменения его методов вы не будете об этом заранее оповещены. Также вашим пользователям нужно будет сообщить о необходимости установки этого модуля, так как он не устанавливается по умолчанию вместе с NCALayer.
Касательно модулей других систем вам нужно обращаться к ним напрямую.
А как же
createCMSSignatureFromBase64
?
Этот метод обозначен как deprecated.
Здравствуйте. Данные подписываются один раз, вы их передаете в виде параметра во второй метод как указано в примере. Вы можете добавить метку на стороне сервера, но стоит учесть что могут возникнуть проблемы связаные с промежутком времени между подписью и созданием метки. В будущем планируется добавление метода, где метку можно ставить одновременно с подписью.
Вы можете на серверной стороне пользоваться сервисом SIGEX (https://sigex.kz/support/info/) для проверки подписи. Он автоматически получит метку времени для подписи и OCSP ответ, то есть соберет все необходимые доказательства для долгосрочного хранения электронных документов.
данный метод еще будет доступен до добавления нового варианта подписания с временной меткой? его можно использовать?
Deprecated методы могут быть удалены в любом из будущих обновлений.
Какой флаг можно использовать для получения сертификата при проверке подписанных данных (_kalkan.verifyData)?
Чтобы в дальнейшем проверить с помощью метода (_kalkan.X509ValidateCertificate). Или оно не требуется?
Добрый день!
Флаг для этого не нужен. В методе VerifyData() есть переменная inCertID. Передайте значение 1, тогда получите в переменной outCert первый сертификат в подписи. Если подписантов несколько, то соответственно другое значение(2,3,…).
Также можете извлечь сертификат из CMS с помощью метода GetCertFromCMS().
Добрый день! Можете объяснит как проверка ведет себя? Я отправляю подписанные данные в формате Base64. И проверка методом verifyData() то возвращает ошибку 0x08F0001B, то проходит проверку. При том что я отправляю для проверки одни и те же данные.
Добрый день!
Отправьте файл с подписью, которая периодически возвращает ошибку при проверке на почту knca@pki.gov.kz.
Какую версию библиотеки используете?
KalkanCryptCOM v2.6.1.5
Добрый день, а какой метод можно использовать, если этот удалиться?
Добрый день. Можно использовать все методы указанные в примере \SDK 2.0\NCALayer\commonbundle_sample
Можно ли эти методы использовать в автомате? Без ручного ввода пароля и указания пути к ключу подписи?
Пароль и путь запрашиваются при каждой операции с ключами в целях безопасности.
Добрый день, коллеги.
Получаю такую ошибку:
Sign data
149946439
ERROR 0x8f00047: Get TSA token - getaddrinfo failed with error: -2.
ERROR 0x8f00047: Get TSA token - FAILED.
ERROR 0x8f00047: Get TSA token - FAILED.
Мне нужно подключить получение времени через?
$tsaurl = "http://tsp.pki.gov.kz:80";
KalkanCrypt_TSASetUrl($tsaurl);
Добавил и проверил.