Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 12,704 Сказал «Спасибо»: 500 раз Поблагодарили: 2051 раз в 1591 постах
|
Автор: crypto7 Пробовал и другие файлы - в формате .pdf. Результат одинаковый - ошибка ASN1-данных... Не нужно так делать... Я предложил показать файл, который записывается (ответ от CAdESCOM) из программы на Delphi7 и который не принимает КриптоАРМ. Потому что у меня таких проблем нет. Мне не нужен исходный файл. |
|
|
|
|
Статус: Эксперт
Группы: Участники
Зарегистрирован: 05.03.2015(UTC) Сообщений: 1,602 Откуда: Иркутская область Сказал(а) «Спасибо»: 110 раз Поблагодарили: 394 раз в 366 постах
|
Предположу, что до сохранения результат как-либо портится или сохраняется не в полном объеме (длина base64 без переводов строк должна быть кратна 4). Также для BASE64 подписи может быть важно наличие правильных заголовков - так проверяющей программе легче будет опознать чего же ей выдали в файл. Впрочем, КриптоАРМ создает/проверяет подписи без заголовков.
|
1 пользователь поблагодарил two_oceans за этот пост.
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 07.05.2021(UTC) Сообщений: 49 Откуда: NN Сказал(а) «Спасибо»: 15 раз
|
Автор: Андрей * Автор: crypto7 Пробовал и другие файлы - в формате .pdf. Результат одинаковый - ошибка ASN1-данных... Не нужно так делать... Я предложил показать файл, который записывается (ответ от CAdESCOM) из программы на Delphi7 и который не принимает КриптоАРМ. Потому что у меня таких проблем нет. Мне не нужен исходный файл. Вот то, что получается после подписи. s2.txt (17kb) загружен 9 раз(а).
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 07.05.2021(UTC) Сообщений: 49 Откуда: NN Сказал(а) «Спасибо»: 15 раз
|
Автор: two_oceans Предположу, что до сохранения результат как-либо портится или сохраняется не в полном объеме (длина base64 без переводов строк должна быть кратна 4). Также для BASE64 подписи может быть важно наличие правильных заголовков - так проверяющей программе легче будет опознать чего же ей выдали в файл. Впрочем, КриптоАРМ создает/проверяет подписи без заголовков. Спасибо за совет! Я подумал добавить тэги begin/end cms в начало и конец файла, но это, к сожалению, не помогло.
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 12,704 Сказал «Спасибо»: 500 раз Поблагодарили: 2051 раз в 1591 постах
|
Автор: crypto7 Автор: Андрей * Автор: crypto7 Пробовал и другие файлы - в формате .pdf. Результат одинаковый - ошибка ASN1-данных... Не нужно так делать... Я предложил показать файл, который записывается (ответ от CAdESCOM) из программы на Delphi7 и который не принимает КриптоАРМ. Потому что у меня таких проблем нет. Мне не нужен исходный файл. Вот то, что получается после подписи. s2.txt (17kb) загружен 9 раз(а). s2_.txt.p7s (7kb) загружен 3 раз(а).этот файл успешно проверяется? Проблема в кодировании base64 |
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 12,704 Сказал «Спасибо»: 500 раз Поблагодарили: 2051 раз в 1591 постах
|
Snimok ehkrana ot 2021-05-17 17-10-56.png (24kb) загружен 3 раз(а). |
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 12,704 Сказал «Спасибо»: 500 раз Поблагодарили: 2051 раз в 1591 постах
|
Сохранение ответа от COM как реализовано? Вот, если правильно сохранить приведенный выше файл: s2.ANSI.txt.p7s (9kb) загружен 4 раз(а). Snimok ehkrana ot 2021-05-17 17-13-25.png (11kb) загружен 3 раз(а). Snimok ehkrana ot 2021-05-17 17-13-00.png (15kb) загружен 3 раз(а). |
|
1 пользователь поблагодарил Андрей * за этот пост.
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 07.05.2021(UTC) Сообщений: 49 Откуда: NN Сказал(а) «Спасибо»: 15 раз
|
Автор: Андрей * Сохранение ответа от COM как реализовано? Вот, если правильно сохранить приведенный выше файл: s2.ANSI.txt.p7s (9kb) загружен 4 раз(а). Snimok ehkrana ot 2021-05-17 17-13-25.png (11kb) загружен 3 раз(а). Snimok ehkrana ot 2021-05-17 17-13-00.png (15kb) загружен 3 раз(а). Андрей, спасибо вам большое за помощь и советы. Дело было действительно в банальном сохранении ответа от COM. Я сохранял его через FileStream.WriteBuffer, с помощью еще какой-то дополнительной функции (этот код был не мой). Попробовал сохранить результат из TMemo и все заработало! Спасибо!
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 07.05.2021(UTC) Сообщений: 49 Откуда: NN Сказал(а) «Спасибо»: 15 раз
|
Можно задать еще один попутный вопрос?) Пытаюсь понять, как правильно (какой функцией COM-интерфейса) можно проверить созданный файл ЭП при отсутствии подключения к интернету? И какой формат при этом должна иметь подпись... Как я понял, для автономной ("оффлайн") проверки ЭП, она обязательно должна быть представлена в формате CAdES-X Long Type 1. Например, если я сделаю подпись формата CADES-BES, то для ее проверки потребуется доступ к внешним ресурсам для подтверждения статуса сертификата. Так ли это? Отредактировано пользователем 17 мая 2021 г. 17:19:59(UTC)
| Причина: Не указана
|
|
|
|
Статус: Эксперт
Группы: Участники
Зарегистрирован: 05.03.2015(UTC) Сообщений: 1,602 Откуда: Иркутская область Сказал(а) «Спасибо»: 110 раз Поблагодарили: 394 раз в 366 постах
|
В основном, так. Действительно, для оффлайн проверки нужны "доказательства подлинности" в ЭП, которые можно добавить как минимум в формате CAdES-X Long Type 1 (есть и более продвинутые форматы, но про их поддержку пока ничего не известно). Соответственно для подписания потребуются лицензии на TSP и OCSP клиенты, может потребоваться подписка на услуги сервера доверенного времени. Такая подпись будет действовать и после истечения срока сертификата подписавшего, пока действителен сертификат сервера доверенного времени. Максимум - пока алгоритм подписи не признают ненадежным.
Тем не менее, если сертификат подписавшего еще не истек, возможна проверка cades-bes, cades-t по локальной копии списка отзыва сертификатов (СОС или CRL) в хранилище сертификатов. Если срок действия локальной копии СОС не истек, то подключение к интернету не обязательно (ниже примечание), а вот OCSP без интернета не будет работать. Срок определяется каждым УЦ для каждого вида СОС индивидуально (есть плановые СОС, экстренные, разделенные по причинам отзыва и т.д.). Установить новый СОС в хранилище предполагается с какого-то носителя, записанного на компьютере, где интернет есть. В зависимости от интерфейса могут быть предусмотрены флаги разрешающие или запрещающие СОС или OCSP-проверку или обязывающие проверять только онлайн. Подробности надо посмотреть в справке, COM интерфейс в некоторых местах не предоставляет выбора.
Примечание. Есть небольшой момент в самом стандарте СОС - после примерно 2/3 срока действия срабатывает проверка не вышла ли новая версия СОС, в таком случае без интернета будет некая задержка перед собственно проверкой, но если срок действия СОС не закончился дальше проверка подписи должна пройти штатно независимо от успешности получения новой версии СОС.
|
2 пользователей поблагодарили two_oceans за этот пост.
|
crypto7 оставлено 18.05.2021(UTC), egn.p оставлено 04.10.2023(UTC)
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close