0
  • 我测试生成以下链接的csr文件。

http://www.journaldev.com/223/generating-a-certificate-signing-request-using-java-api

  • 使用这个java程序输出.key和.req文件

对于 .req 文件 :::::::::

BufferedOutputStream bos1 = new BufferedOutputStream(new FileOutputStream(txtRequest.getText())); bos1.write(csr.getBytes());

对于 .key 文件 :::::::::

BufferedOutputStream bos2 = new BufferedOutputStream(new FileOutputStream(txtPrivateKey.getText())); bos2.write(getPrivateKey().getEncoded());

  • 使用其他 C# 应用程序生成 .pfx
  • 我在我的电脑中安装了这个 .pfx 文件,发生错误...

发生内部错误。您正在导入的私钥可能需要系统上未安装的加密服务提供程序。

我不知道如何解决这个错误。如果你知道,请给我解释一下。

谢谢。

4

1 回答 1

0

当您使用特定的加密服务提供商 (csp) 生成证书时(如果您尚未设置 csp,那么它将是操作系统的默认 csp)并且如果该 csp(默认 csp 不同)在您导入证书的机器是 - 然后您将看到此行为。

当我在我的 xp 机器中生成它并将其导入服务器 2008 时,我已经看到了这种行为。我发现这两个操作系统中的默认 csp 是不同的。

我的解决方法是将其导入服务器 2003 并导出,然后将其导入服务器 2008。我假设服务器 2008 在导入证书时比服务器 2003 具有更严格的验证。

于 2012-06-22T08:43:36.750 回答