Tag: sslhandshakeexception

如何解决javax.net.ssl.SSLHandshakeException错误?

我连接到VPN来设置库存API来获取产品清单,它工作正常。 一旦我从Web服务获得结果,并绑定到UI。 而且我还将PayPal与我的应用程序进行了快速结账,当我拨打付款电话时,我正面临着这个错误。 我使用servlet进行后端进程。 任何人都可以说如何解决这个问题? javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

javax.net.ssl.SSLHandshakeException:javax.net.ssl.SSLProtocolException:SSL握手中止:SSL库中的失败,通常是协议错误

我想在android中运行下面的代码 URLConnection l_connection = null; // Create connection uzip=new UnZipData(mContext); l_url = new URL(serverurl); if ("https".equals(l_url.getProtocol())) { System.out.println("<<<<<<<<<<<<< Before TLS >>>>>>>>>>>>"); sslcontext = SSLContext.getInstance("TLS"); System.out.println("<<<<<<<<<<<<< After TLS >>>>>>>>>>>>"); sslcontext.init(null, new TrustManager[] { new CustomTrustManager()}, new java.security.SecureRandom()); HttpsURLConnection .setDefaultHostnameVerifier(new CustomHostnameVerifier()); HttpsURLConnection.setDefaultSSLSocketFactory(sslcontext .getSocketFactory()); l_connection = (HttpsURLConnection) l_url.openConnection(); ((HttpsURLConnection) l_connection).setRequestMethod("POST"); } else { l_connection = (HttpURLConnection) l_url.openConnection(); ((HttpURLConnection) […]

Java SSLHandshakeException“没有共同的密码套件”

我正在使用SSLServerSocket来接受我的openSUSE服务器上的客户端连接,但是他们都不能连接。 我总是得到一个SSLHandshakeException,说no cipher suites in common 。 我已经激活了所有可能的套件,启用了多个协议,尝试了最新的Oracle JRE和openjdk。 另外,我在论坛和其他东西上跟着其他post,并“解锁”了Oracle的所有密码套件,并且改变了openjdk jre的设置,如下所示: 禁用: #security.provider.10=sun.security.pkcs11.SunPKCS11 ${java.home}/lib/security/nss.cfg并启用: security.provider.9=sun.security.ec.SunEC 这是我如何初始化我的SSLServerSocket: System.setProperty("javax.net.ssl.keyStore", "./keystore"); System.setProperty("javax.net.ssl.keyStorePassword", "nopassword"); java.lang.System.setProperty("sun.security.ssl.allowUnsafeRenegotiation", "true"); // Create a trust manager that does not validate certificate chains TrustManager[] trustAllCerts = new TrustManager[] { new X509TrustManager() { public void checkClientTrusted(java.security.cert.X509Certificate[] certs, String authType) { } public void checkServerTrusted(java.security.cert.X509Certificate[] certs, String […]

Java客户端证书通过HTTPS / SSL

我正在使用Java 6,并试图使用客户端证书在远程服务器上创buildHttpsURLConnection 。 服务器正在使用自签名根证书,并要求提供受密码保护的客户端证书。 我已经将服务器根证书和客户端证书添加到我在/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/lib/security/cacerts 10.5)中find的默认Java密钥库。 密钥库文件的名称似乎表明客户端证书不应该在那里? 无论如何,将根证书添加到此商店解决了臭名昭着的javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed' problem. 但是,我现在坚持如何使用客户端证书。 我已经尝试了两种方法,并没有让我到任何地方。 首先,首选,尝试: SSLSocketFactory sslsocketfactory = (SSLSocketFactory) SSLSocketFactory.getDefault(); URL url = new URL("https://somehost.dk:3049"); HttpsURLConnection conn = (HttpsURLConnection)url.openConnection(); conn.setSSLSocketFactory(sslsocketfactory); InputStream inputstream = conn.getInputStream(); // The last line fails, and gives: // javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure 我试过跳过HttpsURLConnection类(不理想,因为我想与服务器通话HTTP),而不是这样做: SSLSocketFactory sslsocketfactory = (SSLSocketFactory) SSLSocketFactory.getDefault(); […]

收到致命警报:handshake_failure通过SSLHandshakeException

我有一个授权SSL连接的问题。 我创建了使用客户端授权SSL证书连接到外部服务器的Struts Action。 在我的行动中,我试图发送一些数据到银行服务器,但没有任何运气,因为我从服务器的结果有以下错误: error: javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure 我的方法从我的操作类发送数据到服务器 //Getting external IP from host URL whatismyip = new URL("http://automation.whatismyip.com/n09230945.asp"); BufferedReader inIP = new BufferedReader(new InputStreamReader(whatismyip.openStream())); String IPStr = inIP.readLine(); //IP as a String Merchant merchant; System.out.println("amount: " + amount + ", currency: " + currency + ", clientIp: " + IPStr + ", […]