Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Vlad_Alymov  
#1 Оставлено : 25 февраля 2021 г. 18:39:23(UTC)
Vlad_Alymov

Статус: Новичок

Группы: Участники
Зарегистрирован: 08.07.2019(UTC)
Сообщений: 8
Российская Федерация
Откуда: Москва

Сказал(а) «Спасибо»: 3 раз
Добрый день!

Имеется подпись в формате CAdES-BES. Проверка выполняется при помощи КриптоПро JCP 2.0.40035. Онлайн валидация отключена, на вход методу проверки подписи подаётся цепочка сертификатов и списки отозванных сертификатов (CRL). В случае с актуальными CRL проверка проходит успешно. Если же передать истёкший CRL, но действующий на момент подписи документа, то проверка завершается ошибкой:
Цитата:
For online validation by CRLDP parameter 'com.sun.security.enableCRLDP' (Oracle) or 'com.ibm.security.enableCRLDP' (IBM) must be set 'true' to enable or 'ocsp.enable' must be set 'true' (OCSP), or CRL passed for offline validation; error codes: [44] 'Certificate status is unknown or revoked'


Есть ли возможность указать дату, на момент которой сертификат должен быть проверен на отзыв? В идеале, конечно, было бы использовать дату подписи из самой подписи. Или же отключить вообще проверку по CRL (чтобы реализовать её самому)?

Код проверки:
Код:
CAdESSignature cAdESSignature = new CAdESSignature(
    signStream,
    dataStream,
    null
);
try {
    cAdESSignature.verify(
        ((cadesType == CAdESType.CAdES_X_Long_Type_1) || (cadesType == CAdESType.CAdES_A))
            ? Collections.<X509Certificate>emptySet()
            : certificates,
        ((cadesType == CAdESType.CAdES_X_Long_Type_1) || (cadesType == CAdESType.CAdES_A))
            ? Collections.<X509Certificate>emptySet()
            : crlSet
    );
}
catch (CAdESException ex) {
    ...
}
Offline Санчир Момолдаев  
#2 Оставлено : 26 февраля 2021 г. 11:15:50(UTC)
Санчир Момолдаев

Статус: Сотрудник

Группы: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 1,040
Российская Федерация

Сказал(а) «Спасибо»: 88 раз
Поблагодарили: 226 раз в 213 постах
Добрый день!
для подписей формата xlt1 и cades-a
проверяется внешняя цепочка штампов времени.
остальные доказательства на другие сертификаты, в том числе на сертификат подписанта, уже есть в подписи и они проходят проверку.
Техническую поддержку оказываем тут
Наша база знаний
Offline Vlad_Alymov  
#3 Оставлено : 26 февраля 2021 г. 12:30:24(UTC)
Vlad_Alymov

Статус: Новичок

Группы: Участники
Зарегистрирован: 08.07.2019(UTC)
Сообщений: 8
Российская Федерация
Откуда: Москва

Сказал(а) «Спасибо»: 3 раз
Санчир, спасибо за отклик! Но ответа я так и не увидел.

В подпись НЕ включается CRL, только цепочка сертификатов. CRL передаётся методу проверки подписи (оффлайн валидация). В случае с действительным CRL проверка успешна, а с истёкшим - нет. Но! Данный CRL был актуальным на момент подписи. Как заставить проверку использовать дату из подписи или, в крайнем случае, каким-либо способом переданную?
Offline Санчир Момолдаев  
#4 Оставлено : 26 февраля 2021 г. 12:53:45(UTC)
Санчир Момолдаев

Статус: Сотрудник

Группы: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 1,040
Российская Федерация

Сказал(а) «Спасибо»: 88 раз
Поблагодарили: 226 раз в 213 постах
Автор: Vlad_Alymov Перейти к цитате
Санчир, спасибо за отклик! Но ответа я так и не увидел.

В подпись НЕ включается CRL, только цепочка сертификатов. CRL передаётся методу проверки подписи (оффлайн валидация). В случае с действительным CRL проверка успешна, а с истёкшим - нет. Но! Данный CRL был актуальным на момент подписи. Как заставить проверку использовать дату из подписи или, в крайнем случае, каким-либо способом переданную?


никак, только на текущее время. вы передаете crl для проверки внешнего штампа времени. в подписи лежит ocsp ответ на сертификат подписанта. можете попробовать подписать использовав другую службу штампов времени. к примеру тестовую. и потом по сету crl определить что их недостаточно для проверки xlt1 подписи
Техническую поддержку оказываем тут
Наша база знаний
Offline Vlad_Alymov  
#5 Оставлено : 26 февраля 2021 г. 13:24:15(UTC)
Vlad_Alymov

Статус: Новичок

Группы: Участники
Зарегистрирован: 08.07.2019(UTC)
Сообщений: 8
Российская Федерация
Откуда: Москва

Сказал(а) «Спасибо»: 3 раз
Мне кажется, есть недопонимание. Мы НЕ используем службу штампа времени, у нас CAdES-BES, просто среди подписываемых атрибутов дата подписи тоже есть. CRL мы передаём для проверки валидности сертификата подписанта, но нам нужно знать валидность на момент подписи, какой статус сейчас - нам не интересно.
Offline Санчир Момолдаев  
#6 Оставлено : 26 февраля 2021 г. 13:26:50(UTC)
Санчир Момолдаев

Статус: Сотрудник

Группы: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 1,040
Российская Федерация

Сказал(а) «Спасибо»: 88 раз
Поблагодарили: 226 раз в 213 постах
это особенность формата cades-bes. всегда нужны crl на текущую дату
если вам интересно какая была валидность в момент подписи используйте xlt1
Техническую поддержку оказываем тут
Наша база знаний
thanks 1 пользователь поблагодарил Санчир Момолдаев за этот пост.
Vlad_Alymov оставлено 26.02.2021(UTC)
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.