如何使用YubiKey中的证书签名Windows软件?遇SignTool错误求助
解决SignTool找不到YubiKey证书的问题
检查SignTool命令参数
确保你的signtool命令指定了正确的证书匹配参数:
- 若使用证书指纹,确认指纹无输入错误,示例命令:
./signtool.exe sign /f <证书指纹> /fd SHA256 /tr http://timestamp.digicert.com /td SHA256 <待签名文件> - 若使用证书主题名称,需保证名称与YubiKey内证书完全一致,命令中加入
/n "证书主题名称"参数
确认YubiKey证书在系统存储中可见
- 打开
certmgr.msc,查看个人>证书目录,确认YubiKey的证书是否存在 - 若未找到,打开YubiKey Manager进入PIV选项卡,导出对应证书的公钥文件(.cer格式),双击该文件将其导入到个人>证书存储中
排查驱动安装问题
- 卸载现有YubiKey相关驱动,重新安装最新版YubiKey驱动(注意需单独安装驱动组件,并非仅安装YubiKey Manager)
- 安装完成后重启电脑,重新插入YubiKey
验证证书权限与用途
- 在
certmgr.msc中找到YubiKey证书,右键选择所有任务>管理私钥,确认当前用户拥有“读取”权限 - 查看证书属性的“密钥用法”,确认包含“数字签名”项
测试证书可用性
用以下命令列出系统内可用的签名证书,确认YubiKey证书在列表中:
certutil -user -store My
若能看到目标证书,再重新执行签名命令
内容的提问来源于stack exchange,提问作者DJames
相关产品推荐
相关产品推荐

