Please help me with my problem:
When I get an entry from keystore *.jks there is java.security.UnrecoverableKeyException: excess private key at keyStore.getEntry My certificate is not self-signed. I'm provided with a .jks from an official authority. When I received the certificate I set only one password.
FileInputStream is = new FileInputStream(keyFile);
KeyStore keyStore = KeyStore.getInstance(KeyStore.getDefaultType());
String decryptedPasswd = cryptoProvider.decryptBase64(privatePasswd);
keyStore.load(is, decryptedPasswd.toCharArray());
Enumeration e = keyStore.aliases();
String alias = (String) e.nextElement();
KeyStore.ProtectionParameter protPassword =
new KeyStore.PasswordProtection(decryptedPasswd.toCharArray());
KeyStore.PrivateKeyEntry privateKeyEntry = (KeyStore.PrivateKeyEntry)
keyStore.getEntry(alias, protPassword);
When I try change type of keystore by keytool than I get same exception at Enter key password for <pb_sign_>
keytool -importkeystore -srckeystore pb_.jks -destkeystore new-store.p12 -deststoretype PKCS12
Importing keystore pb_.jks to new-store.p12...
Enter destination keystore password:
Re-enter new password:
Enter source keystore password:
Enter key password for <pb_sign_>
keytool error: java.security.UnrecoverableKeyException: excess private key
java --version
java 11.0.11 2021-04-20 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.11+9-LTS-194)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.11+9-LTS-194, mixed mode)