众所周知,JShaman是国内知名的JS加密平台。
在近期,JShaman推出了一个新颖的功能:时间锁,也叫时间限定。
这个功能可以实现什么效果呢?
据说可以限定JS代码的可用时间范围,超出设定的时间则不能执行。
真有这么神奇吗?接下来便一探究竟。
首先来到JShaman官网:
非常漂亮大气的网站界面,看着就感觉很高端。
未体验功能之前,先看到了右下角几个国旗图标,JShaman这个平台竟然是国际化的,除了国内,在欧美、日本、韩国等地也在运营。一个字:厉害!
点击“通用版”、“配置”,便可以在选项中以看到“时间限定”功能。
既然已经找到,就直接试用它吧!
勾选该功能,并设定时间范围:2021-07-21到2021-07-26,也就是让代码在这段时间可执行。
配置好后,返回“原始代码”界面,直接保护平台提供的默认代码:
提交成功后,返回加密的JS代码:
复制这段代码。
然后就是测试运行了,为了方便,直接打开浏览器的开发者工具,在“控制台”中输入并运行代码:
没错,可以运行。因为之前配置中限定的可运行时间是:2021-07-21到2021-07-26,而当前日期是2021-07-23,在设定的可运行时间范围内,当然可以正常执行。
这便测试了可运行的情况,再次配置,设定一个不在当前时间范围内的日期,看看代码是不是就不能运行了:
这次设定的时间为:2021-07-21到2021-07-22。
用如上同样的方法,再次运行:
可以看到,出现了报错,当前日期:2021-07-23,代码果然没能被执行!
COOL!
测试证明:这个有意思的“时间锁”功能,真实有效!
那么,什么情况下需要使用这个功能呢?
比如:只是想公开测试某个产品功能,但不希望被别人复制走代码并长久使用;
比如:向客户提交产品演示时,希望对方只能试用几天;
比如:NodeJS产品部署到客户环境时,可以限制使用时长;
比如:可以给H5产品增加时间授权;
等等...适用的场景还真是不少呢!