我是UniversalADBDriver的开发人员,这个工具可以在用户的计算机上创建一个自签名的Android驱动程序。
安装程序和安装包的源代码:https://github.com/koush/UniversalAdbDriver
该工具生成一个键盘,并将证书添加到用户的密钥存储区,然后对驱动程序文件进行签名。这在Windows 10之前运行良好,在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上,证书由“私钥筛选器”过滤掉。不知道那是什么,上面没有任何文件。
更新
我发现,当通过Windows10上的安装程序调用时,makecert.exe或X509Store.add都不能将证书/密钥写入当前用户存储。但是,本地机器存储中的证书放置正确。我不知道为什么。因此,基本上,私钥没有正确地放置在商店中,因此签名失败。在命令行上手动运行相同的步骤可以工作。但是,我仍然需要弄清楚为什么私钥没有被保存在商店中。
发布于 2015-08-27 06:04:53
我是用BouncyCastle编程生成证书的。由于某些原因,这个证书似乎不再适用于Windows 10,我转而使用打包makecert.exe来生成证书,这似乎是修复了它。
https://stackoverflow.com/questions/32232530
复制相似问题