|
24 | 24 | import java.security.KeyStoreException;
|
25 | 25 | import java.security.NoSuchAlgorithmException;
|
26 | 26 | import java.security.PrivateKey;
|
| 27 | +import java.security.Provider; |
27 | 28 | import java.security.Security;
|
28 | 29 | import java.security.UnrecoverableKeyException;
|
29 | 30 | import java.security.cert.Certificate;
|
|
32 | 33 | import java.security.cert.X509Certificate;
|
33 | 34 | import java.security.spec.InvalidKeySpecException;
|
34 | 35 | import java.util.Collection;
|
| 36 | +import java.util.ServiceLoader; |
35 | 37 | import javax.net.ssl.KeyManager;
|
36 | 38 | import javax.net.ssl.KeyManagerFactory;
|
37 | 39 | import org.bouncycastle.asn1.pkcs.PrivateKeyInfo;
|
|
40 | 42 | import org.bouncycastle.openssl.jcajce.JcaMiscPEMGenerator;
|
41 | 43 | import org.bouncycastle.openssl.jcajce.JcaPEMKeyConverter;
|
42 | 44 | import org.bouncycastle.util.io.pem.PemWriter;
|
| 45 | +import org.slf4j.Logger; |
| 46 | +import org.slf4j.LoggerFactory; |
43 | 47 |
|
44 | 48 | public class SSLUtils {
|
| 49 | + private static final Logger log = LoggerFactory.getLogger(SSLUtils.class); |
| 50 | + |
45 | 51 | static {
|
46 |
| - Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider()); |
| 52 | + ServiceLoader<Provider> services = ServiceLoader.load(java.security.Provider.class); |
| 53 | + for (Provider service : services) { |
| 54 | + log.debug("Found security provider: " + service.getName()); |
| 55 | + Security.addProvider(service); |
| 56 | + } |
47 | 57 | }
|
48 | 58 |
|
49 | 59 | public static boolean isNotNullOrEmpty(String val) {
|
|
0 commit comments