Search in sources :

Example 41 with TrustManagerFactory

use of javax.net.ssl.TrustManagerFactory in project java-apns by notnoop.

the class SSLContextBuilder method withTrustKeyStore.

public SSLContextBuilder withTrustKeyStore(KeyStore keyStore, String keyStorePassword) throws InvalidSSLConfig {
    try {
        TrustManagerFactory trustManagerFactory = TrustManagerFactory.getInstance(algorithm);
        trustManagerFactory.init(keyStore);
        trustManagers = trustManagerFactory.getTrustManagers();
        return this;
    } catch (GeneralSecurityException e) {
        throw new InvalidSSLConfig(e);
    }
}
Also used : TrustManagerFactory(javax.net.ssl.TrustManagerFactory) GeneralSecurityException(java.security.GeneralSecurityException) InvalidSSLConfig(com.notnoop.exceptions.InvalidSSLConfig)

Example 42 with TrustManagerFactory

use of javax.net.ssl.TrustManagerFactory in project java-apns by notnoop.

the class SSLContextBuilder method withDefaultTrustKeyStore.

public SSLContextBuilder withDefaultTrustKeyStore() throws InvalidSSLConfig {
    try {
        TrustManagerFactory trustManagerFactory = TrustManagerFactory.getInstance(algorithm);
        trustManagerFactory.init((KeyStore) null);
        trustManagers = trustManagerFactory.getTrustManagers();
        return this;
    } catch (GeneralSecurityException e) {
        throw new InvalidSSLConfig(e);
    }
}
Also used : TrustManagerFactory(javax.net.ssl.TrustManagerFactory) GeneralSecurityException(java.security.GeneralSecurityException) InvalidSSLConfig(com.notnoop.exceptions.InvalidSSLConfig)

Example 43 with TrustManagerFactory

use of javax.net.ssl.TrustManagerFactory in project Tusky by Vavassor.

the class OkHttpUtils method enableHigherTlsOnPreLollipop.

private static OkHttpClient.Builder enableHigherTlsOnPreLollipop(OkHttpClient.Builder builder) {
    if (Build.VERSION.SDK_INT >= 16 && Build.VERSION.SDK_INT < 22) {
        try {
            TrustManagerFactory trustManagerFactory = TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm());
            trustManagerFactory.init((KeyStore) null);
            TrustManager[] trustManagers = trustManagerFactory.getTrustManagers();
            if (trustManagers.length != 1 || !(trustManagers[0] instanceof X509TrustManager)) {
                throw new IllegalStateException("Unexpected default trust managers:" + Arrays.toString(trustManagers));
            }
            X509TrustManager trustManager = (X509TrustManager) trustManagers[0];
            SSLContext sslContext = SSLContext.getInstance("TLS");
            sslContext.init(null, new TrustManager[] { trustManager }, null);
            SSLSocketFactory sslSocketFactory = sslContext.getSocketFactory();
            builder.sslSocketFactory(new SSLSocketFactoryCompat(sslSocketFactory), trustManager);
        } catch (NoSuchAlgorithmException | KeyStoreException | KeyManagementException e) {
            Log.e(TAG, "Failed enabling TLS 1.1 & 1.2. " + e.getMessage());
        }
    }
    return builder;
}
Also used : X509TrustManager(javax.net.ssl.X509TrustManager) TrustManagerFactory(javax.net.ssl.TrustManagerFactory) SSLContext(javax.net.ssl.SSLContext) NoSuchAlgorithmException(java.security.NoSuchAlgorithmException) KeyStoreException(java.security.KeyStoreException) SSLSocketFactory(javax.net.ssl.SSLSocketFactory) KeyManagementException(java.security.KeyManagementException) TrustManager(javax.net.ssl.TrustManager) X509TrustManager(javax.net.ssl.X509TrustManager)

Example 44 with TrustManagerFactory

use of javax.net.ssl.TrustManagerFactory in project voltdb by VoltDB.

the class SSLConfiguration method createTrustManagers.

/**
     * Creates the trust managers required to initiate the {@link SSLContext}, using a JKS keystore as an input.
     *
     * @param filepath - the path to the JKS keystore.
     * @param keystorePassword - the keystore's password.
     * @return {@link TrustManager} array, that will be used to initiate the {@link SSLContext}.
     * @throws Exception
     */
private static TrustManager[] createTrustManagers(String filepath, String keystorePassword) throws KeyStoreException, FileNotFoundException, IOException, NoSuchAlgorithmException, CertificateException {
    KeyStore trustStore = KeyStore.getInstance("JKS");
    try (InputStream trustStoreIS = new FileInputStream(filepath)) {
        trustStore.load(trustStoreIS, keystorePassword.toCharArray());
    }
    TrustManagerFactory trustFactory = TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm());
    trustFactory.init(trustStore);
    return trustFactory.getTrustManagers();
}
Also used : FileInputStream(java.io.FileInputStream) InputStream(java.io.InputStream) TrustManagerFactory(javax.net.ssl.TrustManagerFactory) KeyStore(java.security.KeyStore) FileInputStream(java.io.FileInputStream)

Example 45 with TrustManagerFactory

use of javax.net.ssl.TrustManagerFactory in project android_frameworks_base by ResurrectionRemix.

the class TestUtils method getSSLContext.

public static SSLContext getSSLContext(ConfigSource source) throws Exception {
    ApplicationConfig config = new ApplicationConfig(source);
    TrustManagerFactory tmf = TrustManagerFactory.getInstance("PKIX", new NetworkSecurityConfigProvider());
    tmf.init(new RootTrustManagerFactorySpi.ApplicationConfigParameters(config));
    SSLContext context = SSLContext.getInstance("TLS");
    context.init(null, tmf.getTrustManagers(), null);
    return context;
}
Also used : TrustManagerFactory(javax.net.ssl.TrustManagerFactory) SSLContext(javax.net.ssl.SSLContext)

Aggregations

TrustManagerFactory (javax.net.ssl.TrustManagerFactory)233 KeyStore (java.security.KeyStore)145 SSLContext (javax.net.ssl.SSLContext)111 TrustManager (javax.net.ssl.TrustManager)89 KeyManagerFactory (javax.net.ssl.KeyManagerFactory)82 NoSuchAlgorithmException (java.security.NoSuchAlgorithmException)55 X509TrustManager (javax.net.ssl.X509TrustManager)55 FileInputStream (java.io.FileInputStream)53 IOException (java.io.IOException)48 KeyStoreException (java.security.KeyStoreException)47 InputStream (java.io.InputStream)45 CertificateException (java.security.cert.CertificateException)35 KeyManagementException (java.security.KeyManagementException)30 X509Certificate (java.security.cert.X509Certificate)25 SecureRandom (java.security.SecureRandom)22 KeyManager (javax.net.ssl.KeyManager)17 UnrecoverableKeyException (java.security.UnrecoverableKeyException)16 CertificateFactory (java.security.cert.CertificateFactory)15 GeneralSecurityException (java.security.GeneralSecurityException)13 File (java.io.File)11