使用文件数据而不授予任何其他人权限

时间:2017-01-02 10:48:42

标签: java password-protection zip4j

我有一个使用包含来自DB密码的.properties数据的应用程序,我的客户端将使用此应用程序,但我不想让他对这些属性数据进行任何访问,即使我们查看.jar。我想使用zip4j但是还有其他最好的解决方案,因为当我解压缩时,.properties会在某处解压缩,让客户端访问它不是吗?

1 个答案:

答案 0 :(得分:3)

这不可能。忘记这个想法,重新思考你的系统。 您无法提供不同时提供读取权限的读取权限。

这是媒体行业法律部门的梦想。他们投入大量资金解决DRM无法解决的无法解决的问题,但却让每个人都感到烦恼。

使用各种混淆技术可以使提取数据更加烦人 - 但这就是全部。

其中一个想法是在C ++库中编码passoword并通过JNI链接它。然后用户无法在不拆解二进制文件的情况下提取它,但无论如何都能在运行时进行内存转储。

您可以在运行时从中央服务器读取密码。您可以使用一次性密码。同样,如果用户具有适度的技术技能,这是徒劳的,因为您仍然可以使用curl或一些简单的脚本向服务器请求密码。

您可以使用硬件访问令牌,它将允许连接到数据库(智能卡或其他东西)。这是'90中非常流行的技术。

你所能做的只是增加某种程度的烦恼,这将阻止非技术人员。有足够的钱,你可以建立一些体面的DRM,这将阻止技术娴熟的人一段时间,但我认真地怀疑这是值得的。

如果数据库访问非常珍贵以至于您无法让用户访问它,但他需要它,那么您的设计就会被破坏。