Package nl.altindag.ssl.util
Class TrustManagerUtils
java.lang.Object
nl.altindag.ssl.util.TrustManagerUtils
- Author:
- Hakan Altindag
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionstatic voidaddCertificate(X509ExtendedTrustManager trustManager, X509Certificate certificate) Adds a new to be trusted certificate to the existing TrustManager.static voidaddCertificate(X509ExtendedTrustManager trustManager, List<X509Certificate> certificates) Adds a new to be trusted certificate to the existing TrustManager.static X509ExtendedTrustManagercombine(List<? extends X509TrustManager> trustManagers) static X509ExtendedTrustManagercombine(X509TrustManager... trustManagers) static X509ExtendedTrustManagercreateCertificateCapturingTrustManager(List<X509Certificate> certificatesCollector) static X509ExtendedTrustManagercreateCertificateCapturingTrustManager(X509TrustManager baseTrustManager, List<X509Certificate> certificatesCollector) static X509ExtendedTrustManagerstatic X509ExtendedTrustManagercreateEnhanceableTrustManager(X509ExtendedTrustManager trustManager, Predicate<TrustManagerParameters> trustManagerParametersValidator) static X509ExtendedTrustManagercreateEnhanceableTrustManager(X509ExtendedTrustManager trustManager, Predicate<TrustManagerParameters> trustManagerParametersValidator, boolean shouldTrustedCertificatesBeConcealed) static X509ExtendedTrustManagercreateEnhanceableTrustManager(X509ExtendedTrustManager trustManager, ChainAndAuthTypeValidator chainAndAuthTypeValidator, ChainAndAuthTypeWithSocketValidator chainAndAuthTypeWithSocketValidator, ChainAndAuthTypeWithSSLEngineValidator chainAndAuthTypeWithSSLEngineValidator) Deprecated.static X509ExtendedTrustManagerstatic X509ExtendedTrustManagercreateInflatableTrustManager(Path trustStorePath, char[] trustStorePassword, String trustStoreType, BiPredicate<X509Certificate[], String> certificateAndAuthTypeTrustPredicate) Deprecated.static X509ExtendedTrustManagercreateInflatableTrustManager(Path trustStorePath, char[] trustStorePassword, String trustStoreType, Predicate<TrustManagerParameters> trustManagerParametersPredicate) static X509ExtendedTrustManagercreateLoggingTrustManager(X509TrustManager baseTrustManager) static X509ExtendedTrustManagercreateSwappableTrustManager(X509TrustManager trustManager) Wraps the given TrustManager into an instance of a Hot Swappable TrustManager.static X509ExtendedTrustManagercreateTrustManager(KeyStore trustStore) static X509ExtendedTrustManagercreateTrustManager(KeyStore... trustStores) static X509ExtendedTrustManagercreateTrustManager(KeyStore trustStore, String trustManagerFactoryAlgorithm) static X509ExtendedTrustManagercreateTrustManager(KeyStore trustStore, String trustManagerFactoryAlgorithm, String securityProviderName) static X509ExtendedTrustManagercreateTrustManager(KeyStore trustStore, String trustManagerFactoryAlgorithm, Provider securityProvider) static X509ExtendedTrustManagercreateTrustManager(KeyStore trustStore, TrustManagerFactory trustManagerFactory) static X509ExtendedTrustManagercreateTrustManager(List<X509Certificate> certificates) static X509ExtendedTrustManagercreateTrustManager(ManagerFactoryParameters managerFactoryParameters) static X509ExtendedTrustManagercreateTrustManager(ManagerFactoryParameters... managerFactoryParameters) static X509ExtendedTrustManagercreateTrustManager(ManagerFactoryParameters managerFactoryParameters, String trustManagerFactoryAlgorithm) static X509ExtendedTrustManagercreateTrustManager(ManagerFactoryParameters managerFactoryParameters, String trustManagerFactoryAlgorithm, String securityProviderName) static X509ExtendedTrustManagercreateTrustManager(ManagerFactoryParameters managerFactoryParameters, String trustManagerFactoryAlgorithm, Provider securityProvider) static X509ExtendedTrustManagercreateTrustManager(ManagerFactoryParameters managerFactoryParameters, TrustManagerFactory trustManagerFactory) static TrustManagerFactorycreateTrustManagerFactory(TrustManager trustManager) static X509ExtendedTrustManagerstatic Optional<X509ExtendedTrustManager>static X509ExtendedTrustManagerstatic <T extends TrustManagerFactory>
X509ExtendedTrustManagergetTrustManager(T trustManagerFactory) static voidswapTrustManager(X509TrustManager baseTrustManager, X509TrustManager newTrustManager) Swaps the internal TrustManager instance with the given trustManager object.static <T extends X509TrustManager>
X509ExtendedTrustManager[]toArray(T trustManager) static X509ExtendedTrustManagerwrapIfNeeded(X509TrustManager trustManager)
-
Method Details
-
combine
-
combine
-
toArray
-
createTrustManagerWithJdkTrustedCertificates
-
createTrustManagerWithSystemTrustedCertificates
-
createTrustManager
-
createTrustManager
-
createTrustManager
-
createTrustManager
public static X509ExtendedTrustManager createTrustManager(KeyStore trustStore, String trustManagerFactoryAlgorithm) -
createTrustManager
public static X509ExtendedTrustManager createTrustManager(KeyStore trustStore, String trustManagerFactoryAlgorithm, String securityProviderName) -
createTrustManager
public static X509ExtendedTrustManager createTrustManager(KeyStore trustStore, String trustManagerFactoryAlgorithm, Provider securityProvider) -
createTrustManager
public static X509ExtendedTrustManager createTrustManager(KeyStore trustStore, TrustManagerFactory trustManagerFactory) -
createTrustManager
public static X509ExtendedTrustManager createTrustManager(ManagerFactoryParameters... managerFactoryParameters) -
createTrustManager
public static X509ExtendedTrustManager createTrustManager(ManagerFactoryParameters managerFactoryParameters) -
createTrustManager
public static X509ExtendedTrustManager createTrustManager(ManagerFactoryParameters managerFactoryParameters, String trustManagerFactoryAlgorithm) -
createTrustManager
public static X509ExtendedTrustManager createTrustManager(ManagerFactoryParameters managerFactoryParameters, String trustManagerFactoryAlgorithm, String securityProviderName) -
createTrustManager
public static X509ExtendedTrustManager createTrustManager(ManagerFactoryParameters managerFactoryParameters, String trustManagerFactoryAlgorithm, Provider securityProvider) -
createTrustManager
public static X509ExtendedTrustManager createTrustManager(ManagerFactoryParameters managerFactoryParameters, TrustManagerFactory trustManagerFactory) -
createUnsafeTrustManager
-
createDummyTrustManager
-
createLoggingTrustManager
-
createCertificateCapturingTrustManager
public static X509ExtendedTrustManager createCertificateCapturingTrustManager(List<X509Certificate> certificatesCollector) -
createCertificateCapturingTrustManager
public static X509ExtendedTrustManager createCertificateCapturingTrustManager(X509TrustManager baseTrustManager, List<X509Certificate> certificatesCollector) -
wrapIfNeeded
-
createTrustManagerFactory
-
getTrustManager
public static <T extends TrustManagerFactory> X509ExtendedTrustManager getTrustManager(T trustManagerFactory) -
createInflatableTrustManager
-
createInflatableTrustManager
@Deprecated public static X509ExtendedTrustManager createInflatableTrustManager(Path trustStorePath, char[] trustStorePassword, String trustStoreType, BiPredicate<X509Certificate[], String> certificateAndAuthTypeTrustPredicate) Deprecated. -
createInflatableTrustManager
public static X509ExtendedTrustManager createInflatableTrustManager(Path trustStorePath, char[] trustStorePassword, String trustStoreType, Predicate<TrustManagerParameters> trustManagerParametersPredicate) -
addCertificate
public static void addCertificate(X509ExtendedTrustManager trustManager, X509Certificate certificate) Adds a new to be trusted certificate to the existing TrustManager. The provided TrustManager should be an instance ofInflatableX509ExtendedTrustManagerand it is allowed that it is wrapped in aCompositeX509ExtendedTrustManager -
addCertificate
public static void addCertificate(X509ExtendedTrustManager trustManager, List<X509Certificate> certificates) Adds a new to be trusted certificate to the existing TrustManager. The provided TrustManager should be an instance ofInflatableX509ExtendedTrustManagerand it is allowed that it is wrapped in aCompositeX509ExtendedTrustManager -
createSwappableTrustManager
Wraps the given TrustManager into an instance of a Hot Swappable TrustManager. This type of TrustManager has the capability of swapping in and out different TrustManagers at runtime.- Parameters:
trustManager- To be wrapped TrustManager- Returns:
- Swappable TrustManager
-
swapTrustManager
public static void swapTrustManager(X509TrustManager baseTrustManager, X509TrustManager newTrustManager) Swaps the internal TrustManager instance with the given trustManager object. The baseTrustManager should be an instance ofHotSwappableX509ExtendedTrustManagerand can be created withcreateSwappableTrustManager(X509TrustManager)- Parameters:
baseTrustManager- an instance ofHotSwappableX509ExtendedTrustManagernewTrustManager- to be injected instance of a TrustManager- Throws:
GenericTrustManagerException- ifbaseTrustManageris not instance ofHotSwappableX509ExtendedTrustManager
-
createEnhanceableTrustManager
@Deprecated public static X509ExtendedTrustManager createEnhanceableTrustManager(X509ExtendedTrustManager trustManager, ChainAndAuthTypeValidator chainAndAuthTypeValidator, ChainAndAuthTypeWithSocketValidator chainAndAuthTypeWithSocketValidator, ChainAndAuthTypeWithSSLEngineValidator chainAndAuthTypeWithSSLEngineValidator) Deprecated. -
createEnhanceableTrustManager
public static X509ExtendedTrustManager createEnhanceableTrustManager(X509ExtendedTrustManager trustManager, Predicate<TrustManagerParameters> trustManagerParametersValidator) -
createEnhanceableTrustManager
public static X509ExtendedTrustManager createEnhanceableTrustManager(X509ExtendedTrustManager trustManager, Predicate<TrustManagerParameters> trustManagerParametersValidator, boolean shouldTrustedCertificatesBeConcealed) -
trustManagerBuilder
-