小编pet*_*eay的帖子

使用BouncyCastle生成的证书作为服务器进行身份验证时,"无法识别提供给程序包的凭据"错误

我正在尝试使用BouncyCastle.Crypto dll创建证书,然后使用该证书将SslStream作为Windows服务进程中的服务器进行身份验证,该服务在本地系统帐户下运行.

然而,当我到达SslStream.AuthenticateAsServer(证书)调用,它抛出以"提供给包中的凭据无法识别"错误消息的Win32异常.

这里有关于此错误消息的几个问题,但它们似乎都没有描述或解决我的特定问题.

希望有人能够提供一些帮助,我包含我用来创建和安装证书的代码:

// First create a certificate using the BouncyCastle classes
BigInteger serialNumber = BigInteger.ProbablePrime(120, new Random());
AsymmetricCipherKeyPair keyPair = GenerateKeyPair();

X509V1CertificateGenerator generator = new X509V1CertificateGenerator();
generator.SetSerialNumber(serialNumber);
generator.SetIssuerDN(new X509Name("CN=My Issuer"));
generator.SetNotBefore(DateTime.Today);
generator.SetNotAfter(DateTime.Today.AddYears(100));
generator.SetSubjectDN(new X509Name("CN=My Issuer"));
generator.SetPublicKey(keyPair.Public);
generator.SetSignatureAlgorithm("SHA1WITHRSA");

Org.BouncyCastle.X509.X509Certificate cert = generator.Generate(
    keyPair.Private, SecureRandom.GetInstance("SHA1PRNG"));

// Ok, now we have a BouncyCastle certificate, we need to convert it to the 
// System.Security.Cryptography class, by writing it out to disk and reloading
X509Certificate2 dotNetCert;

string tempStorePassword = "Password01"; // In …
Run Code Online (Sandbox Code Playgroud)

c# security ssl bouncycastle certificate

25
推荐指数
7
解决办法
3万
查看次数

标签 统计

bouncycastle ×1

c# ×1

certificate ×1

security ×1

ssl ×1