我正在编写一个脚本,可以自动添加最新的 GlobalSign 证书,如下所示:
https://support.globalsign.com/ca-certificates/root-certificates/globalsign-root-certificates
我能够使用以下命令成功导入以下内容certutil -addstore root
:
clientauthrootr45.crt
codesigningrootr45.crt
docsignrootr45.crt
iotrootr60.crt
Root-R1.crt
Root-R3.crt
rootr46.crt
root-r6.crt
smimerootr45.crt
timestamprootr45.crt
但这些证书导入失败:
clientauthroote45.crt
codesigningroote45.crt
docsignroote45.crt
iotroote60.crt
roote46.crt
Root-R5.crt
smimeroote45.crt
报告的错误是:
402.203.0: 0x80070057 (WIN32: 87): ..CertCli Version
Signature does not match Public key: 80090008
313.2389.0: 0x80090008 (-2146893816)
Cannot add a non-root certificate to the root store
313.2398.0: 0x8007000d (WIN32: 13)
313.2668.0: 0x8007000d (WIN32: 13)
313.2830.0: 0x8007000d (WIN32: 13)
CertUtil: -addstore command FAILED: 0x8007000d (WIN32: 13)
CertUtil: The data is invalid.
301.3160.0: 0x8007000d (WIN32: 13)
这些证书有何不同?可以从命令行导入吗?
答案1
该网站指出了其中的区别:
RSA 根证书
Root-R1.crt(等)
ECC 根证书
Root-R5.crt 以及所有看起来像“*e##.crt”的文件
...
Windows XP 是一款已有 19 年历史的操作系统,不支持椭圆曲线加密 (ECC)。这意味着无法验证证书中的签名,然后发生一系列错误。