是否可以创建包含diffie-Hellman公钥的X.509V3证书并使用DSA或ECDSA算法对其进行签名?
我使用makecert
进行此操作想你很多
答案 0 :(得分:3)
makecert仅支持DSA,而不支持ECDSA。那是因为它基于Crypto API 1.0,不支持椭圆曲线。 CNG支持椭圆曲线,它取代了CryptoAPI。
以下是makecert命令行的示例,该命令行将使您能够使用DSA根签署DSA证书。
makecert.exe -sp“Microsoft Enhanced DSS and Diffie-Hellman Cryptographic Provider”-sy 13 -ss ROOT -sv MyDSARootKey.pvk -pe -r -n“CN = DSA Root CA”-cy authority MyDSARootCert .CRT 强>
这会将根证书放在ROOT存储中,它将创建与之关联的PVK和CRT文件。注意“-r”开关指示自行证书。
makecert.exe -sp“Microsoft增强型DSS和Diffie-Hellman加密提供程序”-sy 13 -ss MY -sk UserKeyName -pe -n“CN = User Name”-cy end -iv MyDSARootKey.pvk - ic MyDSARootCert.crt -ip“Microsoft Enhanced DSS and Diffie-Hellman Cryptographic Provider”-iy 13 MyUserCert.crt
这会将用户证书放入MY商店。用户密钥在CSP内生成,而根密钥已放在PVK文件中。如果需要,您还可以告诉makecert使用开关“-sv”为用户创建PVK文件。
我希望这会有所帮助。 欢呼声,
Mounir IDRASSI
IDRIX http://www.idrix.fr