用户从服务器下载应用程序(假设是游戏)。我需要对用户可以在系统上运行应用程序的时间施加时间限制。
例如。从安装之日起,用户只能使用该应用程序5天。我的问题是,如果我依赖系统时间/日期等来实现此逻辑,用户可能会更改系统时间并克服该逻辑。
平台:Linux/C++
P.S.:我必须假设一种情况,用户在下载应用程序后决定根本不连接到互联网。由于我没有网络访问权限,因此不能依赖基于服务器的存储来获取应用程序的安装日期/时间等。
有人可以告诉我们如何在提供试用期的应用程序中实现这种行为吗?
<小时/>编辑:
我正在添加我正在考虑的算法:
安装时:
- 安装时存储当前系统日期。
- 将此信息以加密形式存储到 DRM.txt 文件中
应用程序启动时:
- 打开文件并解密安装日期。
- 从系统获取当前日期。
- 根据用户安装应用程序以来经过的天数来匹配是否允许执行该应用程序。
- 如果允许,启动应用程序,否则给出错误消息并返回。
问题:
安装时系统日期为2012年12月19日,用户只能使用该应用程序4天,即2012年12月22日为止。因此,19/12/2012 被存储到 DRM.txt 中。
4 天后,用户将系统日期更改回 2012 年 12 月 20 日,然后我的逻辑检查将允许此应用程序运行。
希望这能澄清我想说的内容。
最佳答案
这可以通过加密来实现,例如将日期存储到加密文件中,请注意,这不会阻止逆向工程等
关于linux - 对应用程序的使用时间进行时间限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13933326/