SSC签名EXE后证书不可用及证书路径CA权限问题求助
证书无效问题解决建议
问题描述
- 证书无效,提示:证书路径中的其中一个证书颁发机构(CA)似乎不被允许颁发证书
- 自制SSC签名EXE文件后,数字签名选项卡显示证书不可用
- 已将相关证书导入「受信任的根证书颁发机构」,重新制作SSC后问题依旧
排查与解决步骤
- 检查CA证书的权限配置
打开证书属性,查看「详细信息」选项卡中的「密钥用法」和「增强型密钥用法」,确认是否包含代码签名相关权限,缺少该权限会导致无法用于EXE签名。 - 验证签名链完整性
使用命令行工具signtool检查签名链:
查看输出中的具体错误信息,定位链中存在问题的CA证书。signtool verify /v /pa "你的EXE文件路径" - 确认根CA的信任设置
确保根CA证书导入「受信任的根证书颁发机构」后,其「证书用途」中明确允许代码签名操作,部分导入的根CA可能默认限制了用途。 - 检查SSC制作流程
制作软件发布证书(SSC)时,需确保正确指定代码签名的扩展属性,且使用的密钥算法符合系统要求(如RSA 2048位及以上),避免因证书本身属性不符合导致签名无效。 - 验证证书本身有效性
使用certutil工具验证证书:
通过输出结果排查证书是否存在格式、有效期或链验证错误。certutil -verify "你的证书文件路径"
内容的提问来源于stack exchange,提问作者Gamer Galore
相关产品推荐
相关产品推荐

