Статус: Новичок
Группы: Участники
Зарегистрирован: 17.03.2008(UTC) Сообщений: 9
|
Мне нужно узнать дату и время создания усовершенствованной ЭЦП. Как я понял, для этого нужно воспользоваться функцией CadesMsgGetSignatureTimestamps. В документации написано, что она возвращает "массив закодированных штампов времени". Непонятно, что с ним делать дальше. Как его расшифровать?
|
|
|
|
Статус: Вам и не снилось
Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC) Сообщений: 831 Откуда: Крипто-Про
Сказал(а) «Спасибо»: 1 раз Поблагодарили: 48 раз в 44 постах
|
Блоб штампа нужно разобрать, например, с помощью КриптоПро TSP Client. Для этого нужно установить КриптоПро TSP SDK и воспользоваться документацией.
В будущей версии КриптоПро ЭЦП предусмотрен возврат времени подписания документа в структуре CADES_VERIFICATION_INFO. |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 28.10.2009(UTC) Сообщений: 15 Откуда: Москва
|
Добрый день, у меня подобная проблема, работаю через CodesCom подписал данные усовершенствованной подписью, подпись проверяется а как достать штамп времени из подписи по средствам COM-объектов не понимаю, помогите пожалуйста!
|
|
|
|
Статус: Сотрудник
Группы: Администраторы, Участники Зарегистрирован: 10.12.2008(UTC) Сообщений: 924 Откуда: Крипто-Про Поблагодарили: 99 раз в 95 постах
|
BRN написал:Добрый день, у меня подобная проблема, работаю через CodesCom подписал данные усовершенствованной подписью, подпись проверяется а как достать штамп времени из подписи по средствам COM-объектов не понимаю, помогите пожалуйста! Достать штамп времени Вы можете, запросив у нужной Вам подписи коллекцию неподписанных атрибутов (свойство UnauthenticatedAttributes объекта CPSigner), после чего следует среди этих атрибутов найти нужный Вам штамп времени - по его OID'у (sz_id_aa_signatureTimeStampToken "1.2.840.113549.1.9.16.2.14"). Далее декодируете значение атрибута в штамп времени (например при помощи метода Import объекта TSPStamp из tspcom) и запрашиваете время подписи. Возможно, в следующих версиях cadessdk будет добавлено соответствующее свойство объекту CPSigner.
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 28.10.2009(UTC) Сообщений: 15 Откуда: Москва
|
Я прошу прощения, но, не могли бы вы по подробнее описать необходимые действия, в частности: 1.) Что такое TSPStamp (я такого объекта не нашел)? 2.) Что значит запросить штамп времени?
|
|
|
|
Статус: Сотрудник
Группы: Администраторы, Участники Зарегистрирован: 10.12.2008(UTC) Сообщений: 924 Откуда: Крипто-Про Поблагодарили: 99 раз в 95 постах
|
Цитата:1.) Что такое TSPStamp (я такого объекта не нашел)? Объект TSPStamp входит в состав интерфейса клиентских приложений (COM) КриптоПро TSP SDK. Достать штамп времени из подписи Вы можете следующим образом: В коллекции неподписанных атрибутов (свойство CPSigner::UnauthenticatedAttributes) следует найти атрибут, содержащий нужный Вам штамп времени - это можно сделать по OID'у атрибута (sz_id_aa_signatureTimeStampToken "1.2.840.113549.1.9.16.2.14"). Далее декодируете значение атрибута в штамп времени (метод TSPStamp::Import). Время, указанное в штампе можно получить при помощи свойства TSPStamp::Time. Цитата:2.) Что значит запросить штамп времени? Вы имеете в виду "запросить штамп времени у службы штампов" или что-то другое?
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 02.12.2008(UTC) Сообщений: 39
|
Доброго времени суток! Из коллекции неподписанных атрибутов нахожу атрибут, содержащий штамп времени. Далее пытаюсь декодировать значение атрибута в штамп времени с помощью метода Import объекта TSPStamp. Выдаётся ошибка "Данные ASN1 повреждены". Подскажите пожалуйста, что я делаю не так.
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 28.10.2009(UTC) Сообщений: 15 Откуда: Москва
|
Вы имеете в виду "запросить штамп времени у службы штампов" или что-то другое? да, я так понял что в подписи хранится какой-то уникальный ключ выданный tsp сервером (свойство CPSigner::UnauthenticatedAttributes "1.2.840.113549.1.9.16.2.14"), и чтобы узнать время подписи, необходимо запросить время на сервере tsp.
|
|
|
|
Статус: Сотрудник
Группы: Администраторы, Участники Зарегистрирован: 10.12.2008(UTC) Сообщений: 924 Откуда: Крипто-Про Поблагодарили: 99 раз в 95 постах
|
dmitriy.spolokhov написал:Доброго времени суток! Из коллекции неподписанных атрибутов нахожу атрибут, содержащий штамп времени. Далее пытаюсь декодировать значение атрибута в штамп времени с помощью метода Import объекта TSPStamp. Выдаётся ошибка "Данные ASN1 повреждены". Подскажите пожалуйста, что я делаю не так. Здравствуйте! Выложите или пришлите, пожалуйста, подпись и фрагмент кода. Отредактировано пользователем 3 марта 2010 г. 21:13:27(UTC)
| Причина: Не указана
|
|
|
|
Статус: Сотрудник
Группы: Администраторы, Участники Зарегистрирован: 10.12.2008(UTC) Сообщений: 924 Откуда: Крипто-Про Поблагодарили: 99 раз в 95 постах
|
BRN написал: Вы имеете в виду "запросить штамп времени у службы штампов" или что-то другое? да, я так понял что в подписи хранится какой-то уникальный ключ выданный tsp сервером (свойство CPSigner::UnauthenticatedAttributes "1.2.840.113549.1.9.16.2.14"), и чтобы узнать время подписи, необходимо запросить время на сервере tsp.
В атрибуте signatureTimeStampToken (1.2.840.113549.1.9.16.2.14) хранится не "уникальный ключ", а штамп времени, который содержит время подписи. Таким образом, чтобы узнать время подписи не нужно обращаться на сервер TSP.
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close