我在Unity游戏中验证SSL证书时遇到了问题。
我编写了一个简单的测试代码,如下:
ServicePointManager.ServerCertificateValidationCallback += ServerCertificateValidationCallback;
private static bool ServerCertificateValidationCallback(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors)
{
return true;
}
public void Test()
{
WebClient w = new WebClient();
string downloadString = w.DownloadString("https://encrypted.google.com/");
}
我已经在.NET 4.5和Unity(Mono)中实现了这个功能。问题是,在.NET中,该证书被正确验证,但是在Mono中,出现了以下错误:
SslPolicyErrors: RemoteCertificateChainErrors
ChainStatus:
PartialChain
RevocationStatusUnknown
OfflineRevocation
为什么会发生这种情况?我应该在Mono中设置些什么来处理它吗?
谢谢。