我正在开发一个基于 Java 的桌面应用程序。我需要保留一些从应用程序对象模型生成的数据(最好保存到文件中)。还需要保护持久文件,以便其他人无法从数据中获取对象模型详细信息。执行这些操作的最佳策略是什么?我的印象是这些要求对于桌面应用程序来说非常常见。但是,我还没有找到很多有用的信息。任何建议表示赞赏。
你的问题有两个部分。第一:如何持久化数据?第二:如何保护他们?
有很多方法可以保存数据。从简单的XML、java序列化到自己的数据格式。仅通过“纯文本”是无法防止逆向工程数据的。你可以让它变得更难,但并非不可能。为了使它变得不可能,你需要使用强加密,这就出现了一个问题。如何加密数据并且不泄露安全令牌。如果您在应用程序中分发安全令牌,那么找到它只是时间问题,问题就解决了。因此,在安装过程中输入安全令牌不是一种选择。如果用户必须进行身份验证才能使用应用程序,它应该会有所帮助,但这是同样的问题。下一个选项是使用自定义受保护双射算法来混淆数据。最后一个选择是什么也不做,只是将数据格式保密,不要发布它们并混淆您的应用程序以防止逆向工程。
通过自定义数据格式和模糊应用程序进行简单的数据模糊(XOR 素数)可实现最佳价值。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)