我有一个X509Certificate2类型的对象并想将其显示给用户。我用X509Certificate2UI.DisplayCertificate做这个方法。我遇到的问题是,我要显示的这个证书是由中间CA颁发的,它的证书不在机器证书存储中,但它的根是。现在,如果我显示所述证书,对话框将无法构建链(与我相反,因为我可以使用X509Chain和中间CA作为额外的元素)如何显示全链证书?X509Certificate2endCert=...;X509Certificate2intermediateCA=...;X509Chainchain=newX509Chain();chain.Chai
显然我在之前的帖子中问错了问题。我有一个使用X.509证书保护的Web服务,作为安全网站运行(https://..。)。我想使用公司的根CA颁发的客户端机器证书(也是X.509)向服务器验证客户端机器是否有权使用该服务。为此,我需要检查证书并寻找一些识别特征并将其与存储在数据库中的值(可能是指纹?)相匹配。这是我用来从本地证书存储中获取证书的代码(直接从http://msdn.microsoft.com/en-us/magazine/cc163454.aspx中提取):publicstaticclassSecurityCertificate{privatestaticX509Certi
我有一个System.Security.Cryptography.X509Certificates.X509Certificate2对象。我需要将其转换为Org.BouncyCaSTLe.X509.X509Certificate的对象。谁能帮帮我? 最佳答案 使用Org.BouncyCaSTLe.Security.DotNetUtilities.FromX509Certificate,它采用System.Security.Cryptography.X509Certificates.X509Certificate并返回Org.Boun
如何确定X509Certificate2是否已被撤销?我假设Verify()方法检查它,但它没有在帮助中明确说明。有人知道吗?另外:Verify()是否检查证书是否过期? 最佳答案 您是否尝试过使用X509Chain?varchain=newX509Chain();chain.ChainPolicy.RevocationMode=X509RevocationMode.Online;chain.ChainPolicy.RevocationFlag=X509RevocationFlag.EntireChain;chain.ChainPo
我在SQLServer连接字符串中使用Encrypt=yes,因为我需要对TCPIP流量进行加密,但是在打开连接时出现错误:Aconnectionwassuccessfullyestablishedwiththeserver,butthenanerroroccurredduringthepre-loginhandshake.(provider:SSLProvider,error:0-Thecertificate'sCNnamedoesnotmatchthepassedvalue.)关于如何解决这个问题有什么建议吗?我假设我的服务器之间需要某种证书关系,但不知道从哪里开始。我需要这个用于
我正在使用ThisGoogleJsonWebToken类以生成访问token,以与对GoogleCalendarAPI的json调用一起使用。当我使用以下内容(使用我的实际服务帐户电子邮件)时,它在我的开发机器上的IISExpress中工作得很好:stringp12Path=HttpContext.Current.Server.MapPath("~/App_Data/certificate.p12");varauth=GoogleJsonWebToken.GetAccessToken("uniquestring@developer.gserviceaccount.com",p12Pat
我有一个由SslStream.AuthenticateAsClient调用的RemoteCertificateValidationCallback函数,它传递了一个X509Certificate对象。我想从该证书中提取名称,如果我将该字符串传递给AuthenticateAsClient,它就会通过。(假设没有其他问题。)(注意:Subject属性包含域名,但它位于“CN=...,S=...”等格式的字符串中。)另请参阅:HowtoextractCNfromX509CertificateinJava?(针对Java提出了类似的问题,但我找不到这些答案中提到的.NET的类似类。)(跟进Eu
我使用BouncyCaSTLe创建证书varkeypairgen=newRsaKeyPairGenerator();keypairgen.Init(newKeyGenerationParameters(newSecureRandom(newCryptoApiRandomGenerator()),1024));varkeypair=keypairgen.GenerateKeyPair();vargen=newX509V3CertificateGenerator();varCN=newX509Name("CN="+certName);varSN=BigInteger.ProbablePri
我设法使JwtSecurityTokenHandler与X509Certificate2一起工作。我能够使用X509Certificate2对象对token进行签名。我还能够通过X509Certificate2.RawData属性使用证书的原始数据来验证token。代码如下:classProgram{staticvoidMain(string[]args){X509Storestore=newX509Store("My");store.Open(OpenFlags.ReadOnly);X509Certificate2signingCert=store.Certificates[0];s
这似乎是一个常见错误,但虽然我找到了解决方法(见下文),但我无法确定我首先遇到它的原因。我正在将SMTP功能写入我们的应用程序,并且我正在尝试将SSL功能添加到我们已有的工作SMTP中。我正在使用我们公司的MSExchange服务器进行测试,特别是在该服务器上启用的网络邮件选项。通过不验证我的连接并匿名发送,我可以通过我的代码在内部发送电子邮件,但是由于我们公司的政策,这些电子邮件不会转发到外部电子邮件地址。除此之外,我正在为我们的客户编程,他们并不都允许开放中继和/或匿名连接。我相信Exchange服务器正在使用显式SSL/TLS。我已经尝试在端口25上通过telnet连接到服务器的