EET certifikát a nová verze JAVA 1.8.0.121 rubrika: Programování: Java

2 kostelnik.j
položil/-a 21.1.2017

Dobrý den,

setkal jsem se s zajímavým problémem načítání EET certifikátů v Javě po instalaci poslední verze Javy na 1.8.0.121.

Mám kód, který načítá P12 certifikáty. Do předchozí verze Javy 1.8.0.111 nebo starší vše fungovalo bez problému. Dokázal jsem načíst jak ostrý EET certifikát tak i playground cert.(EET_CA1_Playground-CZ1212121218.p12).

Po instalaci poslední verze Javy program bez problému načítá produkční certifikáty, ale při načítání testovacích playground nastane chyba:
java.security.UnrecoverableKeyException: Get Key failed: java.security.InvalidKeyException: Invalid RSA private key

Testoval jsem na více PC a vždy po instalaci aktualizaci Javy nastane tento problém.
Dokážete poradit?

Zde je kód:

File f = new File("C:\muj-certifikat.p12");
KeyStore keystore = KeyStore.getInstance("PKCS12");
keystore.load(new FileInputStream(f), pwd); //v pwd je uložené heslo k cert. např. "eet" pro playground certifikáty

PrivateKey privateKey = null;
Enumeration aliases = keystore.aliases();
while (aliases.hasMoreElements()) {
String keyAlias = (String) aliases.nextElement();
X509Certificate xc = (X509Certificate) keystore.getCertificate(keyAlias);
privateKey = (PrivateKey) keystore.getKey(keyAlias, pwd); //zde nastane chyba pri nacitani playground certifikatu
//nacitani ostreho certifikatu neni problem
}

odkaz Vyřešeno
2 vojtech.smerda
odpověděl/-a 3.2.2017

Ahoj,

taky jsem na to narazil. Problém byl s certifikátem pro playground server.

Pomohlo mi ten certifikát naimportovat do Windows úložiště a potom zase vyexportovat včetně privátního klíče do PKCS12 formátu.

Vojta

Komentáře

  • kostelnik.j : Ahoj, díky za info. Také jsem zjistil, že problém nastává jen u jednoho konkrétního playground certifikátu CZ1212121218. Ostatní zbylé dva jsou OK. Zkusil jsem tento certifikát zkontrolovat přes Java KeyStore Explorer, ale vše OK. Možná, že je to tím, že program (KSE) interně používá jinou verzi Javy (nezjišťoval jsem), nebo jiného security providera (Bouncy castle, vlastní řešení)? Každopádně jsem rád, že není chyba v mém kódu :-) 6.2.2017

Pro zobrazení všech 3 odpovědí se prosím přihlaste:

Rychlé přihlášení přes sociální sítě:

Nebo se přihlaste jménem a heslem:

Zadejte prosím svou e-mailovou adresu.
Zadejte své heslo.