- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我的 java 应用程序由 JBoss AS 5 运行。我试图通过 URL 连接以下载图像,但我收到下一个异常:javax.net.ssl.SSLHandshakeException:收到致命警报:handshake_failure
我已将 trust-managet 配置为“完全信任的信任管理器”:
TrustManager[] trustAllCerts = new TrustManager[]{
new X509TrustManager() {
@Override
public java.security.cert.X509Certificate[] getAcceptedIssuers() {
return null;
}
@Override
public void checkClientTrusted(
java.security.cert.X509Certificate[] certs, String authType) {
}
@Override
public void checkServerTrusted(
java.security.cert.X509Certificate[] certs, String authType) {
}
}
};
// Install the all-trusting trust manager
try {
SSLContext sc = SSLContext.getInstance("TLSv1.2");
sc.init(null, trustAllCerts, new java.security.SecureRandom());
HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
} catch (Exception e) {
}
HostnameVerifier hv = new HostnameVerifier() {
@Override
public boolean verify(String urlHostName, SSLSession session) {
return true;
}
};
HttpsURLConnection.setDefaultHostnameVerifier(hv);
我的简单java代码:
URL url = new URL("https://cdn.hotelbeds.com/giata/62/623081/623081a_hb_ro_007.jpg");
url.openConnection().connect();
我已激活 ssl Debug模式 (-Djavax.net.debug=ssl) 并收到以下日志:
`18:20:23,030 INFO [STDOUT] Allow unsafe renegotiation: falseAllow legacy hello messages: trueIs initial handshake: trueIs secure renegotiation: false18:20:23,031 INFO [STDOUT] WorkerThread#1[10.0.0.38:52361], setSoTimeout(0) called18:20:23,032 INFO [STDOUT] Ignoring unsupported cipher suite: TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 for TLSv118:20:23,032 INFO [STDOUT] Ignoring unsupported cipher suite: TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 for TLSv118:20:23,032 INFO [STDOUT] Ignoring unsupported cipher suite: TLS_RSA_WITH_AES_128_CBC_SHA256 for TLSv118:20:23,032 INFO [STDOUT] Ignoring unsupported cipher suite: TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256 for TLSv118:20:23,032 INFO [STDOUT] Ignoring unsupported cipher suite: TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256 for TLSv118:20:23,032 INFO [STDOUT] Ignoring unsupported cipher suite: TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 for TLSv118:20:23,032 INFO [STDOUT] Ignoring unsupported cipher suite: TLS_DHE_DSS_WITH_AES_128_CBC_SHA256 for TLSv118:20:23,032 INFO [STDOUT] Ignoring unsupported cipher suite: TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 for TLSv1.118:20:23,032 INFO [STDOUT] Ignoring unsupported cipher suite: TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 for TLSv1.118:20:23,032 INFO [STDOUT] Ignoring unsupported cipher suite: TLS_RSA_WITH_AES_128_CBC_SHA256 for TLSv1.118:20:23,032 INFO [STDOUT] Ignoring unsupported cipher suite: TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256 for TLSv1.118:20:23,032 INFO [STDOUT] Ignoring unsupported cipher suite: TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256 for TLSv1.118:20:23,032 INFO [STDOUT] Ignoring unsupported cipher suite: TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 for TLSv1.118:20:23,032 INFO [STDOUT] Ignoring unsupported cipher suite: TLS_DHE_DSS_WITH_AES_128_CBC_SHA256 for TLSv1.1.......................18:20:23,036 INFO [STDOUT] Cipher Suites: [TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256, TLS_DHE_RSA_WITH_AES_128_CBC_SHA256, TLS_DHE_DSS_WITH_AES_128_CBC_SHA256, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDH_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256, TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256, TLS_DHE_RSA_WITH_AES_128_GCM_SHA256, TLS_DHE_DSS_WITH_AES_128_GCM_SHA256, TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA, TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_RSA_WITH_3DES_EDE_CBC_SHA, TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA, TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA, TLS_EMPTY_RENEGOTIATION_INFO_SCSV]18:20:23,036 INFO [STDOUT] Compression Methods: {0}18:20:23,036 INFO [STDOUT] Extension elliptic_curves, curve names: {secp256r1, secp384r1, secp521r1, sect283k1, sect283r1, sect409k1, sect409r1, sect571k1, sect571r1, secp256k1}18:20:23,036 INFO [STDOUT] Extension ec_point_formats, formats: [uncompressed]18:20:23,036 INFO [STDOUT] Extension signature_algorithms, signature_algorithms: SHA512withECDSA, SHA512withRSA, SHA384withECDSA, SHA384withRSA, SHA256withECDSA, SHA256withRSA, SHA256withDSA, SHA1withECDSA, SHA1withRSA, SHA1withDSA18:20:23,037 INFO [STDOUT] WorkerThread#1[10.0.0.38:52361], WRITE: TLSv1.2 Handshake, length = 16118:20:23,065 INFO [STDOUT] WorkerThread#1[10.0.0.38:52361], READ: TLSv1.2 Alert, length = 218:20:23,066 INFO [STDOUT] WorkerThread#1[10.0.0.38:52361]18:20:23,066 INFO [STDOUT] RECV TLSv1.2 ALERT: fatal, handshake_failure18:20:23,066 INFO [STDOUT] WorkerThread#1[10.0.0.38:52361], called closeSocket()18:20:23,066 INFO [STDOUT] WorkerThread#1[10.0.0.38:52361], handling exception: javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
此外,我还尝试使用以下“解决方案”的属性:
java版本为1.8.0_131。我应该怎么做才能连接到该网站并下载该图片?
提前致谢。
最佳答案
从我在根据 SSLLabs 检查您的站点时看到的内容以及调试输出中不存在的扩展名来看,它看起来非常像一个副本。参见 here我的答案和解决方案(升级 Java)。
关于ssl - Java8,JBoss AS5,SSLException : "Received fatal alert: handshake_failure",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49454296/
在 Android Studio 中,当我尝试通过 SDK 管理器更新大型 SDK 时,我不断收到以下错误: SSLException: Connection has been shutdown:
我只是集成 Frimi 支付网关。第一步我尝试生成访问 token ,生成 token 后将调用支付链接。但我收到错误:- SSLException:连接已被对等方关闭。 public void
我发布了 this issue我可以解决它从 WebLogic startups 参数中删除下一个: -Djsse.enableSNIExtension=false 谁能解释一下? 最佳答案 参数 -
我的类(class)有一个简短的任务,即扩展一个简单的 Java 服务器以在 Ubuntu 上支持 SSL。 好的,首先,我这样做了: 私有(private)静态 SSLServerSocketFac
我打算为 Android 应用程序使用 GCM 功能。我设置了正确的 Android 应用程序和部署在本地主机上的后端服务。 一切都很好,通知显示在我的测试设备上。接下来我尝试将服务部署到具有真实 I
所以我想通过 https 测试一下。问题是我得到这个: Error getting response; javax.net.ssl.SSLException Received Fatal alert:
我将我的文件从 android 上传到 aws 服务。我是这样配置的: AwsMetadata awsMetadata = resultData.getParcelable(Params.Comm
我尝试向 Web 服务发送 https 请求,在几次成功尝试后,我开始不断收到此错误。这个错误是什么意思,为什么它会在第一次发生。 javax.net.ssl.SSLException: java.l
我是 React Native 的新手,一直在尝试一两个示例。当我尝试在我的 Mac 上构建 Android“电影”示例时,出现以下错误: ./gradlew :Examples:Movies:and
这个问题已经有答案了: javax.net.ssl.SSLException: Received fatal alert: protocol_version (15 个回答) 已关闭 7 年前。 我试
我正在尝试在 Android 客户端上使用自定义证书实现 SSL 连接。如果我尝试使用我编写的普通 Java 程序连接到同一台服务器(我在其中使用系统参数导入 keystore ),一切正常。此外,如
当我向 Google 云消息传递中心发送新的推送通知时,有时会出现问题。我正在使用可用的 Google 库 here .我正在使用 Tomcat 7.0.35 和 bouncycaSTLe 1.46。
我需要在服务器启动时使用 jax-rs 访问 https URL 以获取一些唯一的 session key 。但是,一旦 session 过期,我将再次触发对该 URL 的点击并取回我的 sessio
我正在使用 Android-Query 进行 HTTP 调用,并且不断收到随机的 SSLExceptions,如下所示: AQuery(7746): javax.net.ssl.SSLExceptio
这个问题在这里已经有了答案: 关闭 10 年前。 Possible Duplicate: SSL handshake alert: unrecognized_name error since upg
从昨天开始,我无法从 JBoss EAP 6.2 连接到我本地开发机器上的 MicroSoft SQLServer (v11.1.3000.0)。 SQLServer 现在想要使用 SSL 进行连接。
我正在创建一个 web 项目..我已经为此配置了 jdbc 领域..我需要将 java servlet 连接到 mysql 数据库.. private static String JDBC_DRIVE
当使用 Android 的 HttpUrlConnection 库发出 HTTPS 请求时,我有时会看到抛出以下异常: javax.net.ssl.SSLException: SSL handshak
我一直在使用以下代码连接到谷歌的一项服务。这段代码在我的本地机器上运行良好: HttpClient client=new DefaultHttpClient(); HttpPost post = ne
我有一个 Spring Boot 后端项目。我想使用我的 ssl 证书。 这是我的 application.properties 文件。 我使用 mycert.cert 和 mycert.key 创建
我是一名优秀的程序员,十分优秀!