为了签署/加密电子邮件,我安装了 Verisign 的 Verisign S-Mime 证书,并将其从 IE 导出为 .pfx(PKCS #12)。
我的问题是当我尝试将其导入时安全 > 我的身份 > 您的证书 > 导入证书我收到此错误:
服务器上的签名无效,详细信息请参阅协议
我在网上看到,我必须确保根证书VeriSign_Class_1_公共_主要_认证机构_G3和中级证书赛门铁克 1 级个人用户 - G5已安装。
在我的情况下,当我在 IE 中检查时,我找到了所有证书,但在 Lotus Notes 中文件 > 安全 > 其他身份 > 认证 > 互联网 全部我看到了根 Verisign,但没有找到中间证书(Symantec...)。
我如何导入这个中间证书,有人知道这是否真的是问题的根源吗?
我使用 Lotus Notes 8.5
答案1
错误的原因在于,为了将证书导入您的 ID,您需要信任完整的证书链。默认情况下,一些较新的中间证书既不在 domino 目录中,也不在您的个人通讯录中,也不在您的 ID 文件中。
如果您只是自己需要这个,那么请使用您已经找到的对话框,通过按钮导入您的 id 文件中的根和所有中间体,Your Certificates - Get Certificates - Import Internet Certificates
并将它们(从上到下,根 -> 中间 -> 个人)添加到您的 ID。
如果您需要为多个用户提供此证书,则直接将中间证书添加到 domino 目录。然后它将自动用于每个用户。为此,请在您的服务器上打开 names.nsf,转到Security\Certificates
查看并单击Actions - Import Internet Certificates
。然后选择证书并导入它们。
为了使证书发挥作用,以下几点非常重要:
- 按正确的顺序导入它们
- 不要忘记任何中间
- 确保你有完整和正确的链条
我举一个例子(这是针对服务器证书的,但对于 mime 证书也是如此):
如果您拥有 Thawte 123 服务器证书,那么您首先需要 Thawte Premium 服务器:
Issuer: C=ZA, ST=Western Cape, L=Cape Town, O=Thawte Consulting cc, OU=Certification Services Division, CN=Thawte Premium Server CA/[email protected]
Subject: C=ZA, ST=Western Cape, L=Cape Town, O=Thawte Consulting cc, OU=Certification Services Division, CN=Thawte Premium Server CA/[email protected]
可以使用免费的 openssl- 工具通过以下命令提取此信息openssl x509 -in filenamewithcert.pem -text
你看:在此证书中,颁发者和主体是相同的:这是自签名根。
然后你需要解冻主根:
Issuer: C=ZA, ST=Western Cape, L=Cape Town, O=Thawte Consulting cc, OU=Certification Services Division, CN=Thawte Premium Server CA/[email protected]
Subject: C=US, O=thawte, Inc., OU=Certification Services Division, OU=(c) 2006 thawte, Inc. - For authorized use only, CN=thawte Primary Root CA
你会看到:ISSUER 是第一个导入的证书。这很重要,因为它们是匹配的。
最后一个 - 在您自己的服务器证书之前 - 是 Thawte DV SSL CA:
Issuer: C=US, O=thawte, Inc., OU=Certification Services Division, OU=(c) 2006 thawte, Inc. - For authorized use only, CN=thawte Primary Root CA
Subject: C=US, O=Thawte, Inc., OU=Domain Validated SSL, CN=Thawte DV SSL CA
它本身是由主根签名的。
很多时候,证书的签名者并不会让您轻易找出哪些证书用于签署您自己的证书。使用 openssl 找出并“逆向工程”正确的顺序。如果您按照此顺序导入所有内容并且不遗漏任何中间内容,那么它将起作用。
答案2
经过研究,我想与您分享我的问题的解决方案。
Notes 8.5.x 版本不支持 SHA-2,而且遗憾的是 8.5.x 上没有支持 SHA-2 的修补程序。
SHA-2 仅在 Domino 9.0.x 中可用,因为 8.5.x 版本“缺少 SHA-2 的加密基础设施
这就是我收到此错误信息的原因。
我在 Notes 9.0.1 上测试了相同的证书,一切正常。
详情请见:
微软建议证书颁发机构不再使用 SHA-1 哈希算法签署新生成的证书,并开始迁移到 SHA-2。