gpt4 book ai didi

c# - 在 Windows 窗体应用程序 vb.net c# 中存储敏感数据的建议

转载 作者:太空宇宙 更新时间:2023-11-03 12:45:19 27 4
gpt4 key购买 nike

我目前正在处理一个 Windows 应用程序项目,我在保护数据方面遇到了两个问题。

首先,我需要制作一个文件,将密码存储为字符串,用户每次加载主表单时都应输入该密码,我尝试了很多方法,但每个方法都有问题:

  1. 对字符串进行哈希处理并将其保存在一个文件中,因此每次用户输入密码时,输入的密码都会被哈希处理并与哈希后的字符串进行比较

    问题:反编译应用程序让任何人都可以看到散列方法和文件位置,因此他/她可以创建具有任何字符串散列值(如 0000)的文本文件,并将该文件替换为我的应用程序文件,然后使用0000打开应用

  2. 使用自定义加密 key 的加密算法

    问题:应用程序反编译后可以访问 key


另一个问题是应用程序中使用的在线 MySql 数据库的连接字符串,但我不希望任何用户看到连接字符串:

  1. 使用 DataProtectionConfigurationProvider 加密连接字符串

    问题:其他机器无法解密使用字符串

  2. 将连接字符串加密并保存在文件中,并在应用程序加载时解密并使用该文件

    问题:反编译后从源码中可知解密方法

除了混淆源代码之外,还有什么我可以使用的吗?我的意思是将这些敏感数据存储在一个只能由我的应用程序读取/写入的文件中

请随时写下有关我的问题的任何建议并提前致谢

最佳答案

尝试以只读权限在网络中使用散列密码保存您的文件。或者使用使用 unmaneged 代码 (c++) 编写的 dll

关于c# - 在 Windows 窗体应用程序 vb.net c# 中存储敏感数据的建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37524656/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com