让我的演示Java库/框架在Linux上运行30天后停止工作的最佳策略是什么?

让我的演示Java库/框架在Linux上运行30天后停止工作的最佳策略是什么?,java,linux,security,licensing,demo,Java,Linux,Security,Licensing,Demo,好的,它不需要是100%安全的。简单一点,这将减少80%的人在过去30天使用我的演示库,并与我联系 我能想到的唯一一件事就是让我的代码保存一个文件到某个地方,上面有库开始的日期,30天后才退出,并显示一条消息与联系人联系以获取完整版本。当然,如果用户发现这个文件在哪里,他所要做的就是删除它,所以如果它能在某种不太容易找到的地方(我想桌面或主目录会很愚蠢),那就太好了 当然,如果他反编译代码,他可以很容易地关闭它,但是,我需要一些保护,即使是50%,而不是100% 目标操作系统可能是linux/

好的,它不需要是100%安全的。简单一点,这将减少80%的人在过去30天使用我的演示库,并与我联系

我能想到的唯一一件事就是让我的代码保存一个文件到某个地方,上面有库开始的日期,30天后才退出,并显示一条消息与联系人联系以获取完整版本。当然,如果用户发现这个文件在哪里,他所要做的就是删除它,所以如果它能在某种不太容易找到的地方(我想桌面或主目录会很愚蠢),那就太好了

当然,如果他反编译代码,他可以很容易地关闭它,但是,我需要一些保护,即使是50%,而不是100%



目标操作系统可能是linux/unix,但我也可以动态发现,使其在任何情况下都能工作。

您没有提到目标操作系统,因此回答这个问题有点困难。如果您的目标是Windows,我会将第一次启动时间存储在注册表中。也许可以帮你。

我认为你的文件策略看起来很好

如果您想加强您的方案,您必须联系某种中央服务,在那里您可以检测到同一服务器是否多次尝试重新启动您的评估时间。中央服务器可以签署一个令牌,该令牌具有库需要运行的到期日期

另一方面,这种方案越复杂,就越有可能失败,并给合法用户带来问题。你应该考虑这一点(可能是非常低)的用户数量会积极破坏一个更简单的方案。

PS:请记住,在某些环境中,使用库的多个应用程序的副本可能必须同时运行。

您是否认为将库发布为(或开放源代码)?如果你真的让你的代码成为自由软件,你就不必问这样的问题,你可能会得到更多的兴趣和外部贡献。@BasileStarynkevitch谢谢你的建议,但我有一个女儿,她需要上学、吃饭等。这里没有开放学校或开放食物。我全职从事自由软件的工作。我有4个孩子和5个孙子。