OpenSSL与C#

OpenSSL与C#,c#,openssl,ssl-certificate,C#,Openssl,Ssl Certificate,我正试图用C#编写一个程序,通过它我可以检索URL的SSL证书主题。为此,我不得不将OpenSSL与TCP端口一起使用,我尝试了太多功能,但没有找到任何解决方案。 我编写了以下代码: try { HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://google.com"); HttpWebResponse response = (HttpWebResponse)request.G

我正试图用C#编写一个程序,通过它我可以检索URL的SSL证书主题。为此,我不得不将OpenSSL与TCP端口一起使用,我尝试了太多功能,但没有找到任何解决方案。 我编写了以下代码:

 try {
        HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://google.com");
        HttpWebResponse response = (HttpWebResponse)request.GetResponse();
        response.Close();

        var cert = request.ServicePoint.Certificate;
        var subject = cert.Subject.ToString();
        txt.Text = subject;
        txt.Text = txt.Text + "<br>" + cert.Issuer;
    }
    catch (Exception exe)
    {
        txt.Text = exe.ToString();
    }
任何帮助都将不胜感激。
谢谢

为什么需要使用OpenSSL?您不能通过.NETAPI获得相同的信息吗?看起来你正在经历一些不需要的额外努力。OpenSSL是一个C库。要使用它,你要么需要找到一个PInvoke库,要么自己编写一个。基本上,我需要用c#与asp.net一起使用,而且我知道在dot net API上有太多的帮助材料,但我的客户要求我使用OpenSSL来实现。你可能想看看这是否能帮助你。基本上,我会开始为OpenSSL寻找一个.NET包装器库。现在还不清楚您试图用OpenSSL做什么,以及使用OpenSSL时的问题是什么。也许你应该浏览一下C#中的一些结果。Bouncy Castle在C#中是一个更好的选择,但这样的问题目前还不受欢迎。
http://fm4dd.com/openssl/sslconnect.htm