我正在编写一个需要存储少于1mb数据的应用程序。该数据将由用户读取和编辑。这个数据将是非常简单的ascii数据。该应用程序位于Windows窗体上的vb.net中。数据将存储在本地计算机上。我有几个问题。
我应该使用哪种加密方法来存储数据?用户想要的东西不是太强大,但也不是太简单。
我应该如何存储数据?为什么不把它写入某个文件并使用某种中等加密方法对其进行加密?
是加密的应用程序设置数据?也许我可以这样存储它?是否适合在应用程序设置数据中存储大约1mb?我该怎么办?我会使用哪个变量?
答案 0 :(得分:1)
您可以使用任何基于流的书写技术,并将流包装在CryptoStream中。这适用于保存到任何格式的文件,但适用于基于流的任何存储介质。
此外 - 应用程序设置未加密(默认情况下)。
答案 1 :(得分:1)
为什么“不太强大”的要求?您要么加密数据,要么加密数据。如果您正在加密数据并且您没有使用强加密算法,那么根本不需要加密。
答案 2 :(得分:1)
您需要再问一些问题。
要问的问题:
加密既困难又昂贵。实施安全性很可能会给最终用户带来一定程度的痛苦。
您需要考虑主密钥:它有多安全?它存放在哪里?它是如何备份的?是否需要备份?
其中一些回归到数据的价值,以及用户是否关心如果机器死亡时获取数据。
您可以查看TEA 您可以生成随机AES密钥(无论多长时间)并将其存储为机器密钥库中不可提取的密钥,并使用@Reed Copsey建议的内置CryptoStream。
我认为,确定需要抵御哪种攻击以及客户保护数据的价值是非常重要的。