SCEP CertRep УСПЕХ: сколько сертификатов в ответе?

Я работаю над реализацией SCEP (как запрашивающий, так и уполномоченный). Проект использует JScep в качестве библиотеки.

Во время связи для PKCSReq клиент получает CertRep SUCCESS. В проекте говорится следующее:

+----------------+--------------------------------------------------+ | Request-type | Reply-contents | +----------------+--------------------------------------------------+ | PKCSReq | the reply MUST contain at least the issued | | | certificate in the certificates field of the | | | Signed-Data. The reply MAY contain additional | | | certificates, but the issued certificate MUST be | | | the first in the list. The reply MUST NOT | | | contain a CRL. All returned certificates MUST | | | conform to [RFC5280]. |

Я немного смущен, чтобы интерпретировать MAY contain additional certificates,

Означает ли это, что вся цепочка сертификатов будет представлена ​​в ответе как Collection (JScep)?

1 ответ

Решение

Может быть представлена ​​вся цепочка сертификатов, но не обязательно. Как правило, я ожидаю, что серверы SCEP обеспечат все необходимое для установления доверительной цепочки.

Если вы позвоните enrol и в результате EnrollmentResponse успешно (isSuccess()), вы можете позвонить getCertStore чтобы получить доступ к java.security.cert.CertStore, Тот CertStore будет содержать все сертификаты, отправленные сервером.

Вы можете использовать CertStoreInspector из jscep для непосредственного извлечения соответствующих сертификатов, например, так:

CertStoreInspector inspector = DefaultCertStoreInspectorFactory.getInstance(certStore);
X509Certificate ca = inspector.getIssuer();
X509Certificate signer_ra = inspector.getSigner();
X509Certificate recipient_ra = inspector.getSigner();

См. https://github.com/jscep/jscep/issues/48

Другие вопросы по тегам