首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Curl在通过TLS下载时在XP上产生错误。

Curl在通过TLS下载时在XP上产生错误。
EN

Stack Overflow用户
提问于 2016-11-12 12:25:30
回答 1查看 3.7K关注 0票数 0

我用卷曲来下载图像。在win7上,它可以工作,但在XP上,它提供了一条消息:

(35) schannel: next InitializeSecurityContext failed: SEC_E_ILLEGAL_MESSAGE (0x80090326) -此错误通常发生在接收到致命的SSL/TLS警报时(例如握手失败)。更多细节可以在Windows系统中获得,甚至可以在t日志中找到。

我已经阅读了互联网上的所有可用信息,并发现它与函数中的错误有关。在实现中一定有一个错误。尽管谷歌Chrome如何访问这些资源?它使用自己的TLS函数还是使用Windows进行TLS协商?下面是一个示例:

代码语言:javascript
复制
curl -L -o "sub.jpg" "https://icdn.lenta.ru/images/2016/11/12/13/20161112133708253/pic_b3e542f41dea3569d80375712d111d6d.jpg"
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-11-12 13:19:18

Windows上的TLS堆栈非常老,不支持TLS 1.2或SNI,不支持ECDHE,对DHE的支持非常有限。给定错误消息,curl使用此堆栈(schannel)。您可能会在使用本地TLS堆栈SChannel的XP上获得与IE相同的错误。事实上,SSLLabs报告指出了XP上的IE8存在的问题。从这份报告中还可以看到哪些密码是站点支持的,如果您将其与IE8/XP提供的密码进行比较,并且可能还会发现curl/SChannel,您会发现没有重叠,即没有共享密码。

与此相反,Firefox和Chrome都不使用本地TLS堆栈,而是使用它们自己的(NSS),后者提供了现代特性。这解释了为什么这些工作与网站。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40562808

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档