0

我正在开发一个应用程序,它要求用户输入他的帐户名和密码,以便登录到在线论坛等。

请注意,实际上并没有通过我的应用程序在 Internet 上传输任何数据,我只是连接到特定的服务器。我正在使用HtmlUnit获取论坛链接,获取正确的登录表单,填写数据并提交。网络上的实际数据中继由第 3 方公司管理。

现在到实际问题:

一些用户希望能够保存他们的凭据,这样他们就不必在启动应用程序时重新输入它们。

我将他们的凭据保存到一个.txt文件中,我正在使用 a 和 a 加密Password Based Encryption with MD5 and DES algorithmstatic password内容static salt。我主要对这些文件进行加密,因此如果他们不小心将此文件发送给某人,他们将无法如此轻松地获取该信息,并希望避免麻烦。

据我了解,由于我完全不了解密码学,因此使用硬编码盐和硬编码密码并不是一种非常安全的技术,但是当我在本地保存数据时它可能就足够了。我在这里吗?

文件也是.txt存储此类数据的安全方式吗?如果没有,你会建议什么?

4

2 回答 2

1

如果您担心用户可能会不小心将文件发送给其他人,那么使用更强大的算法(如 AES 256)可能会更好地加密。

于 2014-06-30T22:34:10.217 回答
1

在我看来,您的解决方案已经足够好了。此信息是否经过高度加密位于用户计算机中,只有在他的系统受到威胁时才能被盗,在这种情况下,无论您存储它的安全性如何,即使您不安全,也有许多其他获取此密码的方法根本不存储它。

我要添加的唯一安全层是确保此凭据文件不能简单地使用您的软件复制到另一台计算机并从那里使用。为了防止您可以在盐中包含系统规格,例如分区序列号等。

于 2014-06-30T22:26:02.587 回答