我们很难与远程机器(如PayPal vb)建立https连接谁从我们的系统中禁用了SSL3协议。Net应用程序。HttpWebRequest实例的GetResponse方法出现以下异常。
请求被中止:无法创建SSL/TLS安全通道。
当我们使用WireShark深入并跟踪网络日志时,我们看到远程机器返回以下错误
TLSv1。2警报(级别:致命,描述:握手失败)握手失败40
更有趣的情况是,当我尝试将PayPal地址输入到internet浏览器时,它可以成功打开页面,这意味着可以建立连接,我们还尝试使用OpenSSL命令工具连接,结果再次成功连接。
当我们比较InternetExplorer和. net应用程序的WireShark日志时,我们可以看到Internet Explorer正在发送比. net应用程序更多的可用密码套件,并且PayPal正在选择以下不在. Net应用程序请求中的密码。
TLS_RSA_与_RC4_128_SHA
以下是从WireShark捕获的日志:
我们认为PayPal不喜欢我们的密码套件,我们从发送"客户你好"请求。网络应用程序。
更有趣的是,这个问题只发生在我们运行Windows 2008 R2的生产机器上,everythins正在使用Windows Server 2008 R2和Windows 8 PC开发环境。
请给我们一些解决这个问题的想法。
下面是我们的C#代码连接PayPalapi。
HttpWebRequest wr = (HttpWebRequest)WebRequest.Create("https://api-3t.sandbox.paypal.com/2.0/");
wr.Method = "POST";
wr.ContentType = "application/x-www-form-urlencoded";
string output = null;
try
{
WebResponse wres = wr.GetResponse();
Stream ress = wres.GetResponseStream();
StreamReader ressr = new StreamReader(ress, Encoding.UTF8);
output = ressr.ReadToEnd();
}
catch (System.Net.WebException webEx)
{
if (webEx.Response != null)
{
WebResponse wres = webEx.Response;
Stream ress = wres.GetResponseStream();
StreamReader ressr = new StreamReader(ress);
output = ressr.ReadToEnd();
}
else
throw webEx;
}
catch (Exception ex)
{
throw ex;
}
最好的问候
我们认为PayPal不喜欢我们的密码套件,我们从发送"客户你好"请求。网络应用程序。
这是正确的。如果你看一下SSLLAB,你会看到api-3t。沙箱。贝宝。com仅支持密码集中不包含的RC4-SHA(TLS_RSA_和_RC4_128_SHA)。
更有趣的情况是,这个问题只发生在我们运行Windows 2008 R2的生产机器上
可能是您对生产系统进行了一些加固,并禁用了RC4-SHA,因为该密码被认为是不安全的。请参阅Microsoft Technet,了解您可能已经实现的匹配建议。
我使用vert. x java客户端连接安慰服务器。当使用SSL证书进行连接时,收到以下SSL握手错误。我在代码中使用setTrust all(true)。有人能帮助解释错误的原因和解决方案吗? 以下是错误:SEVERE:未处理的异常java.lang.IllegalStateExctive:桥没有成功启动io.vertx.amqpbridge.impl.AmqpBridgeImpl.create
我需要与外部服务连接,而且我的客户端身份验证有问题。该服务需要证书、用户名和密码以及请求。 我正在使用Windows Server 2008 R2。 我已经收到带有证书的PKCS#7包并导入: 本地计算机/个人的SSL证书(仅含公钥) 中间CA和根CA到本地计算机/受信任的RootCertificationAuthorities 我已经在Windows注册表中启用了TLS 1.0、1.1、1.2客
在JDK 11下使用TLS 1.3原则上是可行的。然而,一旦在两个并发线程中建立连接,两个线程的初始握手都会失败。 这显然是一个已知的问题,应该已经解决了: Oracle JDK 11.0.2 OpenJDK 11.0.3 使用OpenJDK,这应该是固定的: 或者甚至是OpenJDK(这是今天在AdoptOpenJDK. net上可用的最新选项): 这是正式修复的,但我似乎无法让它工作。 这是怎
在这个基于Xcode7(beta)构建的应用程序中,TCP套接字连接(NSStream)失败,错误如下。 在info.plist中,我还包括了以下相关异常的ATS。 但在下面的委托中 -(void)stream:(NSStream*)stream HandleEvent:(NSStreamEvent)eventCode 我得到的事件代码为8,表示错误发生。具有上述描述。 验证错误:num=19:证
我不知道我到底需要在哪里包含客户机证书。现在,我的第一个问题是我不信任服务器。我尝试使用默认的Java密钥库文件(cacerts),其中包含Thawte和Digicert,这些是我试图与之通信的服务器的根权限。我使用
我正在go中运行https web服务器。我正在使用angular web应用程序(Chrome浏览器)对其进行测试,该应用程序可以对web服务器进行ajax调用。 如果我不断地点击网络服务器,一切似乎都正常。但每当我让它闲置一段时间并点击web服务器时,来自浏览器的ajax调用都不会得到响应。我几乎总是在服务器日志中看到此日志行。 我可以确认IP地址是我的IP地址。 我像这样启动我的https服