java.security.NoSuchAlgorithmException: нет такого алгоритма: TLS1.2 для провайдера BCJSSE - PullRequest
0 голосов
/ 16 января 2019

Я использую банку надувного замка, чтобы получить экземпляр TLS1.2, но получаю следующее исключение: >

java.security.NoSuchAlgorithmException: no such algorithm: TLS1.2 for provider BCJSSE
at sun.security.jca.GetInstance.getService(GetInstance.java:157)
at sun.security.jca.GetInstance.getInstance(GetInstance.java:281)
at javax.net.ssl.SSLContext.getInstance(SSLContext.java:24)
at com.fca.mopar.partSegmentation.service.PartDataService.getRestTemplate(PartDataService.java:108)
at com.fca.mopar.partSegmentation.service.PartDataService.fetchPartInfo(PartDataService.java:161)
at com.fca.mopar.partSegmentation.controllers.MPIMController.partDetails(MPIMController.java:51)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:599)

Ниже приведен код:

`

Security.addProvider(new BouncyCastleJsseProvider());
SSLContext context = SSLContext.getInstance("TLS1.2", Security.getProvider("BCJSSE"));
context.init(null, null, null);
CloseableHttpClient httpClient = HttpClientBuilder.create().setSSLContext(context).build();
HttpComponentsClientHttpRequestFactory factory = new HttpComponentsClientHttpRequestFactory(httpClient);
restTemplate = new RestTemplate(factory);

`

Нам нужно вызвать веб-сервис с TLSv1.2, и наш сервер имеет более низкую версию TLS, поэтому квитирование не выполняется. (JDK: v1.6, JARS: bcprov-jdk15on-160, bctls-jdk15on-160). Может кто-нибудь, пожалуйста, помогите мне или приведите пример, если я делаю что-то не так.

...