我需要知道如何制作使用 Spring RMI(服务器端)和 Java Swing(客户端)实现的客户端-服务器应用程序的试用版(例如 30 天试用版)。我正在考虑通过检查当前日期与首次登录日期来在客户端执行此操作。但它可能很容易被破解。以可靠的方式执行此操作的最佳选择是什么?
谢谢。
如果您有客户端配置,请添加几个带有客户端首次启动日期的新密钥。人们通常不会查看应用程序配置的到期日期。
并且,选择与许可无关的密钥,并尽可能加密您的值。
如果一个密钥被篡改,您可以使用另一个密钥检查它是否被篡改并阻止访问。
更好更安全的解决方案是在服务器端实现它。
您可以在第一次运行时向客户端发出令牌请求,并跟踪服务器上的令牌。不过,这有一个缺点,即如果有人删除或重新安装,您永远不会知道。
您还可以发送带有一些识别特征的令牌请求,例如 MAC 地址。这样您就可以知道客户端是否正在发出重复请求。
更好的是,而不是令牌,跟踪 MAC 地址。