Здравствуйте!
Имеем сервис проверки CAdES реализованный на jcp-2.0.39014
Получили на проверку CAdES BES с проблемным EndEntity-сертификатом:
[1]Точка распределения списка отзыва (CRL)
URL=http://srv-oibdb-ca-2.bankspb.ru/cdp/76c1cfa3fab7221bbaa44050a3ed8b8c12efa67f.crl
[2]Точка распределения списка отзыва (CRL)
URL=http://bspb.ru/ca/ra/cdp/76c1cfa3fab7221bbaa44050a3ed8b8c12efa67f.crl
Здесь первый CRLDP недоступен; а по второму почаем 301 Moved Permanently
Второй CRLDP действительно доступен по https
В имплентации используем ru.CryptoPro.CAdES#verify и не передаем CRL в аргументах,
то есть CRL выкачивает JCP.
В Wireshark видим, что последним запросом является
HTTP/1.1 301 Moved Permanently
Location:
https://www.bspb.ru/ca/r...4050a3ed8b8c12efa67f.crlВ логах
ru.CryptoPro.AdES.certificate.BaseCertificateChainValidatorImpl validate
FINE: Verify the certificate chain by use of CRL (online).
INFO Could not determine revocation status: unable to find valid certification path to requested target
Примечание: проверка этой ЭП проходит, если в CAdES#verify передать аргументом готовый объект CRL
Пожалуйста, ответьте на вопросы:
1. Допустимо ли, что УЦ не поддерживает ни один из CRLDP, указанных в выданном сертификате?
2. Допустимо ли, что УЦ перенес CRLDP с http на https ?
3. Предположим, мы скорректируем имплементацию своего сервиса - будем сами выкачивать CRL и передавать объектом в JCP.
Будет ли правомерным выкачивать CRL по адресу отличному от указанного в CRLDP (https вместо http)
4. "сами выкачивать CRL и передавать объектом в JCP" - есть ли другое решение нашей проблемы?
Заранее спасибо за ответы!