我正在编写一个与MYSQL数据库联系的c#winform桌面应用程序。当然我不能将数据库凭证保存在硬编码的应用程序中,所以我在哪里可以存储这些信息,以便爱管闲事的客户在查找它时会非常困难?
我理解如果有人非常有信心找到这些信息,他们很可能会这样做,但我希望能够隐藏普通Joe的这些凭据,让我在结束时保持安心。一天。
如果您的答案是加密凭据,并将加密值硬编码到程序中,请说明要使用的加密方法。此外,我将在哪里存储必要的解密/加密密钥?
我非常期待一些有趣的回应。
谢谢,
Evan F。
答案 0 :(得分:1)
http://www.ezzylearning.com/tutorial.aspx?tid=8067328
将其存储在App.Config文件中。
查看上面的教程。
您还可以查看Microsoft的这篇好文章,它教您如何加密和检索。
http://msdn.microsoft.com/en-us/library/ms254494.aspx
如果您已安装Microsoft Enterprise Library,则可以使用此链接中提到的工具轻松加密/解密
http://davidhayden.com/blog/dave/archive/2006/01/23/2744.aspx
http://davidhayden.com/blog/dave/archive/2006/03/02/2870.aspx
此外,在安装后,在工作室中打开项目并右键单击web.config或app.config,您将看到通过Enterprise Library进行配置的选项。此选项在Visual Studio 2005中可用,但我还没有在Visual Studio 2008中看到这一点。不确定它是否与2008不兼容或我必须遵循一些安装顺序。如果我遇到任何解决方案,我会告诉你们。
这是解释如何在工作室http://www.pnpguidance.net/Post/EnterpriseLibrary3VisualStudioIntegratedConfigurationEditor.aspx内使用加密的链接。阅读,阅读和阅读读...
请记住,一旦打开.config文件,您就会分别对每个块/块进行切换。多数民众赞成。
为了您的信息,我使用的是Enterprise Library 3.1,它是最新版本,拥有大量工具,让您的生活变得轻而易举。您可以在http://msdn2.microsoft.com/en-us/library/aa480453.aspx下载此库。另外,期待4.0 http://www.codeplex.com/entlib
底线你可以沿着这些线搜索谷歌,我相信它会给你整个过程。