我使用sn -k KeyFile.snk
创建了一个snk文件
我将它安装在我的测试机器上并签署了几个文件用作许可证文件
我导出了公钥并将其嵌入我的应用程序中以验证许可证。
现在的问题是我丢失了Keyfile.snk
,我想在生产服务器上安装密钥对。我无法生成新的密钥对,因为我已经使用旧的密钥对发布了许可证,并且该应用程序已经安装在多个客户的PC上。
我尝试从我的测试机器的密钥容器中导出它,但它被设置为不可导出 我使用mimikatz强制导出。它有效,但它返回了一个.pvk文件 而现在我被卡住了。
知道我该怎么做才知道吗? 谢谢。
答案 0 :(得分:1)
我是mimikatz的作者,难道你不知道你可以用OpenSSL转换PVK吗?
http://blog.gentilkiwi.com/cryptographie/openssl-conversion-pvk-microsoft-privatekey-blob
您还可以使用公共证书(sn -p)和转换的PEM密钥创建pfx / p12:)
答案 1 :(得分:0)
.pvk 格式通常用于存储Authenticode(tm)私钥。这是一种简单的格式,Mono项目有阅读它的工具。 Mono还具有读取和写入 .snk 文件的工具。
但是我不记得有任何工具在进行转换,因此您可能需要编写一小段代码来读取PVK并将其写为SNK(中间有RSA实例)。
您需要的一切都存在于Mono提供的Mono.Security程序集中(或者您可以自行编译)。
免责声明: 我是上面讨论过的Mono代码的主要作者,并且它都是在MIT.X11许可下提供的