< prev index next >

src/java.base/share/classes/java/security/KeyStoreSpi.java

Print this page

        

*** 477,486 **** --- 477,490 ---- throw new UnsupportedOperationException ("trusted certificate entries are not password-protected"); } else if (engineIsKeyEntry(alias)) { KeyStore.PasswordProtection pp = (KeyStore.PasswordProtection)protParam; + if (pp.getProtectionAlgorithm() != null) { + throw new KeyStoreException( + "unsupported password protection algorithm"); + } char[] password = pp.getPassword(); Key key = engineGetKey(alias, password); if (key instanceof PrivateKey) { Certificate[] chain = engineGetCertificateChain(alias);
*** 522,532 **** --- 526,540 ---- throw new KeyStoreException("unsupported protection parameter"); } KeyStore.PasswordProtection pProtect = null; if (protParam != null) { pProtect = (KeyStore.PasswordProtection)protParam; + if (pProtect.getProtectionAlgorithm() != null) { + throw new KeyStoreException( + "unsupported password protection algorithm"); } + } // set entry if (entry instanceof KeyStore.TrustedCertificateEntry) { if (protParam != null && pProtect.getPassword() != null) { // pre-1.5 style setCertificateEntry did not allow password
< prev index next >