我在 C# 中使用Bouncy Castle库使用SHA-256进行签名,并且我想在测试自生成证书而不是智能卡读卡器时使用它们。
使用之前使用的自我证书,我有一个加密异常:
指定的算法无效
如果我使用具有相同自我证书的SHA-1签名,则一切顺利。使用智能卡,相同的代码可以成功运行。
makecert 参数是什么?
我在 C# 中使用Bouncy Castle库使用SHA-256进行签名,并且我想在测试自生成证书而不是智能卡读卡器时使用它们。
使用之前使用的自我证书,我有一个加密异常:
指定的算法无效
如果我使用具有相同自我证书的SHA-1签名,则一切顺利。使用智能卡,相同的代码可以成功运行。
makecert 参数是什么?
makecert 4.5 版本支持其他签名算法,如 sha256、sha384 或 sha512。请参阅makecert 4.5 (-a)
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),这可能就是您所看到的。