我正在尝试使用以编程方式发送电子邮件SmtpClient.Send
.我正在AuthenticationException
尝试发送电子邮件.这是因为证书验证程序失败.
我知道证书是正确的,但我也理解,信任所有证书并不安全,就像这样做的建议:
ServicePointManager.ServerCertificateValidationCallback += (sender, certificate, chain, sslPolicyErrors) => { return true; };
所以我想知道测试Thumbprint
已知的有效证书指纹是否足够安全,如下所示:
ServicePointManager.ServerCertificateValidationCallback += (sender, certificate, chain, sslPolicyErrors) => { if (sslPolicyErrors == SslPolicyErrors.None) return true; else if (certificate.GetCertHashString().Equals("B1248012B10248012B")) return true; return false; };
Ben.. 6
是.
指纹是证书的SHA1哈希,虽然不是绝对不可能,但是很难伪造.
在技术方面,目前还没有针对SHA1的已知可行的第二前映像攻击.
但是,如果有任何疑问,您可以存储整个证书,也许使用指纹作为密钥.然后,您可以将整个证书与存储的可信证书进行比较.
是.
指纹是证书的SHA1哈希,虽然不是绝对不可能,但是很难伪造.
在技术方面,目前还没有针对SHA1的已知可行的第二前映像攻击.
但是,如果有任何疑问,您可以存储整个证书,也许使用指纹作为密钥.然后,您可以将整个证书与存储的可信证书进行比较.