C# · 12月 30, 2021

反射器时代的C#加密

我有一个程序,其中数据库的密码由远程用户设置.程序将用户名和密码保存到xml文件中的加密字符串中,否则应该是人类可读的.现在,这很好用,我使用C#DES加密密钥,并加密和解密.现在,问题是任何人都可以使用反射器来查看密钥.即使有混淆,关键也应该很明显.那么,如何解决这个问题呢?现在,我不需要这个NSA安全,但我真的想防止任何人偷看.谢谢.

编辑:感谢所有建议到目前为止,关于这类事情的信息并不是很普遍,我真的很感谢一般提示以及具体的答案.

解决方法 尝试使用DPAPI(System.Security.ProtectedData类).这可以使用用户或计算机凭据保护您的加密数据.因此,只有访问数据的用户帐户(用户凭据)或可以登录计算机的用户(计算机凭据)才能解密您的数据.