以编程方式加密 .NET 中的配置文件
Posted
技术标签:
【中文标题】以编程方式加密 .NET 中的配置文件【英文标题】:Programmatically encrypting a config-file in .NET 【发布时间】:2010-09-06 12:33:49 【问题描述】:有人可以简要介绍一下如何在 .NET 中以编程方式加密配置文件,最好是在 C# 中。
我想做的是对应用程序的启动进行某种检查,以查看某个部分是否不受保护,如果是,则对其进行加密。这适用于设置和连接字符串。
如果有人可以列出加密提供者的类型以及它们之间的区别。
我不知道在普通 WinForms 应用程序中执行此操作的代码是否对在 ASP.NET 中执行此操作是透明的。
【问题讨论】:
【参考方案1】:总结答案和我到目前为止发现的内容,这里有一些很好的链接来回答这个问题:
Encrypting Configuration Information in ASP.NET 2.0 Applications - 4GuysFromRolla.com How To: Encrypt Configuration Sections in ASP.NET 2.0 Using DPAPI - MSDN请随意补充其他链接,可能是 WinForms 或 WPF 应用程序的一些链接。
【讨论】:
【参考方案2】:4 个人写了一篇关于Encrypting Configuration Information in ASP.NET 2.0 Applications 的好文章
希望对你有帮助
【讨论】:
【参考方案3】:以下站点的解决方案对我来说很好。
http://www.a2zmenu.com/Blogs/CSharp/How-to-encrypt-configuration-file.aspx
【讨论】:
【参考方案4】:@TK:哈希算法只能“猜测”,不能逆向工程。只能通过完全猜测输入来将输入重建为哈希值(即除了碰撞之外)这可以通过例如彩虹裂缝来完成(参见an implementation of a rainbow cracker here)
我会说第 3 方加密工具并不比 .NET 框架加密算法更安全,这些库只是帮助您更快地完成工作
【讨论】:
【参考方案5】:我自己没有使用过,但 Microsoft Enterprise 库具有良好的加密支持,可能会满足您的需求:
http://msdn.microsoft.com/en-us/library/cc309503.aspx
【讨论】:
以上是关于以编程方式加密 .NET 中的配置文件的主要内容,如果未能解决你的问题,请参考以下文章