由于私钥过滤,signtool无法在Windows 10上找到证书

前端之家收集整理的这篇文章主要介绍了由于私钥过滤,signtool无法在Windows 10上找到证书前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我是UniversalADBDriver的开发者,这是一种在用户计算机上创建自签名 Android USB驱动程序的工具.

安装程序和安装程序包的源代码
https://github.com/koush/UniversalAdbDriver

该工具生成密钥对并将证书添加用户的密钥库,然后签署驱动程序文件.这工作正常,直到Windows 10,莫名其妙地停止工作.我手动运行命令行:

The following certificates were considered:
    Issued to: UniversalADB
    Issued by: UniversalADB
    Expires:   Fri Aug 25 17:00:00 2017
    SHA1 hash: C8701DF4CDC7DD75813400AD2B3B4C2EFDA4E662

After EKU filter,1 certs were left.
After expiry filter,1 certs were left.
After Private Key filter,0 certs were left.
SignTool Error: No certificates were found that met all the given criteria.

在Windows 10上,证书正由“私钥过滤器”过滤掉.不知道那是什么,没有任何文档.

UPDATE

我发现在Windows 10上通过安装程序调用时,makecert.exe或X509Store.add都不能将证书/密钥写入当前用户存储.但是,本地计算机存储中的证书是正确放置的.我不确定为什么会这样.所以基本上,私钥没有正确放置在商店中,因此签名失败.在命令行上手动运行相同的步骤.我仍然需要弄清楚为什么私钥没有在商店中持久存在.

我正在使用BouncyCastle以编程方式生成证书.出于某种原因,此证书在Windows 10上似乎不再起作用.我切换到打包makecert.exe以生成证书,这似乎解决了它.

猜你在找的Windows相关文章