2013-02-27 24 views
0

我正在研究需要与使用SSH的某些远程系统进行安全通信的C#/ WPF业务线应用程序。我想通过SSH v2使用公共密钥身份验证来执行此操作。我已经有了一个特定的库,但我需要知道在Windows中安全存储我的SSH密钥并以C#访问它们的最佳方式。有关这方面的最佳做法是什么?我已经看到there exists RSA key containers,但它们似乎与ASP.NET相关联。我认为这些可以用于任何.NET应用程序?将SSH密钥安全存储到Windows中以便与C#一起用于与Linux机器通信

回答

0

我会建议保持您的敏感信息在isolated storage,它的可配置,你有程序访问,并且易于在.net中使用。

+0

单独存储的文档位于此处:http://msdn.microsoft.com/en-us/library/3ak841sy(v=vs.100).aspx表示隔离存储不应该用于存储高价值机密(例如加密密钥)。那么我只能假设我必须将Data Protection API或其他内容与IsolatedStorage结合使用? Windows没有内置机制来存储各种加密信息吗? – 2013-02-27 21:07:28

+0

它的确有许多方面。如果您希望自己的小文件系统与用户跨域计算机一起移动等,则隔离存储是好的,因为它位于用户配置文件中,并且可以设置为随漫游帐户一起移动。 Theres EFS如果你想完整地加密磁盘上的位,那么DPAPI如果你想加密某些特定范围的东西,比如用户范围或计算机范围加密的东西。 如果您只是想在磁盘上寻找一种保护内容的方法,那么您可能会使用DPAPI进行一些自定义操作,或许可以结合使用iso。存储。 – 2013-02-27 22:49:15

+0

谢谢杰克,我会考虑后者的选择。 – 2013-06-20 22:57:36

相关问题