如何为数字签名创建有效的 public 和私钥?

How to create valid public and private key for digital sign?

我如何获得带有真实 public 和私钥的免费 X509 证书?
我使用.net来加密和解密文档。
它可以导入 pfx 文件。
现在我如何为每个用户创建带有 public & private 的单个 pfx 文件?

您需要使用 makecert and pvk2pfx,两者都使用 visual studio 安装。

先运行makecert得到证书(cer文件)和私钥文件(pvk文件)

makecert -sv yourprivatekeyfile.pvk -n "cert name" yourcertfile.cer -b mm/dd/yyyy -e mm/dd/yyyy -r

其中:

  • -sv yourprivatekeyfile.pvk 是包含私钥的文件名。
  • -n "cert name" 是将出现在证书上(和证书存储中)的名称。
  • yourcertfile.cer 是证书文件的名称。
  • -b mm/dd/yyyy为证书生效日期
  • -e mm/dd/yyyy是证书过期的日期。
  • -r 表示这将是一个自签名证书。

如果你有两个文件,你可以将它们组合成一个 pfx 文件

PVK2PFX –pvk yourprivatekeyfile.pvk –spc yourcertfile.cer –pfx yourpfxfile.pfx –po yourpfxpassword

其中:

  • -pvk yourprivatekeyfile.pvk 是你创建的私钥文件
  • -spc yourcertfile.cer是你创建的证书文件
  • -pfx yourpfxfile.pfx 是将创建的 .pfx 文件的名称。
  • -po yourpfxpassword 是您要分配给 .pfx 文件的密码。