【问题标题】:Suggest a best algorithm to encrypt XML file in C#.NET?建议在 C#.NET 中加密 XML 文件的最佳算法?
【发布时间】:2010-04-23 21:48:47
【问题描述】:

我必须加密 XML 文件并在网络中发送以放置在私人服务器中。 我的其他应用程序将通过提供实际的公钥来解密文件并将其导入 SQL。

你能建议我最好的方法吗?

文件:XML 类型
可能的大小:最大 250 MB
技术:C#.NET 2008

【问题讨论】:

  • 无论您做什么:请不要试图发明自己的加密方案。有很多自定义方案建议在 System.Security 上构建。密码学类(“只使用 AES,它很简单......”)从根本上被破坏并且仅提供安全性(在最好的情况下!)。使用任何已经存在多年并经过多次分析的标准机制。

标签: c# .net-3.5 cryptography


【解决方案1】:

使用XML encryption。 .NET 通过EncryptedXml 类直接支持它。

这里有一个 MSDN 上的示例:How to: Encrypt XML Elements with Asymmetric Keys

请注意,您应该使用公钥进行加密,使用私钥进行解密(而不是您在问题中所写的相反方式)。

【讨论】:

    【解决方案2】:

    使用 SSL/TLS 上传文件(例如,使用 HTTPS 或 Socket+SslStream)并让服务器要求客户端提供 X.509 客户端证书。

    【讨论】:

      【解决方案3】:

      我建议使用RijndaelManaged 类。 This 就是一个很好的例子。

      Here 更多的是 AES 算法。

      【讨论】:

      • 感谢 SwDevMan81,是否可以加密 Xml 文件并在打开时要求提供解密密钥..?
      • karthik - 不完全确定你在问什么。您首先需要以某种方式维护用于加密文件的密钥。解密文件需要相同的密钥。
      猜你喜欢
      • 1970-01-01
      • 2010-11-06
      • 2018-01-07
      • 2011-06-25
      • 2010-10-21
      • 1970-01-01
      • 2019-06-22
      • 2015-10-10
      • 1970-01-01
      相关资源
      最近更新 更多