问题描述
我创建了一个小的 Windows 可执行文件,我需要在交付前进行数字签名。主要原因是在 UAC 对话框中将“Unknown Publisher”行替换为公司名称。
我找到了用于签署应用程序的工具 (signtool) 和命令。一个核心要求是有效的数字证书。由于我们已经为我们公司的网站颁发了数字证书,因此我尝试使用该证书进行签名,但出现错误 0 certs were left
。
根据我的研究,在以下情况下会发生此错误:
- 证书已过期
- 证书无效
- cmd 未以管理员身份运行
但这里的情况并非如此。由于证书没有过期,我将它安装在我的系统上并且它具有“证书正常”状态,并且我以管理员身份运行 cmd。所以我不知道怎么了。
问题:
- 常规 SSL 证书是否可用于签署可执行文件,或者它们是否具有用于此目的的某些不同类型的证书?
- 从
.pfx
和.cer
文件转换.key
证书的合适方法是什么? (最常见的方法似乎是pvk2pfx
,但我没有找到将.key
转换为.pvk
的方法,所以我使用了openssl.exe
) - 从证书签署可执行文件是否有任何限制? (例如,此证书只能用于签署 5 个应用程序)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)