将SSH密钥安全存储到Windows中,以便与C#一起使用以与Linux计算机通信

将SSH密钥安全存储到Windows中,以便与C#一起使用以与Linux计算机通信,c#,encryption,ssh,rsa,C#,Encryption,Ssh,Rsa,我正在开发一个C#/WPF业务线应用程序,它需要与一些使用SSH的远程系统进行安全通信。我想通过SSH v2使用公钥身份验证来实现这一点。我已经想到了一个特定的库,但我需要知道在Windows中安全存储SSH密钥并在C#中访问它们的最佳方法。这方面的最佳实践是什么?我见过,但它们似乎与ASP.NET有关。我假设这些可以用于任何.NET应用程序 我建议将您的敏感信息保存在.net中,它是可配置的,您可以通过编程访问,并且易于从.net中使用。此处的隔离存储文档:表明隔离存储不应用于存储高价值机密(

我正在开发一个C#/WPF业务线应用程序,它需要与一些使用SSH的远程系统进行安全通信。我想通过SSH v2使用公钥身份验证来实现这一点。我已经想到了一个特定的库,但我需要知道在Windows中安全存储SSH密钥并在C#中访问它们的最佳方法。这方面的最佳实践是什么?我见过,但它们似乎与ASP.NET有关。我假设这些可以用于任何.NET应用程序

我建议将您的敏感信息保存在.net中,它是可配置的,您可以通过编程访问,并且易于从.net中使用。

此处的隔离存储文档:表明隔离存储不应用于存储高价值机密(例如加密密钥)。我只能假设我必须使用数据保护API或其他与IsolatedStorage结合使用的东西?Windows没有内置的机制来存储各种加密信息吗?它有多种方式。如果您希望自己的小文件系统能够随用户跨域计算机等移动,那么隔离存储很好,因为它在用户配置文件中,可以设置为随漫游帐户移动。如果你想全通径加密磁盘上的位,就有EFS;如果你想加密特定于某些作用域的内容,比如通过用户作用域或计算机作用域进行加密,就有DPAPI。如果您只是在寻找一种在磁盘上保护内容的方法,那么您可能会使用DPAPI做一些定制的事情,也许可以与iso结合使用。存储。谢谢,杰克,我会考虑后一种选择。