private KeyManagersType getKeyManagers(KeyManagersType keyManagers, String k, String v) { if (keyManagers == null) { keyManagers = new KeyManagersType(); } if ("factoryAlgorithm".equals(k)) { keyManagers.setFactoryAlgorithm(v); } else if ("provider".equals(k)) { keyManagers.setProvider(v); } else if ("keyPassword".equals(k)) { keyManagers.setKeyPassword(v); } else if (k.startsWith("keyStore.")) { keyManagers.setKeyStore(getKeyStore(keyManagers.getKeyStore(), k.substring("keyStore.".length()), v)); } return keyManagers; }
/** * This method converts the JAXB KeyManagersType into a list of * JSSE KeyManagers. */ public static KeyManager[] getKeyManagers(KeyManagersType kmc) throws GeneralSecurityException, IOException { KeyStore keyStore = getKeyStore(kmc.getKeyStore(), false); String alg = kmc.isSetFactoryAlgorithm() ? kmc.getFactoryAlgorithm() : KeyManagerFactory.getDefaultAlgorithm(); char[] keyPass = getKeyPassword(kmc); KeyManagerFactory fac = kmc.isSetProvider() ? KeyManagerFactory.getInstance(alg, kmc.getProvider()) : KeyManagerFactory.getInstance(alg); fac.init(keyStore, keyPass); return fac.getKeyManagers(); }
/** * This method converts the JAXB KeyManagersType into a list of * JSSE KeyManagers. */ public static KeyManager[] getKeyManagers(KeyManagersType kmc) throws GeneralSecurityException, IOException { KeyStore keyStore = getKeyStore(kmc.getKeyStore()); String alg = kmc.isSetFactoryAlgorithm() ? kmc.getFactoryAlgorithm() : KeyManagerFactory.getDefaultAlgorithm(); char[] keyPass = kmc.isSetKeyPassword() ? deobfuscate(kmc.getKeyPassword()) : null; KeyManagerFactory fac = kmc.isSetProvider() ? KeyManagerFactory.getInstance(alg, kmc.getProvider()) : KeyManagerFactory.getInstance(alg); fac.init(keyStore, keyPass); return fac.getKeyManagers(); }
public static KeyManager[] getKeyManagers() { KeyManagersType kmt = new KeyManagersType(); KeyStoreType kst = new KeyStoreType(); kst.setResource("keys/Morpit.jks"); kst.setPassword("password"); kst.setType("JKS"); kmt.setKeyStore(kst); kmt.setKeyPassword("password"); try { return TLSParameterJaxBUtils.getKeyManagers(kmt); } catch (Exception e) { throw new RuntimeException("failed to retrieve key managers", e); } }
private static char[] getKeyPassword(KeyManagersType kmc) { char[] keyPass = kmc.isSetKeyPassword() ? deobfuscate(kmc.getKeyPassword()) : null; if (keyPass != null) { return keyPass; } String callbackHandlerClass = kmc.getKeyPasswordCallbackHandler(); if (callbackHandlerClass == null) { return null; } CallbackHandler ch = null; try { ch = (CallbackHandler)ClassLoaderUtils.loadClass(callbackHandlerClass, TLSParameterJaxBUtils.class) .newInstance(); String prompt = kmc.getKeyStore().getFile(); if (prompt == null) { prompt = kmc.getKeyStore().getResource(); } PasswordCallback pwCb = new PasswordCallback(prompt, false); PasswordCallback[] callbacks = new PasswordCallback[] {pwCb}; ch.handle(callbacks); keyPass = callbacks[0].getPassword(); } catch (Exception e) { LOG.log(Level.WARNING, "Cannot load key password from callback handler: " + e.getMessage(), e); } return keyPass; }
/** * Create an instance of {@link KeyManagersType } * */ public KeyManagersType createKeyManagersType() { return new KeyManagersType(); }
/** * This method converts the JAXB KeyManagersType into a list of * JSSE KeyManagers. */ public static KeyManager[] getKeyManagers(KeyManagersType kmc) throws GeneralSecurityException, IOException { KeyStore keyStore = getKeyStore(kmc.getKeyStore(), false); String alg = kmc.isSetFactoryAlgorithm() ? kmc.getFactoryAlgorithm() : KeyManagerFactory.getDefaultAlgorithm(); char[] keyPass = getKeyPassword(kmc); KeyManagerFactory fac = kmc.isSetProvider() ? KeyManagerFactory.getInstance(alg, kmc.getProvider()) : KeyManagerFactory.getInstance(alg); fac.init(keyStore, keyPass); return fac.getKeyManagers(); }
/** * This method converts the JAXB KeyManagersType into a list of * JSSE KeyManagers. */ public static KeyManager[] getKeyManagers(KeyManagersType kmc) throws GeneralSecurityException, IOException { KeyStore keyStore = getKeyStore(kmc.getKeyStore()); String alg = kmc.isSetFactoryAlgorithm() ? kmc.getFactoryAlgorithm() : KeyManagerFactory.getDefaultAlgorithm(); char[] keyPass = kmc.isSetKeyPassword() ? deobfuscate(kmc.getKeyPassword()) : null; KeyManagerFactory fac = kmc.isSetProvider() ? KeyManagerFactory.getInstance(alg, kmc.getProvider()) : KeyManagerFactory.getInstance(alg); fac.init(keyStore, keyPass); return fac.getKeyManagers(); }
public static KeyManager[] getKeyManagers() { KeyManagersType kmt = new KeyManagersType(); KeyStoreType kst = new KeyStoreType(); kst.setResource("keys/Bethal.jks"); kst.setPassword("password"); kst.setType("JKS"); kmt.setKeyStore(kst); kmt.setKeyPassword("password"); try { return TLSParameterJaxBUtils.getKeyManagers(kmt); } catch (Exception e) { throw new RuntimeException("failed to retrieve key managers", e); } }
private static char[] getKeyPassword(KeyManagersType kmc) { char[] keyPass = kmc.isSetKeyPassword() ? deobfuscate(kmc.getKeyPassword()) : null; if (keyPass != null) { return keyPass; } String callbackHandlerClass = kmc.getKeyPasswordCallbackHandler(); if (callbackHandlerClass == null) { return null; } CallbackHandler ch = null; try { ch = (CallbackHandler)ClassLoaderUtils.loadClass(callbackHandlerClass, TLSParameterJaxBUtils.class) .newInstance(); String prompt = kmc.getKeyStore().getFile(); if (prompt == null) { prompt = kmc.getKeyStore().getResource(); } PasswordCallback pwCb = new PasswordCallback(prompt, false); PasswordCallback[] callbacks = new PasswordCallback[] {pwCb}; ch.handle(callbacks); keyPass = callbacks[0].getPassword(); } catch (Exception e) { LOG.log(Level.WARNING, "Cannot load key password from callback handler: " + e.getMessage(), e); } return keyPass; }
/** * Create an instance of {@link KeyManagersType } * */ public KeyManagersType createKeyManagersType() { return new KeyManagersType(); }
private KeyManagersType getKeyManagers(KeyManagersType keyManagers, String k, String v) { if (keyManagers == null) { keyManagers = new KeyManagersType(); } if ("factoryAlgorithm".equals(k)) { keyManagers.setFactoryAlgorithm(v); } else if ("provider".equals(k)) { keyManagers.setProvider(v); } else if ("keyPassword".equals(k)) { keyManagers.setKeyPassword(v); } else if (k.startsWith("keyStore.")) { keyManagers.setKeyStore(getKeyStore(keyManagers.getKeyStore(), k.substring("keyStore.".length()), v)); } return keyManagers; }
/** * This method converts the JAXB KeyManagersType into a list of * JSSE KeyManagers. */ public static KeyManager[] getKeyManagers(KeyManagersType kmc, String alias) throws GeneralSecurityException, IOException { KeyStore keyStore = getKeyStore(kmc.getKeyStore(), false); String alg = kmc.isSetFactoryAlgorithm() ? kmc.getFactoryAlgorithm() : KeyManagerFactory.getDefaultAlgorithm(); char[] keyPass = getKeyPassword(kmc); KeyManagerFactory fac = kmc.isSetProvider() ? KeyManagerFactory.getInstance(alg, kmc.getProvider()) : KeyManagerFactory.getInstance(alg); try { fac.init(keyStore, keyPass); return fac.getKeyManagers(); } catch (java.security.UnrecoverableKeyException uke) { //jsse has the restriction that different key in keystore //cannot has different password, use MultiKeyPasswordKeyManager //as fallback when this happen MultiKeyPasswordKeyManager manager = new MultiKeyPasswordKeyManager(keyStore, alias, new String(keyPass)); return new KeyManager[]{manager}; } }
/** * Create an instance of {@link KeyManagersType } * */ public KeyManagersType createKeyManagersType() { return new KeyManagersType(); }
private KeyManagersType getKeyManagers(KeyManagersType keyManagers, String k, String v) { if (keyManagers == null) { keyManagers = new KeyManagersType(); } if ("factoryAlgorithm".equals(k)) { keyManagers.setFactoryAlgorithm(v); } else if ("provider".equals(k)) { keyManagers.setProvider(v); } else if ("keyPassword".equals(k)) { keyManagers.setKeyPassword(v); } else if (k.startsWith("keyStore.")) { keyManagers.setKeyStore(getKeyStore(keyManagers.getKeyStore(), k.substring("keyStore.".length()), v)); } return keyManagers; }
/** * This method converts the JAXB KeyManagersType into a list of * JSSE KeyManagers. */ public static KeyManager[] getKeyManagers(KeyManagersType kmc, String alias) throws GeneralSecurityException, IOException { KeyStore keyStore = getKeyStore(kmc.getKeyStore(), false); String alg = kmc.isSetFactoryAlgorithm() ? kmc.getFactoryAlgorithm() : KeyManagerFactory.getDefaultAlgorithm(); char[] keyPass = getKeyPassword(kmc); KeyManagerFactory fac = kmc.isSetProvider() ? KeyManagerFactory.getInstance(alg, kmc.getProvider()) : KeyManagerFactory.getInstance(alg); try { fac.init(keyStore, keyPass); return fac.getKeyManagers(); } catch (java.security.UnrecoverableKeyException uke) { //jsse has the restriction that different key in keystore //cannot has different password, use MultiKeyPasswordKeyManager //as fallback when this happen MultiKeyPasswordKeyManager manager = new MultiKeyPasswordKeyManager(keyStore, alias, new String(keyPass)); return new KeyManager[]{manager}; } }
/** * Create an instance of {@link KeyManagersType } * */ public KeyManagersType createKeyManagersType() { return new KeyManagersType(); }
private KeyManagersType getKeyManagers(KeyManagersType keyManagers, String k, String v) { if (keyManagers == null) { keyManagers = new KeyManagersType(); } if ("factoryAlgorithm".equals(k)) { keyManagers.setFactoryAlgorithm(v); } else if ("provider".equals(k)) { keyManagers.setProvider(v); } else if ("keyPassword".equals(k)) { keyManagers.setKeyPassword(v); } else if (k.startsWith("keyStore.")) { keyManagers.setKeyStore(getKeyStore(keyManagers.getKeyStore(), k.substring("keyStore.".length()), v)); } return keyManagers; }
private KeyManagersType getKeyManagers(KeyManagersType keyManagers, String k, String v) { if (keyManagers == null) { keyManagers = new KeyManagersType(); } if ("factoryAlgorithm".equals(k)) { keyManagers.setFactoryAlgorithm(v); } else if ("provider".equals(k)) { keyManagers.setProvider(v); } else if ("keyPassword".equals(k)) { keyManagers.setKeyPassword(v); } else if (k.startsWith("keyStore.")) { keyManagers.setKeyStore(getKeyStore(keyManagers.getKeyStore(), k.substring("keyStore.".length()), v)); } return keyManagers; }
private KeyManagersType getKeyManagers(KeyManagersType keyManagers, String k, String v) { if (keyManagers == null) { keyManagers = new KeyManagersType(); } if ("factoryAlgorithm".equals(k)) { keyManagers.setFactoryAlgorithm(v); } else if ("provider".equals(k)) { keyManagers.setProvider(v); } else if ("keyPassword".equals(k)) { keyManagers.setKeyPassword(v); } else if (k.startsWith("keyStore.")) { keyManagers.setKeyStore(getKeyStore(keyManagers.getKeyStore(), k.substring("keyStore.".length()), v)); } return keyManagers; }