Spring aware接口的作用是什么
353
2022-10-05
#私藏项目实操分享#加密锁时钟限制的实现方式-虚拟时钟和时钟芯片
利用加密锁实现软件限时的功能,是软件开发商经常用的一个方式,无需在软件代码上做过多的开发,只需借助加密锁就可以实现软件的限时操作,既安全又方便,开发工作简单。而加密锁是如何实现限时的功能呢?今天分享给你两种加密锁的时钟逻辑。
加密锁限制时间一般实现有两种方式,1,虚拟时钟;2,硬件时钟,即加密锁内置时钟芯片与电池。
第一种是虚拟时钟。
所谓虚拟时钟,是通过算法计算时间。加密锁每次插拔电脑时,都会记录电脑的时间,每次插入电脑时,加密锁会比较电脑时间与加密锁内记录上一次拔锁的时间,如果电脑时间晚于加密锁记录的时间,加密锁。虚拟时钟会根据电脑时间和加密锁内时间自行调整,加密锁当插入到电脑时,锁内根据电脑时间单独计算一个时间,并且同步电脑时间。
虚拟时钟的场景:
1.PC时钟比锁时钟间快,比如PC的时钟越走越快,加密锁会同步PC的时间,可通过与互联网时间校准解决;
锁插在PC之后,PC时间比锁走的慢5%以内,锁每过10分钟会跟PC同步一次锁插在PC之后,PC时间比锁走的慢5%以上,锁不会PC同步,按照锁的时钟继续走两台PC时间不一样,锁内时间按照其中最大时间值同步PC时间手工修改从当前到“未来”,再到当前。比如当前时间2017-5-10日,突然调整PC时间到2018年-5-10日,再调整到2017-5-10日。加密锁时间会永久到2018年-5-10日,无法回滚到当前时间。基于到期时间的许可都会受到影响。
第二种:硬件时钟
硬件时钟,在加密锁里内置时钟芯片和电池,不依赖PC电脑时间,锁内时间自己计算,修改本地时间不会对加密锁内时钟造成影响。硬件时钟的电池一般能单独运行240天以上,如果加密锁放置时间超过240天,电池没电,加密锁再次插在电脑上可以重新充电,时间会继续按照掉电前的时间走。硬件时钟的加密锁要配合虚拟时钟,如果掉电次数过多,可以自动切换成虚拟时钟。开发者也可以对掉电行为进行判断,如果发生掉电是继续让软件运行还是其他操作。
两种时钟的不同
1.虚拟时钟会受本地时间影响,
2.虚拟时钟存在一种偷时间的情况,就是在每次插锁的时候,将电脑时间改为上次拔锁的时间。但是总得使用时间不会超过加密锁的累计时间。
3.硬件时钟的加密锁会比虚拟时钟的加密锁价格更贵;
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~