如何自行生成证书SHA-256?

时间:2011-09-09 07:33:46

标签: c# bouncycastle signature sha256 makecert

我在C#中使用Bouncy Castle库与SHA-256签名,我想在测试自生成证书而不是智能卡读卡器时使用它们。

使用之前使用的自我证书,我有一个加密例外:

  

指定的算法无效

如果我使用具有相同自我证书的SHA-1签名,那就顺利了。使用智能卡,相同的代码成功运行。

什么是makecert参数?

2 个答案:

答案 0 :(得分:8)

4.5版本的makecert支持其他签名算法,例如sha256,sha384或sha512。见makecert 4.5(-a)

答案 1 :(得分:2)

makecert没有参数可供使用SHA256具有makecert.exe的散列算法。您只能使用-a md5-a sha1

请注意,在Windows XP和Windows 2003及更早版本的操作系统上使用SHA256 / 384/512哈希的证书也存在问题(请参阅http://blogs.msdn.com/b/alejacma/archive/2009/01/23/sha-2-support-on-windows-xp.aspx),这可能就是您所看到的。