导出和导入RSA密钥

时间:2011-11-27 17:36:42

标签: c# .net rsa

我创建了一个创建签名XML文件的应用程序。 微软有一些直截了当的例子,它实现起来并不困难,但很多内容隐藏/封装在下面的库中

System.Security.Cryptography
的System.Xml,
System.Security.Cryptography.Xml

我现在需要导出公钥并将其(公钥)放在第二个应用程序中,以便它可以验证签名的XML文档是否真实。
然后,我的第二个应用程序可以根据签名的XML文件的内容启用/禁用各种程序功能 微软继续关注不出口密钥容器的内容,但这正是我认为我需要做的事情,因为在我看来我需要完成一些事情。
如上所述,我需要导出公钥,然后将其导入到驻留在使用签名XML文件的应用程序中的密钥容器中。 其次,我认为我需要导出私钥和公钥以备份它们。 由于我的应用程序将使用公钥分发,我需要在安全的位置备份公共,私钥和散列算法。
微软继续关于不出口密钥以清除文本,但我感到不安/并且不知道如何备份密钥容器,我不确定如何看待这个东西并且知道我想要存储的内容实际上在那里我试图在调试器中查看密钥容器它似乎永远存在(某些部分似乎递归重复?)
任何人都可以提供有关如何将RSA密钥导出/导入密钥容器的建议以及备份mykeys或contaner的方法吗?。

1 个答案:

答案 0 :(得分:0)

打开Microsoft Management Console(mmc.exe),导航至File - > Add/Remove Snap-in 此对话框将弹出

MMC Snap-in Dialog

Available snap-ins选择“证书”上;点击Add并选择添加My user account,然后再次点击Add并选择Computer account

点击OK。现在您可以找到您需要的任何证书以及导入/导出它们的功能 - 私有(如果可用和可导出)和公共。