我正在尝试保护我的JavaFX代码,而不是ProGuard。我知道用户拥有的任何代码都是公平的游戏。这意味着我需要将所有敏感业务逻辑移动到可以放心保护的服务器上。
由于我有限的服务器端经验,我正在寻找一个如何开发客户端 - 服务器连接的解释/示例,因此它是安全且合理的快速。我的主要困惑是客户端代码中需要什么,例如服务器初始化和get
/ put
请求(?),以及我放在服务器上的文件或代码(以及在哪里) 。
我已经将相关答案中的3个引号联系起来以提供一些背景知识。这些帖子分别位于here,here和here。第一个说:
我们通过拥有部分内容来“保护”我们的软件 在服务器端发生的计算:我们有几个.class 除非它们是从服务器端生成的并且我们发送,否则将无法工作 他们沿着电线(在电线上发送的东西总是不同的: 我们在服务器端生成唯一的,一次性的.class文件。)
这表明在服务器端生成整个类文件。我想在服务器上完全拥有的一些类,但许多类文件只包含敏感且需要基于服务器的方法。第二个链接指出:
将服务的最关键部分移出应用程序,然后转移到应用程序中 Web服务,隐藏在像PHP这样的服务器端语言之后。移动 算法并让它处理远程服务器上的数据,并使用 应用程序只是为它提供数据。
这似乎更符合我的意图,但我很困惑如何执行这些“移动”和“处理”功能。我是否只是将敏感的方法/类调用替换为对服务器的get()请求,这是由任何基本服务器提供程序提供的SSL连接的后面?你能找到一个相关的完整例子吗?
第三句话:
设置响应应用请求的服务器,“使用” 资产(无论可能意味着什么)然后将结果发回 应用程序。
再一次,如何在JavaFX上下文中“请求”,“使用”和“发送”整个方法/类的示例将非常好。我愿意整天阅读,我只需要在这个初步步骤上获得指导,这样我就可以从正确的基础开始。