Я создал через XCA PKI, где сертификаты Root CA и Sub CA имеют один и тот же закрытый ключ. Этот PKI создает листовой (конечный объект) сертификат.
Я использую три разных поставщика криптографии для чтения цепочки сертификатов: RSA BSAFE, IBMJCE и BouncyCastle.
KeyStore ks = KeyStore.getInstance(PKCS12, provider);
ks.load(null, password);
X509Certificate[] chain =
(X509Certificate[]) ks.getCertificateChain(keyAlias);
RSA BSAFE и IBMJCE возвращают листовой сертификат с сертификатами SUBCA и RootCA. Но BouncyCastle возвращает только листовой сертификат.
Почему B C не возвращает полную цепочку? Какое поведение является правильным?
При поиске в Google кажется, что не запрещено использовать один и тот же закрытый ключ (хотя это кажется плохой практикой), кроме CA