如何将密钥容器从一台机器迁移到另一台机器?
我在旧机器上有一个用于强命名程序集的密钥容器。
目前我正在将项目迁移到更新的机器上。
不幸的是,旧机器上的密钥容器被标记为不可导出,但我设法使用mimikatz导出它。
结果是一个 PVK 文件(私钥),我使用 Chilkat library 将其转换为 XML 文件 (RSAKeyValue )。
然后可以使用 aspnet_regiis 将 xml 文件导入到新机器上的密钥容器中。
但是,在新机器上构建项目时,我收到此链接器错误:
LINK:致命错误 LNK1256:ALINK 操作失败(80040405):密钥容器名称“...”不存在
我注意到使用 aspnet_regiis 和 sn.exe 创建的密钥容器之间存在差异。
链接器可以找到使用 sn.exe 生成的密钥容器,但找不到使用 aspnet_regiis 生成的密钥容器(上面的 LNK1256 错误)。
但是为了安装与 sn.exe 相同的密钥容器,它需要是一个 .snk 文件,我还没有设法转换它。
如果我可以将其转换为 .snk 文件,则不必将其导入密钥容器,因为我也可以使用强名称密钥文件进行签名。