使用makecert.exe创建自签名CA证书

no9*_*no9 5 windows ssl ssl-certificate makecert

我正在尝试在32位Windows 7(虚拟)上创建自签名CA证书.该makecert是v7.1位于C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin>.

每当我尝试执行此命令(提升)...

makecert.exe -r -n “CN=MyCert CA” -pe -sv MyCert.pvk -a sha1 -len 2048
             -b 09/04/2012 -e 09/04/2018 -cy authority MyCert.cer
Run Code Online (Sandbox Code Playgroud)

...我收到提示输入密码但是当我确认密码时,我得到了:

错误:CryptCertStrToNameW失败=> 0x80092023(-2146885597)失败

任何帮助都会被贬低.

问候.

akt*_*ton 14

我将您的命令复制到命令提示符并得到相同的错误.但是,我重新输入了命令并且它有效.我怀疑name参数"CN=MyCert CA"中的一个字符是一个特殊字符,可能是从文字处理器复制的.


Nic*_*rey 12

这是一个老问题,但看起来你使用的是文字处理器"智能引号"而不是ASCII双引号.

所以问题不在于makecert,而在于您输入命令的方式.Windows命令shell cmd.exe不会被“CN=MyCert CA”视为带引号的单词.它反而看到两个裸字,“CN=MyCert并且CA”,"智能引号"是该单词的一部分.

  • ASCII直双引号,"代码点为U + 0022(在C#或C中也称为'\ x22').
  • 左侧双"智能"引号",代码点为U + 201C(在C#中也称为'\ u201C').
  • 正确的双"智能"引用,代码点为U + 201D(在C#中也称为'\ u201D').

因而错误.