从服务器收到的无效证书。错误代码:0xffffffff800b010a 单声道

Posted

技术标签:

【中文标题】从服务器收到的无效证书。错误代码:0xffffffff800b010a 单声道【英文标题】:Invalid certificate received from server. Error code: 0xffffffff800b010a Mono 【发布时间】:2017-09-18 11:45:00 【问题描述】:

我正在尝试使用带有 SSL 的端口 587 和 smtp.gmail.com 通过我的应用程序在 Mono 中发送消息并获取:

System.Net.Mail.SmtpException:无法发送消息。 ---> System.IO.IOException:身份验证或解密失败。 ---> System.IO.IOException:认证或解密失败。 ---> Mono.Security.Protocol.Tls.TlsException:无效 从服务器收到的证书。错误代码:0xffffffff800b010a

最有趣的是,那一周一切正常并且消息已发送。现在我弄错了。 我也试过mozroots --import,但没有帮助。我还更新了证书 GoogleInternetAuthorityG2.crt 但这没有帮助。

Ubuntu 16.04 和 Mono 4.6.2(稳定版 4.6.2.7/08fd525)

【问题讨论】:

【参考方案1】:

Mono 4.8或更高版本带来new TLS stack,支持更多加密算法,请升级。

【讨论】:

我正在取消 4.6.2(稳定版 4.6.2.7/08fd525) 那么,请升级【参考方案2】:

在发送消息之前试试这个(这有点像黑客,但在 Mono 上这是唯一对我有用的东西..)

ServicePointManager.ServerCertificateValidationCallback =
    delegate(object s, X509Certificate certificate,
             X509Chain chain, SslPolicyErrors sslPolicyErrors)
     return true; ;

【讨论】:

这是一个重要的安全风险,请尽量避免 需要这个来克服 Google 登录的障碍,不过我在完成后将其设置回原来的值,以防它暴露太多风险。 错误信息指出“认证或解密失败”。此解决方法适用于前者(身份验证失败),但不适用于后者(解密失败)。 YMMV。

以上是关于从服务器收到的无效证书。错误代码:0xffffffff800b010a 单声道的主要内容,如果未能解决你的问题,请参考以下文章

尝试发送邮件时远程证书无效

Mailcore 2 错误“此服务器的证书无效。” iOS

Power Bi PostgreSQL数据导入错误-根据验证过程,远程证书无效。'“

解析服务器证书问题

iPhone上的“不受信任的服务器证书”

APNS - 无效的注册消息